控制/MCU
用Arduino编程具有简单易学的特点,但要配合Arduino控制板使用,使得成本比较高,体积也大,而且除单片机电路以外的大部分电路只在编程时有用,在电子制作上使用后就是多余的了,造成了浪费。能不能不用Arduino控制板,直接想办法用Arduino给单片机编程呢?答案是肯定的,只要做一个Arduino最小系统板,配合ISP下载线USBtinyISP或USBasp 就可以给AVR单片机下载程序了,Arduino最小系统板有一个锁紧座,方便单片机插上和取下,下载好程序的单片机就可以取下装到目标板上去使用了。
Arduino最小系统板电路见下图,适用于对ATmega8、ATmega168、ATmega328等型号的单片机编程。
电路图的LED相当于Arduino控制板上数字13脚接的LED,这里用来作编程指示,下载程序时它会快速闪烁,同时也作一个输出用,比如下载例中的Blink就可以看到效果了。
做好的实物:
和USBtinyISP下载线的连线图:
和USBasp下载线的连线图:
下载程序过程:
1、选择控制板类型
根据所使用的单片机型号(ATmega8、ATmega168、ATmega328等)选择控制板的类型,比如使用ATmega8就作如下选择。
2、选择下载线类型
如果用USBtinyISP下载线,就作如下选择:
3、下载引导程序 bootloader
本来这一步在这里是不需要做的,因为接下来下载程序的方法和Arduino控制板常用方法不同,即不是用串口下载程序,不需要引导程序。但是在下载引导程序的过程中也包括了AVR单片机熔丝位的自动配置,不然还得用其它软件去配置,因为出厂的默认配置不是我们所需要的,所以这一步为了熔丝位还不能省。当然也可以用这种方法给Arduino控制板上bootloader已损坏的单片机重写bootloader,或者在单片机已损坏时重写一个单片机换上去。
4、下载程序
打开或编写好程序后就可以点击“使用编程器下载”下载程序了,以Blink 为例,程序下载好以后就可以看到LED以亮1秒、熄1秒闪烁了。
来源;21ic
全部0条评论
快来发表一下你的评论吧 !