打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
使用Atmega 16/16A制作Arduino复制板

使用Atmega 16/16A制作Arduino复制板

早期的Arduino主控芯片使用的是Atmega 8,在UNO R3时改成了Atmega 328,存储空间由8k增至32k,其它都是相同的。

如果使用Atmega8/328“裸片”复制Arduino,就比较简单,因为Arduino IDE原生就支持它们。

我初时学习Arduino时,原想着一道学习AVR,因为不熟悉底层,就会被Arduino的封装阻隔提升的空间。

今天碰到一篇文章,用Atmega 16复制Arduino,一时兴起,但那文章错误太多,或者什么原因,总之是无法继续。

正确且易于实践的步骤,记录一下。因为这件事情比先前研究的Attiny13A/85/LilyPad更有意义——如果不怕麻烦,以后可以不用再买Arduino板了,体积也小了。

1、在板卡管理器里安装MightyCore。

在首选项里填写

https://mcudude.github.io/MightyCore/package_MCUdude_MightyCore_index.json

2、把Arduino UNO作为编程器

把Examples/ArduinoISP烧写到Arduino中;

3、接线

Arduino UNOAtmega16
5V10(VCC)
GND11(GND)
109(RESET)
116(MOSI)
127(MISO)
138(SCK)

4、烧录Blink

把两只LED串联,正极引脚接Atmega16引脚20,修改Blink.ino:

int pin=14;//注意这句
void setup() {
  pinMode(pin, OUTPUT);
}
void loop() {
  digitalWrite(pin, HIGH); 
  delay(1000); 
  digitalWrite(pin, LOW); 
  delay(1000); 
}

5、烧录Atmega16

Tools菜单里设置板卡:Atmega16,内部时间8MHz,BootLoader为Yes,编程器为Arduino as ISP。

在Sketch菜单里使用upload Using Programmer上传,Atmega16引脚20上的两个LED间隔8秒闪烁一次(为什么?因为时钟慢了。)

6、总结记录

⑴很多资料写的使用AVR烧录器等做法,不用那么麻烦,而且还不保证。

⑵很多资料太过古老,不许IDE版本高于1.6,手动设置熔丝位等等,MightyCore库全部解决掉了,不必理会。

⑶Atmega16有不少资料里的引脚图与Arduino引脚不对应,不能正确执行ino代码。Atmega16有40个引脚,而Atmega328只有28个引脚,相当于功能增加了。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
High
Arduino 全新无线 Linux 版
总有一款适合你——Arduino开发板终极盘点
Arduino CP2102版本完美DIY
dfrobot-arduino uno r3引脚图
Arduino PWM
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服