打印

单片机四个数码管显示的问题

[复制链接]
676|11
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
langgq|  楼主 | 2018-10-11 19:56 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
这个是按照老师讲的画出来的图,不让改动,要求四个灯分别显示1234,延时1秒后同时显示0,1秒后再分别显示5678,再1秒后显示0000。这样循环
沙发
langgq|  楼主 | 2018-10-11 20:00 | 只看该作者

使用特权

评论回复
板凳
lium| | 2018-10-11 20:18 | 只看该作者

#include<reg51.h>
#include<intrins.h>
#include<absacc.h>
#define uint unsigned int
#define uchar unsigned char        
#define portA XBYTE[0x00]
uchar code tab_1[]={0x06,0x5b,0x4f,0x66};   //1~4&sup1;&sup2;&Ograve;&otilde;
uchar code tab_2[]={0x6d,0x7d,0x07,0x7f};   //5~8&sup1;&sup2;&Ograve;&otilde;
uchar code tab_3[]={0x3f,0x3f,0x3f,0x3f};   //0&sup1;&sup2;&Ograve;&otilde;
void delayms(uint i)
{
   uint j,k;
   for(j=i;j>0;j--)
    for(k=100;k>0;k--);    //&Ntilde;&Oacute;&Ecirc;±1ms
}
void main()
{
while(1)
{
           P2=0x00;
     P0=0x06;
                 P2=0x20;
                 P0=0x5b;
                 P2=0x40;
                 P0=0x4f;
                 P2=0x60;
                 P0=0x66;
           delayms(1000);
                 P2=0x00;
     P0=0x3f;
                 P2=0x20;
                 P0=0x3f;
                 P2=0x40;
                 P0=0x3f;
                 P2=0x60;
                 P0=0x3f;
                 delayms(1000);
                 P2=0x00;
     P0=0x6d;
                 P2=0x20;
                 P0=0x7d;
                 P2=0x40;
                 P0=0x07;
                 P2=0x60;
                 P0=0x7f;
                 delayms(1000);
                 P2=0x00;
     P0=0x3f;
                 P2=0x20;
                 P0=0x3f;
                 P2=0x40;
                 P0=0x3f;
                 P2=0x60;
                 P0=0x3f;
                 delayms(1000);
                 }
}

使用特权

评论回复
地板
lium| | 2018-10-12 12:16 | 只看该作者
调试的问题是四个管本来应该显示1234的部分全都显示4,5678那部分也是。

使用特权

评论回复
5
yufe| | 2018-10-12 12:21 | 只看该作者
多看看,一定要注意WR!

使用特权

评论回复
6
zhuww| | 2018-10-12 12:26 | 只看该作者
还是那句话:关键是弄清WR的作用!

使用特权

评论回复
7
wangpe| | 2018-10-12 12:30 | 只看该作者

搞清位选和段选,掌握动态显示,再加个延时就可以了

使用特权

评论回复
8
llia| | 2018-10-12 12:35 | 只看该作者
个人觉得你的方法对这个电路不行!不相信不妨试试看。。

使用特权

评论回复
9
hanwe| | 2018-10-12 12:39 | 只看该作者
思路不对!程序与电路不符!

使用特权

评论回复
10
wangzsa| | 2018-10-12 12:42 | 只看该作者
搞清位选和段选,掌握动态显示,再加个延时就可以了。。

使用特权

评论回复
11
yufe| | 2018-10-12 12:46 | 只看该作者
看看,应该用个定时器就行了吧!

使用特权

评论回复
12
langgq|  楼主 | 2018-10-12 12:50 | 只看该作者

其实还是不大明白,我再琢磨琢磨吧,多谢了哈,结贴了先

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

932

主题

8762

帖子

1

粉丝