找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2837|回复: 1
打印 上一主题 下一主题
收起左侧

利用单片机定时器,动态扫描方法在六位数码管上显示出稳定的654321

[复制链接]
跳转到指定楼层
楼主
ID:444512 发表于 2018-12-15 23:22 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
#include<reg52.h>
#define uint unsigned int
#define uchar unsigned char
uint a=1;
sbit dula=P2^6;
sbit wela=P2^7;
uchar code table[]={
0x3f,0x06,0x5b,0x4f,
0x66,0x6d,0x7d,0x07,
0x7f,0x6f,0x77,0x7c,
0x39,0x5e,0x79,0x71,};
/*uchar code table2[]={
0xfe,0xfd,0xfb,0xf7,        
0xef,0xdf};*/

void main()
{
        TMOD=0x01;
        TH0=(65536-40000)/256;
        TL0=(65536-40000)%256;
        EA=1;
        ET0=1;
        TR0=1;
        while(1);
        
        
}
void T0_time() interrupt 1
{        
    TH0=(65536-917)/256;
        TL0=(65536-917)%256;
//         a++;
//   if(a>6)
//   a=1;
                switch(a)
            {
             case 1:wela=1;P0=0xfe;wela=0;P0=0xff;dula=1;P0=table[6];dula=0;a++;break;//a++;
             case 2:wela=1;P0=0xfd;wela=0;P0=0xff;dula=1;P0=table[5];dula=0;a++;break;//;a++;
             case 3:wela=1;P0=0xfb;wela=0;P0=0xff;dula=1;P0=table[4];dula=0;a++;break;//a++;
             case 4:wela=1;P0=0xf7;wela=0;P0=0xff;dula=1;P0=table[3];dula=0;a++;break;//a++;
             case 5:wela=1;P0=0xef;wela=0;P0=0xff;dula=1;P0=table[2];dula=0;a++;break;//a++;
             case 6:wela=1;P0=0xdf;wela=0;P0=0xff;dula=1;P0=table[1];dula=0;a=1;break;
             default: break;
                }         
}


分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:1 发表于 2018-12-16 01:12 | 只看该作者
补全原理图或者详细说明一下电路连接即可获得100+黑币
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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