原创 avr单片机 数码管显示实验 实验(三)

2008-5-12 12:36 3865 9 9 分类: MCU/ 嵌入式

点击下载


这个实验利用mega16实现数码管的动态扫描显示,详情见附件.


平台:FDRAVR开发板


代码:


#include <mega16.h>
#include <delay.h>     
//num,要显示的数据(0~9);pos,要显示的位置(从右到左)
void display(uchar num,uchar pos)
{  
    DDRA="0XFF";//定义PORTA口输出
    PORTA="0XFF";//输出高电平
    switch(pos)
    {
        case 3:PORTA=0X01;break;
        case 2:PORTA=0X02;break;
        case 1:PORTA=0X04;break;
        case 0:PORTA=0X08;break;
        default:PORTA=0X00;
    }
    num<<=4;//取数字,送CD4511
    PORTA|=num;
}
void main()     
{
    uint t="0";
    while(1)
    { 
        display(t%10,0);delay_ms(5);
        display((t/10)%10,1);delay_ms(5);
        display((t/100)%10,2);delay_ms(5);
        display((t/1000),3);delay_ms(5);
        if(t>9999)t=0;
        t++;
    }
}   


 


 


 


 


 


 

PARTNER CONTENT

文章评论0条评论)

登录后参与讨论
EE直播间
更多
我要评论
0
9
关闭 站长推荐上一条 /1 下一条