风筝
发表于: 2020-12-21 15:50:51 | 显示全部楼层

ATtiny系列是AVR市场上最小的微控制器系列之一。这些微控制器能够利用Arduino平台上的许多库。 ATtiny85微控制器芯片是8引脚,8位AVR微控制器。它的体积小,功耗低,非常适合空间小,功耗低的便携式项目。但是,由于没有像微控制器板那样的USB接口,因此将代码写入芯片可能会遇到一些挑战。


在前段时间,我们使用Arduino Uno对ATtiny85进行了编程。但是将Attiny85连接到Arduino并使用Arduino作为ISP既困难又耗时。因此,在本篇文章中,我们将制作一个ATtiny85编程板,以便我们可以像其他微控制器板一样直接编程。


所需的组件

●    Arduino UNO(仅在上传引导程序时第一次)

●    ATtiny85微控制器

●    USB A型插头

●    3个电阻(2×47Ω和1×1kΩ)

●    二极管

●    8引脚IC基座

●    面包板

●    跳线


ATtiny85微控制器简介

Atmel的ATtiny85是基于高级RISC架构的高性能、低功耗8位微控制器。该微控制器芯片具有8KB ISP闪存、512B的EEPROM、512字节SRAM、6个通用I / O线、32个通用工作寄存器、一个具有比较模式的8位定时器/计数器、一个8位高速寄存器、定时器/计数器、USI、内部和外部中断、4通道10位A / D转换器、带有内部振荡器的可编程看门狗定时器,三种软件可选的省电模式以及用于片上调试的debugWIRE。 ATtiny85引脚排列如下:

ATtiny85-Pinout.png


使用Arduino Uno在ATtiny85上烧录引导程序

为了在没有Arduino时对ATtiny85进行编程,我们首先必须使用Arduino UNO开发板将引导加载程序上载到其中,这是一次性的过程,完成后,我们将不再需要UNO开发板。引导加载程序是一个特殊的程序,必须在微控制器中运行才能编程。将程序数据加载到微控制器上最方便的方法之一是通过引导加载程序。引导加载程序位于MCU上并执行传入的指令,然后将新的程序信息写入微控制器的内存。烧录微控制器上的引导加载程序无需使用特殊的外部硬件即可对微控制器进行编程,您将可以使用USB连接直接对其进行编程。 Digispark ATtiny85板运行的是“ Bluetooth”的“micronucleus tiny85”引导加载程序。引导加载程序是在Digispark上预先编程的代码,它可以用作USB设备,以便可以由Arduino IDE进行编程。、


下面提供了使用Arduino Uno和Arduino IDE将引导加载程序烧录到ATtiny85的指南:


第1步:将Arduino Uno配置为ISP:

由于ATtiny85只是一个微控制器,因此需要通过ISP进行编程。因此,要对ATtiny85进行编程,我们首先需要将Arduino Uno配置为ISP以用作ATtiny85的烧写器。为此,将Arduino Uno连接到笔记本电脑并打开Arduino IDE。之后,导航至File > Example > ArduinoISP,并上传Arduino ISP代码。

Arduino-IDE-Configuration.png


第2步:在ATtiny85上烧写引导加载程序的电路图

下面给出了ATtiny85上烧写引导加载程序的完整原理图:

Flashing-Boot-loader-on-ATtiny85-Schematic.png


现在将Arduino Uno插入笔记本电脑并打开Arduino IDE。查找Uno连接到的COM端口。


之后,从给定的链接下载ATtiny85引导程序文件。打开“ Burn_AT85_bootloader.bat”,并用您的Uno连接到的COM端口号更改COM端口号“ PCOM5”。退出前保存更改。


现在将已编辑的“ Burn_AT85_bootloader.bat”和“ ATtiny85.hex”文件移至Arduino IDE根文件夹(C:\ Program Files(x86)\ Arduino)。


之后,右键单击“ Burn_AT85_bootloader.bat”,然后选择“以管理员身份运行”。烧录引导加载程序大约需要5到6秒钟。如果一切顺利,您应该收到此消息“AVRdude done. Thank you. Press any key to continue..”。

Flashing-Boot-loader-on-ATtiny85.png

这样,引导加载程序已成功安装到ATtiny85芯片上。现在是时候将USB连接到ATtiny85,以便我们直接对其进行编程。通过USB编程ATtiny85的电路图如下:


ATtiny编程器电路图

该原理图取自Digispark ATtiny85电路板原理图,但由于我们打算为ATtiny85构建编程器,因此我们仅将USB插头与ATtiny85连接。

ATtiny-Programmer-Circuit-Diagram.png

R3是一个上拉电阻,连接在IC的Vcc和PB3引脚之间,同时添加了齐纳二极管(D1-D2)以提供全面的USB接口保护。在将所有组件焊接到万能板上之后,其外观将如下所示:

ATtiny85-Board.jpg


安装Digispark驱动程序

要使用USB对ATtiny85进行编程,您必须在笔记本电脑上安装Digispark驱动程序,如果没有,则可以使用上面提供的链接下载它。然后,解压缩该zip文件并双击“ DPinst64.exe”应用程序以安装驱动程序。

Installing-Digispark-Driver.jpg


成功安装驱动程序后,将ATtiny85板插入笔记本电脑。现在转到Windows上的设备管理器,ATtiny85设备将在“ libusb-win32设备”下列为“ Digispark Bootloader”。如果您无法在设备管理器中找到“ libusb-win32设备”,请转到“查看”,然后单击“显示隐藏的设备”。


设置Arduino IDE以对ATttiny85进行编程

要使用Arduino IDE编程ATtiny85开发板,首先,我们需要将Digispark开发板支持添加到Arduino IDE。为此,请转到File > Preferences,然后在“Additional Boards Manager URLs中添加以下链接,然后单击“确定”。

http://digistump.com/package_digistump_index.json


ATtiny85-Board-with-Arduino-IDE.jpg

之后,转到Tools > Board > Board Manager,然后搜索“ Digistump AVR”并安装最新版本。

Digistump-AVR.jpg

安装之后,现在您将可以在“ Board”菜单中看到一个名为“ Digispark”的新条目。

Arduino-IDE-Board-Manager.jpg

现在,转到File > Examples > Basics,然后打开Blink示例。

Arduino-IDE.jpg

将代码中的引脚号从LED_BUILTIN更改为0。

ATtiny85-IC-Programming.jpg

现在回到Tools -> Board,然后选择“Digispark (Default – 16mhz)”开发板。然后单击Arduino IDE中的上载按钮。


上载代码后,连接到ATtiny85的LED会开始闪烁。


以上就是如何制作自己的ATtiny85 Arduino开发板的方法。如有任何疑问,请随时在本帖下面进行回复。

跳转到指定楼层
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题 32 | 回复: 41



手机版|

GMT+8, 2024-4-26 02:57 , Processed in 0.040463 second(s), 6 queries , Gzip On, MemCache On. Powered by Discuz! X3.5

YiBoard一板网 © 2015-2022 地址:河北省石家庄市长安区高营大街 ( 冀ICP备18020117号 )

快速回复 返回顶部 返回列表