把一个电位器连在Arduino 168 Duemilanove 2009 ATMEGA168P控制器的模拟接口0,再把一个LED连在控制器的数字接口13,当电位器滑动,电压超过2.5V,则LED亮,否则熄灭。 ATMEGA168P控制器的AD转换是10位的转换器,5V对应的数字量为1024,2.5V应该是512,所以单片机一旦得知AD转换后的数字量超过 512时,把数字接口13的LED的变量ledpin为HIGH。
下面是Arduino程序:
点击图片,可以放大
按下“三角”图标,同时按下Shift,你就可以看到0018版Arduino编程软件的HEX到哪去了,你看上图编译结果区,我打阴影的部分,可以看到HEX所藏得目录。
把HEX文件放到proteus的ATMEGA168单片机里,按下Proteus中的运行按钮,你可以看到Arduino和proteus结合达到了任务要求,不花一分钱就学习了,被国外机器人爱好者推崇的AVR编程软件。
注意Arduino控制器数字接口和模拟接口编号与AVR单片机引脚的对应关系,大家可以到此网址
Arduino 168控制器的原理图PDF打开即可。
下载网址:http://arduino.cc/en/Main/ArduinoBoardDiecimila
我用的Arduino软件版本是0018版,这个软件是免费的,可以在http://arduino.cc网址下载。
proteus的版本是proteus 7.6 在电驴找找看有没有试用版,哈哈,明白吗?
这个例子的程序请下载,我打包了。
模拟输入.rar