| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1471 人关注过本帖
标题:请教各位老师2051点亮数码管全部显示同一个数字的问题(已重新编辑过帖子)
只看楼主 加入收藏
mllwj
Rank: 1
等 级:新手上路
帖 子:22
专家分:0
注 册:2017-4-19
结帖率:50%
收藏
已结贴  问题点数:20 回复次数:2 
请教各位老师2051点亮数码管全部显示同一个数字的问题(已重新编辑过帖子)
小弟制作了一个简单的加减计数器,第一次接触单片机,一切都是零开始,在网上找了些别人的程序,数码管是共阳极。在论坛大师grmmylbs的指导下,终于把数码管点亮,现在的问题是,四位数字只显示同一个字,#if 0,就是关闭了十位,百位和千位后还是四个字都在显示,显示的值是个位的
图片附件: 游客没有浏览图片的权限,请 登录注册
。#if 1,就是个十百千位全部打开,也是四位数都显示,但字模糊(应该是个十百千位全部叠加在一起了)
图片附件: 游客没有浏览图片的权限,请 登录注册

下面是电路图和程序,使用共阳极数码管。不知道是哪里错了,求哪位大事帮忙看看指导一下,小弟在这里先谢了!!
图片附件: 游客没有浏览图片的权限,请 登录注册


#include<reg51.h>
#define leddata P1 //数码管的段码输出
#define uchar unsigned char
#define uint unsigned int
uint shu;
sbit jia=P3^1; //加一按键
sbit jian=P3^0; //减一按键
sbit qw=P3^2; //数码管的千位
sbit bw=P3^3; //数码管的百位
sbit sw=P3^5; //数码管的十位
sbit gw=P3^7; //数码管的个位
uchar code tab[]={ 0xC0,/*0*/
0xF9,/*1*/
0xA4,/*2*/
0xB0,/*3*/
0x99,/*4*/
0x92,/*5*/
0x82,/*6*/
0xF8,/*7*/
0x80,/*8*/
0x90,/*9*/
};
void desplay();
void delay(uchar a) //延时函数
{
uchar x,y;
for(x=0;x<a;x++)
for(y=0;y<20;y++);
}

void desplay() //显示函数
{
   #if 1
   leddata=tab[shu/1000];
   qw=0;delay(100);qw=1;
   
   leddata=tab[shu%1000/100];
   bw=0;delay(100);bw=1;
      
   leddata=tab[shu%100/10];
   sw=0;delay(100);sw=1;
   #endif   
   leddata=tab[shu%10];
   gw=0;delay(100);gw=1;
  
}

void key() //按键扫描函数
{
if(jia==0)
{
delay(50);
if(jia==0)
{
while(!jia)desplay();
if(shu==9999)shu=0;
else shu++;
}
}
if(jian==0)
{
delay(50);
if(jian==0)
{
while(!jian)desplay();
if(shu==0)shu=9999;
else shu--;
}
}
}

void main() //主函数
{
while(1)
{
key();
desplay();
}
}

[此贴子已经被作者于2017-5-15 17:26编辑过]

搜索更多相关主题的帖子: 数码管 显示 tab void delay 
2017-05-13 11:42
mllwj
Rank: 1
等 级:新手上路
帖 子:22
专家分:0
注 册:2017-4-19
收藏
得分:0 
顶上去!!求各为大神帮看看啊
2017-05-15 07:57
Emotiona
Rank: 7Rank: 7Rank: 7
等 级:黑侠
帖 子:311
专家分:581
注 册:2017-3-7
收藏
得分:20 
我是菜鸟
2017-05-17 07:31
快速回复:请教各位老师2051点亮数码管全部显示同一个数字的问题(已重新编辑过帖 ...
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.022528 second(s), 12 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved