下载后可任意编辑AVR LED 流水灯程序系统功能 使用 AVR 控制 8 位 LED,做到想闪就闪,不想闪就不闪,左闪右闪,拚命闪,演示 AVR 单片机之“点灯术”。硬件设计 关于 AVR 的 I/O 结构及相关介绍详见 Datasheet,这里仅对作部分简单介绍,下面是 AVR 的 I/O 引脚配置表:AVR I/O 口引脚配置表DDRXnPORTXnPUDI/O 方式内部上拉电阻引脚状态说明 00X输入无效三态(高阻) 010输入有效外部引脚拉低时输出电流 (uA) 011输入无效三态(高阻) 10X输出无效推挽 0 输出,吸收电流 (20mA) 11X输出无效推挽 1 输出,输出电流 (20mA) 虽然 AVR 的 I/O 口单独输出“1”时,可输出较大电流足已点亮一盏灯,但 AVR 总的 I/O 输出毕竟是有限的,所以,有经验的点灯者考虑到除了点灯外可能还有其它费劲的活儿要干,会将 AVR 的 I/O 口设计为输出“0”时点灯,输出“1”时熄灯。这种接法亦叫“灌电流接法”。AVR 主控电路原理图(点击图片放大,不需要放大镜!) 下载后可任意编辑LED 控制电路原理图(点击图片放大,不需要放大镜!) 软件设计下面部分从 TXT 拷出,拷到网页,代码部分缺省了很多空格,比较凌乱,请谅解!//目标系统: 基于 AVR 单片机//应用软件: ICC AVR/*01010101010101010101010101010101010101010101010101010101010101010101----------------------------------------------------------------------实验内容:点灯,让灯左闪右闪,舍命闪。----------------------------------------------------------------------硬件连接:将 PD 口的 LED 指示灯使能开关切换到"ON"状态。----------------------------------------------------------------------注意事项: (1)若有加载库程序,请将光盘根目录下的“库程序”下的“ICC_H”文件夹拷到 D 盘(2)请详细阅读:光盘根目录下的“产品资料\开发板实验板\SMK 系列\SMK1632\说明资料”----------------------------------------------------------------------10101010101010101010101010101010101010101010101010101010101010101010*/下载后可任意编辑#include #include "D:\ICC_H\CmmICC.H"#define LED_DDR DDRD#define LED_PORT PORTDvoid main(void){ uint8 i,j; LED_DDR=0XFF; while(1) { for(i=0;i<4;i++) { LED_PORT^=0xFF; //我闪!拚命闪! delay50ms(10); } j=0x01; for(i=0;i<8;i...