尽管ATtiny系列被认为是非常便宜和有用的,但是仍然缺少有关它的项目和教程。在本篇文章中,您将学习如何使用通过Arduino IDE编程的ATtiny13微控制器开始构建应用程序。
attiny-85.jpg (33.52 KB, 下载次数: 1)
2020-10-3 14:10 上传
首先,ATtiny13是基于AVR增强RISC架构的低功耗CMOS 8位微控制器。通过在一个时钟周期内执行功能强大的指令,ATtiny13的吞吐率接近1 MIPS / MHz,从而使系统设计人员能够优化功耗与处理速度。 Microchip收购Atmel之后,新的ATtiny13仍在生产中。
circuit.jpg (95.74 KB, 下载次数: 1)
2020-10-3 14:10 上传
所需的组件
● Arduino Uno或任何其他Arduino开发板
● ATtiny13或13A单片机
● 面包板
● 连接导线
电路
为了连接硬件,您应该首先如图所示调整ATtiny的方向。
首先,将Arduino的5V连接到ATtiny引脚8。分别将GND连接到引脚4,引脚13到引脚7,引脚12到引脚6,引脚11到引脚5,最后将引脚10连接到引脚1。
fritzing.jpg (42.32 KB, 下载次数: 1)
2020-10-3 14:10 上传
编程ATTINY13
要编程ATtiny13,我们应该将Arduino设置为烧录器(Programmer)。这可以通过在IDE中按照以下路径(Files -> Examples -> ArduinoISP)将ArduinoISP草图上传到Arduino来实现。
isp.jpg (46.48 KB, 下载次数: 1)
2020-10-3 14:10 上传
现在我们的Arduino已准备好对ATtiny 13进行编程,但仍然需要通过安装其核心文件来设置ATtiny。在本文中,首选sleepmanj制作的文件。
要安装这些文件,请打开Arduino IDE并导航到文件下拉菜单,然后选择首选项。将此URL“https://raw.githubusercontent.com/sleemanj/optiboot/master/dists/package_gogo_diy_attiny_index.json”粘贴到“Additional Boards Manager URLs”。如果您这里已有URL,并且想要添加更多,请用逗号和空格分隔URL。
preferences.jpg (30.71 KB, 下载次数: 2)
2020-10-3 14:10 上传
现在,导航至tools-board,然后单击Boards Manager…。现在向下滚动,直到看到DIY ATtiny,然后单击安装按钮。
将BOOTLOADER烧录到ATTY单片机
实际上,引导加载程序是微控制器中的一个固件,它允许通过串行通信安装新固件。为了开始对ATtiny 13进行编程,我们必须将Bootloader烧录到其中。要实现此目的,有两个步骤:首先,进入Tools-Board并选择ATtiny13,其次,单击Tools下拉菜单底部的Burn Bootloader按钮。
您应该注意ATtiny的版本,导航到Tools-Processor Version,然后根据您的芯片选择ATtiny13或ATtiny13a。
processor.jpg (51.66 KB, 下载次数: 1)
2020-10-3 14:10 上传
烧录Bootloader之后,我们的ATtiny现在可以进行编程了。您现在可以尝试Blink草图之类的Arduino IDE示例。
为了确保Blink草图可以正常工作,您应该首先检查下图。
pinout.jpg (15.82 KB, 下载次数: 1)
2020-10-3 14:10 上传
在这里,引脚3在硬件中定义为PB4,现在让我们看一下编辑后的代码:
//We will replace "LED_BUILTIN" with "4" since ATtiny does not have a built-in led!
void setup() {
// initialize digital Pin 3 of ATtiny 13(defined in hardware as 4) as an output.
pinMode(4, OUTPUT);
}
// the loop function runs over and over again forever
void loop() {
digitalWrite(4, HIGH); // turn the LED on (HIGH is the voltage level)
delay(1000); // wait for a second
digitalWrite(4, LOW); // turn the LED off by making the voltage LOW
delay(1000); // wait for a second
}复制代码
接下来,通过在引脚3和GND之间添加一个带有合适电阻的LED来修改电路,如图所示。
blinkk.jpg (31.37 KB, 下载次数: 1)
2020-10-3 14:10 上传
常见故障排除
如果在构建此项目时遇到任何问题,可以检查此列表以对项目进行故障排除:
• 仔细检查所有连接以及ATtiny和LED的方向。
• 将ArduinoISP草图重新上传到Arduino。
• 在在Arduino上复位和接地之间连接一个10uf电解电容。确保以正确的方向插入电容,负极接地。
• 在面包板上的5v和接地之间连接大电容,这将有助于消除电压尖峰。
• 确保为编程ATtiny的Arduino提供足够的电源,9伏电池可能无法工作。
• 使用其他Arduino替换您的Arduino开发板
• 确保您使用的是最新的IDE和最新的核心文件
• 单击tools,并确保下拉菜单与“Burn the Bootloader”步骤中显示的菜单相同。如果有什么不同,请进行更改并重新烧录引导程序。
现在已经准备就绪,该进行测试使用Arduino IDE编程的ATtiny的新思路和新应用!