查看: 1404|回复: 0
打印 上一主题 下一主题

74ls164串转并的数码管显示应用

[复制链接]
跳转到指定楼层
沙发
发表于 2015-4-15 12:47:21 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式


#include <reg52.h>
#include <stdio.h>

sbit p11=P1^1;
sbit p12=P1^2;
unsigned char data discode[11]={0x03,0x9F,0x25,0x0D,0x99,0x49,0x41,0x1F,0x01,0x09};//共阴串行
unsigned char leddis[6]={1,2,3,4,5,6};//显存,有几个数码管可以定义几个

void display(void)  //数码管显示函数
{
    unsigned char count;//数码管个数

    for (count=6;count>0;count--)
    {
        SBUF=discode[leddis[count-1]];
        while(TI==0);
        TI=0;
    }
}   
void main()
{
        SCON=0x00;        //设定UART的工作方式为MODEO
                leddis[0]=1;        //显示内容的初始化
                leddis[1]=2;
                   leddis[2]=3;
                   leddis[3]=4;
        leddis[4]=5;
        leddis[5]=6;
                display();        //        显示函数

                while(1)
                {
                        if(p11==0)        //键P11被按下,显示2008
                        {
                leddis[0]=1;        //显示内容的初始化
                leddis[1]=2;
                   leddis[2]=3;
                   leddis[3]=4;
                leddis[4]=5;
                leddis[5]=6;
                        display();
                        p11=1;
                        }
                        if(p12==0)        //键P12被按下,显示0808
                        {
                leddis[0]=9;        //显示内容的初始化
                leddis[1]=8;
                   leddis[2]=7;
                   leddis[3]=6;
                leddis[4]=5;
                leddis[5]=4;
                        display();
                        p12=1;
                        }               
                }               
}



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?加入中科因仑

x
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 加入中科因仑

本版积分规则

快速回复 返回顶部 返回列表