用ATtiny85微处理器编程和DIY

自2009年入了开源硬件的坑以来,大部分电子方面的DIY都是用Arduino系列单片机做的,这种设备对初学者非常友好,便于学习和制作原型。但如果想把小制作变成能每天使用的靠谱产品,却不是很合适。Arduino的接口常使用跳线座,方便调试但不牢固;板上集成了很多方便开发的接口和功能,但也导致体积较大、费用偏高(百元起)。更好的方式是用Arduino做开发,电路和程序都验证没问题后,将程序上载到兼容Arduino的微处理器上,再和其他电子零件一起用电路板方式装好。ATtiny25/45/85系列微处理器就适用于这种方式,其产量大、价格便宜(淘宝零售约5、6元一颗)、体积小、功耗低、兼容性强。其实自己九年前就翻译过介绍这种方法的文章,但并没有实际操作。最近终于做到知行合一,把这个过程彻底操作了一遍,记录在此,供同好参考。

所需零件

  • Arduino Duemilanove开发板(芯片需为ATmega328)x1
  • ATtiny85微处理器x1
  • 10uf电容x1
  • 跳线若干
  • 面包板或兼容Duemilanove的原型扩展板(prototype shield)x1

设置程序上载器

1. Arduino Duemilanove开发板使用USB线与电脑相连;
2. 打开Arduino IDE软件(版本1.6或以上);
3. Tools选项下选择开发板和对应的串口;
4. File-->Examples下选择Arduino ISP;
5. 点击上传。

配置Arduino IDE

  1. 在Arduino IDE软件中,进入File-->Preferences,点击"Additional Board Managers URLs:"后面的文本框,将网址修改为:
    https://raw.githubusercontent.com/damellis/attiny/ide-1.6.x-boards-manager/package_damellis_attiny_index.json后,点击OK;
  2. 依次点击Tools-->Board-->Boards Manager,在搜索框中输入attiny查找,找到库文件后点击install进行安装。

硬件连接

依照下面的电路图将ATtiny85和Duemilanove连接起来:

10uf电容正极接Duemilanove开发板的RESET,负极接GND;

现在要接ATtiny85微处理器了,先把引脚编号搞清楚,依上图表面有个小圆点对着的是引脚1,向下依次是2,3,4;右侧从下往上是引脚5-8,不要搞错了。

将ATtiny85微处理器在面包板上插好,参照上图进行连接:将ATtiny85的1号引脚(RESET)接Duemilanove板10号PIN,4号引脚(GROUND)接GND,5号接PIN11,6号接PIN12,7号接PIN13,8号接5V,完成连接。

为方便多次复用,推荐大家配一个适用于Duemilanove的原型扩展板,便宜的才不到10元。将前述电容、连线等都在扩展板上接好,留作专用。需要时只要把要用的ATtiny85插好,再将扩展板接到Duemilanove上就行了。

编程和上传

连接好ATtiny85的Duemilanove板依旧使用USB线与电脑相连,打开Arduino软件,在Tools-->Board下选择ATtiny25/45/85,Proccesor选择ATtiny85,端口不变,编程器选择Arduino as ISP,然后就可以写程序并上传了。

上传后出现如上的"avrdude done. Thank you."字样,就表示上传成功了,将USB线拔下后,再将ATtiny85从面包板上取下来,接到实际电路中,完成制作。

参考资料

本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。