kpj001 发表于 2015-2-2 16:51:20

最小arduino的实验?

买了几个mega328,16M晶振,20p电容,准备做几个最小arduino

官方文档   ​http://www.arduino.cc/en/Tutorial/ArduinoToBreadboard

实验却只有部分成功:

1. 按照文档,连接 "Arduino as ISP" 写入 "Bootloader", 这个在LED一阵闪烁后成功了

2. 文档里需要取下Mega328,当作TTL来 upload, 国内兼容版没用DIP封装,没有办法取下Mega328

3. 另外接USB-TTL 来 upload 程序    ​    ​

int i;

void setup()
{Serial.begin(9600);}
void loop()
{
for(i=1;i<=100;i++)
{
Serial.println(i);
delay(10);
}
}

点击 upload 后先是编译,通过后再是upload, 这时 1脚/reset 通过100欧姆 短接下Vcc,就可以开始 upload,也成功。

4.最后只需要4条连接线+晶振就可以接TTL输出串口数据到PC:

Mega328    ​    ​    ​USB-TTL

    ​    ​2,Rx    ​    ​    ​    ​ Tx

    ​    ​3,Tx    ​    ​    ​    ​Rx

      ​​7,Vcc    ​    ​    ​    ​Vcc

    ​    ​8,Gnd    ​    ​    ​​ Gnd

    ​    ​9,10 16M (甚至不用接电容)

以上可以用串口波形软件查看

5。 当准备更新程序时问题来了, upload 新程序没反应, 强行中断后似乎还破坏了Bootloader, 必须重复以上 1、3 步骤才可以恢复???

xinxinzhihuo 发表于 2015-2-3 08:13:21

你是328,我是Atmega16A,用USBasp写入bootloader后,写不进程序。我也在研究。

kpj001 发表于 2015-2-3 16:48:27

xinxinzhihuo 发表于 2015-2-3 08:13 static/image/common/back.gif
你是328,我是Atmega16A,用USBasp写入bootloader后,写不进程序。我也在研究。

我这是可以写程序,但不能再写...继续研究

smching 发表于 2015-2-3 20:29:40

Arduino as ISP 可以烧录bootloader ,也可以上载sketch。不需再添加USB-TTL来上载sketch
选择File>Upload Using Programmer
或者
按键盘:Ctrl + Shift + U

kpj001 发表于 2015-2-3 20:53:23

smching 发表于 2015-2-3 20:29 static/image/common/back.gif
Arduino as ISP 可以烧录bootloader ,也可以上载sketch。不需再添加USB-TTL来上载sketch
选择File>Upload...

谢谢,回头试试看

smching 发表于 2015-2-3 21:00:06

kpj001 发表于 2015-2-3 20:53 static/image/common/back.gif
谢谢,回头试试看

使用Arduino as ISP上载sketch可能会擦除bootloader,下次是不能使用usb-serial上载sketch了。但这並不重要,反正接下来都是使用Arduino as ISP上载sketch。

kpj001 发表于 2015-2-3 21:06:00

smching 发表于 2015-2-3 20:29 static/image/common/back.gif
Arduino as ISP 可以烧录bootloader ,也可以上载sketch。不需再添加USB-TTL来上载sketch
选择File>Upload...

谢谢, Arduino as ISP的确好用. 终于完结这个最小系统,1个晶振就够了.(估计8M用内部R/C振荡器也成)

smching 发表于 2015-2-3 22:09:27

kpj001 发表于 2015-2-3 21:06 static/image/common/back.gif
谢谢, Arduino as ISP的确好用. 终于完结这个最小系统,1个晶振就够了.(估计8M用内部R/C振荡器也成)

我的工程大部分使用8MHZ内部R/C振荡器

kpj001 发表于 2015-2-3 22:13:48

smching 发表于 2015-2-3 22:09 static/image/common/back.gif
我的工程大部分使用8MHZ内部R/C振荡器

本来想试试,可惜1.0.6里面没找到对应的选项,估计要改IDE的配置文件,回头又时间再看看

smching 发表于 2015-2-3 22:16:43

kpj001 发表于 2015-2-3 22:13 static/image/common/back.gif
本来想试试,可惜1.0.6里面没找到对应的选项,估计要改IDE的配置文件,回头又时间再看看

这里有你要的答案
http://ediy.com.my/index.php/tutorials/item/94-arduino-running-at-8mhz-internal-clock-with-optiboot-bootloader

kpj001 发表于 2015-2-3 23:28:08

smching 发表于 2015-2-3 22:16 static/image/common/back.gif
这里有你要的答案
http://ediy.com.my/index.php/tutorials/item/94-arduino-running-at-8mhz-internal- ...

谢谢帮助,已经成功!我发现ISP写入时,不接 20 22 也是可以的

kpj001 发表于 2015-2-4 00:05:31

kpj001 发表于 2015-2-3 23:28 static/image/common/back.gif
谢谢帮助,已经成功!我发现ISP写入时,不接 20 22 也是可以的

发不了图,借隔壁坛子用用http://www.arduino.cn/thread-12053-1-1.html

终于在smching帮助下做好了最小arduino,就只剩下328芯片了.
图片是把UNO上面的20分钟倒计时钟(熬中药提醒)改为最小系统,
个人认为,调试还是UNO等板子容易些,程序通过验证后,就可以放到最小系统玩,面包板,洞洞板都好说

耳又又 发表于 2015-2-4 00:53:42

你都led一闪了,固件时烧好了,
直接用个usb-ttl就可以了,淘宝几块钱,推荐用cp2102的,有dtr,不然每次都要手动重启。

xinxinzhihuo 发表于 2015-2-4 22:36:05

搞定了,非常感谢

jock 发表于 2017-11-8 16:46:15

非常感谢smching ,受益匪浅!:handshake
页: [1]
查看完整版本: 最小arduino的实验?