问题标签 [attiny]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
394 浏览

assembly - 我如何更优雅地进行此 AVR 组装

我目前有这个代码:

如您所见,重复了许多非常相似的代码。

如果没有办法以更短的方式编写它,例如 with.irp或 may .ifs,那将是荒谬的。但是,我无法让它发挥作用。因为.irp我试过这个:

虽然 Atmel Studio 确实突出显示.irp(它没有突出显示以 a 开头的所有内容.)但它不起作用:Invalid directive: '.irp'

另请参阅我的另一个相关问题:MOV into a register specified by macro argument

0 投票
0 回答
427 浏览

c - attiny uart 传输失败

我正在尝试在 attiny2313 的 uart 上传输一个字节,但传输挂在等待 UDR 可用的循环中。

我正在使用内部 8MHz 时钟。串口配置为 9600baud 8bit 1stopbit

我的初始化代码如下:

在初始化之后,我使用 sei() 启用全局中断。

转移:

它挂在while循环上,当我从设备上断电时,它最终在最后一刻打破while循环并发送B.

我尝试在初始化后添加 200 毫秒的延迟,但没有奏效。

我对 atmega88 使用类似的代码,这工作正常。有人知道为什么它会停留在while循环中吗?

0 投票
2 回答
83 浏览

performance - 如何在低资源设备上测试算法性能?

我有兴趣使用 atmel avr 控制器从 LIN 总线读取数据。不幸的是,这种总线上的消息没有开始或结束指示符,唯一合理的解决方案似乎是蛮力解析。来自总线的可用数据被加载到循环缓冲区中,并且蛮力方法在缓冲区中找到有效消息。

使用 64 字节缓冲区和 20MHZ 服装,我如何测试我的代码的性能以查看是否可能发生缓冲区溢出?补充:我担心算法会运行缓慢,从而缓冲更多数据。

关于蛮力算法的一点。缓冲区中的第二个元素被假定为消息大小。例如,如果假定长度为 22,则对前 21 个字节进行异或并针对缓冲区中的第 22 个字节进行测试。如果校验和通过,代码会检查第一个(SRC)和第三个(DST)字节是否是它们应该是的。

0 投票
2 回答
1595 浏览

arduino - Atmel ATTINY84 可以在不添加任何程序或模块的情况下读取 I2C 吗?

我最近将陀螺仪(L3G4200D)连接到ATTINY84,但是,陀螺仪使用I2C,而ATTINY84使用USI,因此我在编程时遇到了一些问题。我正在使用 Arduino Uno 作为 ISP,我已将陀螺仪的两根线连接到 Attiny84 上的 SDA 和 SCL 引脚,但它仍然无法正常工作。有没有人有任何解决方案?

0 投票
0 回答
1391 浏览

serial-communication - 带有多个输入的 ATtiny85 串行通信

在一个项目中,我们尝试在三个 ATtiny 之间建立一个通信网络,其中第一个必须接收来自其他两个的消息。其他两个微型连接到第一个微型的两个不同引脚。然后,第一个 tiny 必须从其他 tiny 接收两个字符串,每个字符串一个,并将其发送到 Arduino。对于我们使用的通信SoftwareSerial。我们设法接收和发送来自一个微小的输入,但不是来自它们两个,因为我们无法找到一种方法来一次只从一个特定的引脚读取输入。这是我们使用的代码:

上面的代码在没有mySerial2.listen();. 也许listen-functionSoftwareSerial对 tinys 不起作用,但如果是这种情况,是否有另一种方法来监听特定的输入引脚?或者你有什么建议吗?

0 投票
2 回答
4521 浏览

atmel - 推荐 Attiny85 编译器/IDE

我需要为 Attiny85 编译 C 项目,但不确定要使用哪个编译器 - 如果可能的话免费。Atmel Studio 是一个不错的选择吗?

0 投票
1 回答
1372 浏览

c++ - ATtiny85 数字“开”输出无法提供 5 V

我正在使用 ATtiny85 作为微控制器。我正在尝试读取两个大约 3 V 的输入,并为每个“开”输入(超过 1 V)输出 5 V。我使用 PINB0 和 PINB1 进行输入,使用 PINB3 和 PINB4 进行输出。问题是当 PINB0 和 PINB1 都打开时,我得到两个 5 V 输出,但是当只有一个打开时,我只得到 2 V,我正在尝试解决这个问题,所以我得到 5V 输出。

这是我的代码:

0 投票
1 回答
212 浏览

arduino - 在工具菜单 Arduino IDE 中找不到 Attiny 1634

我使用 arduino uno r3 开发了一个设计,我想使用 attiny 1634 而不是 atmega 328p。学习了如何使用 arduino isp 对 attiny 85 进行编程。需要帮助对 attiny 1634 进行编程,在 arduino IDE 的工具菜单中找不到 attiny 1634 板。在网上做了一些研究,发现我需要为 attiny 1634 写一个头文件。请帮助这个头文件。

0 投票
1 回答
509 浏览

avr - 即使我可以重置保险丝,也无法使用 avrdude 使 LED 闪烁

所以我从 ebay 上买了一个便宜的 USBasp 编程器,并尝试对 attiny2313 进行编程。Avrdude 说闪光灯已上传并验证,但 LED 没有闪烁。我用电压表检查了引脚的输出,什么也没有。我为 attiny2313 尝试了一些其他版本的闪烁程序,并得到了相同的结果。然后我犯了一个错误,试图重置保险丝并立即将芯片变砖。

我再次尝试了这个过程,更加小心保险丝并得到了相同的结果。多次检查我的接线,LED 本身等。没有闪烁。然后我尝试对 atmega8 进行编程,但我无法得到任何响应。程序员无法识别芯片。

我尝试重置两个芯片上的时钟。我不断收到“无法设置 sck”时钟速度错误,但同时 avrdude 说它成功重置了时钟速度。我尝试在第二个 attiny2313 上重置与时钟相关的保险丝,然后将另一个芯片变砖。

我的程序员有什么可能的方法可以重置保险丝,但不能对芯片进行编程?因为我知道保险丝已重置,所以在命令通过后我无法再识别或编程芯片。但是我的程序只是没有产生任何输出。

在这一点上,我完全迷失了。

尝试了其他几个程序并得到了一个上传并由 avrdude 确认,但 LED 仍然不闪烁。我试过交换它们和电阻,并多次检查我的接线。

0 投票
1 回答
935 浏览

avr - ATtiny84 pwm led 闪烁

我对 avr 编程相当陌生,我试图简单地淡化 3 个独立连接到 ATtiny84 pwm 引脚的 LED。现在我有代码应该改变两个不同 LED 的亮度。这是我的代码:

代码大部分是从互联网上复制的,我不太了解初始化,但现在连接到 PB2 的 LED 工作正常,但连接到 PA6 的 LED 不能正常工作。PA6 LED 确实会相应地改变其亮度,但它也会快速闪烁(大约每秒 10 次)。

首先,我认为这与 PA6 也是用于编程的 MOSI 引脚有关,但断开编程器并没有帮助。

任何帮助表示赞赏!此外,任何一般的 avr 编程技巧都非常受欢迎!