系统功能
使用AVR扫描四个数码管,动态扫描,动态显示,左扫,右扫,来回扫。。。
硬件设计
AVR主控电路原理图
数码管动态扫描电路原理图
软件设计
下面部分从TXT拷出,拷到网页,代码部分缺省了很多空格,比较凌乱,请谅解!
//目标系统: 基于AVR单片机
//应用软件: ICC AVR
/*01010101010101010101010101010101010101010101010101010101010101010101
----------------------------------------------------------------------
实验内容:
动态的循环显示“0-9”。
----------------------------------------------------------------------
硬件连接:
LedIndicator:VCC、GND、L0----L3、D0----D7
| | | |
SMK1632: VCC、GND、PB7--PB4、PD0--PD7
----------------------------------------------------------------------
注意事项:
(1)若有加载库程序,请将光盘根目录下的“库程序”下的“ICC_H”文件夹拷到D盘
(2)请详细阅读:光盘根目录下的“产品资料开发板实验板SMK系列SMK1632说明资料”
----------------------------------------------------------------------
10101010101010101010101010101010101010101010101010101010101010101010*/
#include #include "D:ICC_HCmmICC.H" #define LED_BIT_DDR DDRB //数码管 位选 #define LED_BIT_PORT PORTB #define LED_SEG_DDR DDRD //数码管 段选 #define LED_SEG_PORT PORTD /*-------------------------------------------------------------------- 程序名称:数码管扫描程序 程序功能: 注意事项: 提示说明: 输 入: 返 回: --------------------------------------------------------------------*/ void main() { uint8 i; uint8 ledCode[]={0x28,0xAF,0x98,0x8A,0X0F,0x4A,0x48,0xAE,0x08,0x0A}; LED_BIT_DDR = 0XFF; LED_BIT_PORT = 0x0F; LED_SEG_DDR = 0XFF; LED_SEG_PORT = 0X00; while(1) for(i=0;i<=9;i++) { LED_SEG_PORT = ledCode[i]; delay50ms(10); } } 系统调试 本程序仅给出四位数码管显示同一数字的简单示例,试改动“LED_BIT_DDR”、“LED_SEG_DDR”的方向,“LED_BIT_PORT”、“LED_SEG_PORT”的值,观察显示效果。。。
设计资源 培训 开发板 精华推荐
- STC12C5A60S2转直插
- C8051F560DK,C8051F570 8051 MCU 工业应用开发系统
- AD725-EBZ,用于 AD725 低成本 RGB 至 NTSC/PAL 编码器的评估板,带亮度陷阱端口
- LTC1599 的典型应用 - 具有 4 象限电阻器的 16 位字节宽、低毛刺乘法 DAC
- 显示 A8514 LED 驱动器计算值的典型应用
- 使用 ON Semiconductor 的 RC4190 的参考设计
- YugenFlow v2:紧凑、易于使用、低功耗、双向、尊重隐私的热检测传感器
- LT3572 的典型应用——具有 900mA 升压转换器的双路全桥压电驱动器
- L78L18AC输出升压电路正电压稳压器的典型应用
- LTC3564 的电池在 1.2A 应用中达到 1.2V