两个数码管轮换显示故障代码(0到99之间数字显示),隔多久比较好?太短怕现场人员观察不清晰,太长又

作者&投稿:冀齿 (若有异议请与网页底部的电邮联系)
单片机用汇编写两个数码管显示0到99循环的程序~

1、新建项目,做好准备。

2、数码管段选表。

3、延时函数。

4、uchar i; 变量i;wk = 1;打开位选,P0 = 0xf7;1111 0111第4位数码管显示,wk = 0;关闭位选。

5、while(1) //死循环效果{} 。

6、dk = 1;//打开段选,P0 = leddata[i];,dk = 0;//关闭段选,delay(100);//延时效果。

7、选择效果,限制i值的循环范围。

#include
#define uchar unsigned char
#define uint unsigned int
uchar DSY_CODE[]=
{
0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f
};
void delay(uint x)
{
uchar i;
while(x--)for(i=0;i<120;i++);
}
void main()
{
uchar i;
P0 = 0x00;
P2 = 0x00;
while(1)
{
for(i=0;i<=99;i++)
{
P0 = DSY_CODE[i/10];
P2 = DSY_CODE[i%10];
delay(100);
}
}
}
以上为参考程序,部分需要稍作修改
数码管显示原理
数码管简介组成:LED数码管由7段或8段发光二极管组成,在平面上排成8字型。分类:有共阴极和共阳极两种。显示原理:使某些段点亮而另一些段不亮就可以显示0---9,A---F等字型。 使某段点亮必须具备2个条件:
① 共阴极管的公共端接地和共阳极管的公共端接电源。
② 共阴极管的控制端接电源和共阳极管的控制端接地。

相隔0.5秒肯定是不行的,你可以体会一下,1秒钟有多长,那么人看到数字到大脑反应过来,再去记录,至少要2秒。其实,说0.5秒的人,根本就没理解是什么意思,还乱回答。这个时间,选2~4秒比较好些。你说间隔太长,记录下来花费时间太长。那记录的时间就是写字的时间,写字快慢因人而宜,与数码管间隔时间无关。难道选0.5秒,写字就快了,笑话。再说了,0~99的代码会全部出现,那还记什么,0~99全有啊,不用记啦。应该是只出现一部分代码才对。

两个数码管可以显示两位数,而故障码又是两位数,那么要数码管轮换显示,是什么意思呢。
要看清楚轮换显示不同的数值,每一个显示时间应该要大于等于0.5秒


8个数码管依次左移?
用C语言编写8个共阴极数码管从最右边向左依次显示123456789026,一次增加一个数,如第一次显示1,第二次显示12,第三次显示123,依次类推,1秒增加一个数 答:需要给出电路图,就是一个循环输出语句,加上一个定时器

8只数码管【同时】显示多个不同字符……是同时!求代码与proteus仿真...
1、在时序上同时的话,呵呵,你需要8片串行移位锁存器74hc595来扩展,用串口0方式或IO移位处理。写出Display();——方案1 2、在视觉上同时的话,你可以用两个8位P口。其中一个口送段码,一个口送位选。只要保证20mS以内扫描一遍就可以了。利用定时器做3mS定时,每次中断扫描其中一个数码管的显示...

共阴极七段数码显示管的二进制代码是什么?
例如,如果微控制器需要显示数字“5”,它会将数字“5”转换为二进制代码“0101”,然后通过驱动电路将B、D、F和G四个LED段亮起,形成数字“5”的形状。此外,共阴极七段数码显示管还具有灵活性和可扩展性。通过组合多个数码管,可以构建更大规模的数字显示系统。例如,通过将四个数码管组合在一起,...

数码管消隐是什么意思?
消隐:在数码动态显示过程中,若进行片选切换时没有对上一片显示的内容进行清空,则会导致当前数码管中出现上一片内容的余影,从而使显示模糊,影响了整个显示效果。为避免这种现象产生,解决消隐的常用办法有两个:1、在数码管片选信号切换前,先向段传送“不亮”字型码,然后在进行切换和正常传递新段...

...控制数码管显示不正常问题,为什么后面4位数码管1234和5678都是显示...
授人以鱼不如授之以渔。先建立程序的一般结构,然后定义一个code数组,里边存放数码管显示0~9的数据,之后定义一个display显示函数,传递参数但不返回参数,然后将传递的参数(1234或5678)分解成4哥单个数,然后依次选择要显示的数码管和数据,紧接消影和简单暂时,这样一个数码管显示就完成了,之后三个...

一个两位数码管,10个引脚,怎样连接才能分别显示呢,1、2脚分别应该怎样...
1、首先我们需要双击打开proteus这个软件。2、然后要在左侧找到“P”按钮并点击,如图所示的位置。3、接着我们要找到“关键字”的输入框。4、然后我们需要在图纸中点击左键,这个时候出现一个数码管虚影。5、最后一步把虚影挪到合适的位置再次点击左键,如图所示,一个两位共阳数码管就绘制好了。

怎么实现数码管动态动态扫描显示(同时显示不同的数字)?以下程序只能一次...
void Delay(unsigned long w){ while(w--);} void DisPlay(unsigned char s1,unsigned char s2,unsigned char s3,unsigned char s4,unsigned char s5,unsigned char s6) \/\/s1 -s6表示1-6的数码管需要显示的数字 { SMG_WEI =0x01 \/\/第1个数码管选通 000001 SMG_DUAN =smgcode[s1]...

数码管的段选和位选是什么意思???
就相当于我们电脑的配置都做好了,但是没有接通电源,配置再这么好他也不能正常工作。你8位是4段的供应及数码管儿来说,8位就是指8个数码管未选选中的8个,然后14段就是指数码管的段选选中了abcdefghIjkmno14段,这14段是用来显示具体的数字的。当然你可以选择4位7段的,也可以通过软件控制来...

用7447实现一个一位数码管的显示
7447是一片BCD码译码器,需要配一个共阳数码管,就可以显示一位数了。当然了,为了显示仿真的效果,可以用一个计数器74160,输出BCD码,再译码就可以显示出一个数了。见下图

一个单片机应用系统用LED数码管显示字符“8”码是80H,可以断定该显示系 ...
【答案】:B LD数码管显示字符“8”的共阴极字段码7FH,共阳极字段码80H。现字段码是80H,故可以判定是加反相驱动的共阴极数码管或不加反相驱动的共阳极数码管

大兴区15646761855: 求单片机控制两个数码管显示0 - 9程序 -
揣莲潞党: /*模块低电平有效、外部中断0、1为低电平出发*/#include "reg52.h" void delay( char i) { unsigned char t; while(i--) { for(t=0;t<108;t++); } } void INT0_ROUTING() interrupt 0//外部中断0子程序 { P0=0xfe;//LED0点亮 while((P3|0xfb)==0xff);//等待外部...

大兴区15646761855: 单片机求助,用汇编语言写一个双位数码管0到99循环 -
揣莲潞党: 一个数码管显示0005~01秒,再换另一个显示,他俩轮流这么显示着(再多几个也可以),这种交替人眼看不出来的单片机求助,用汇编语言写一个双位数码管0到99循环

大兴区15646761855: 51单片机c语言设计,按键控制数码管,依次按下显示0到9循环 -
揣莲潞党: #include<reg51.h> sbit k1=P1^0; #define uint16 unsigned int #define uchar unsigned char uchar code shuzu[ ]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; void delay() { uint16 i=1000;while(i--); } void main() { uchar n ; P2=0xfe; P1=0xff; ...

大兴区15646761855: 急!!!求单只数码管循环显示0~9的代码解释,数码管是共阳极的.万分感谢!!! -
揣莲潞党: #include//单片机寄存器相关的文件 #include//具有空指令的文件 #define uchar unsigned char//宏定义 以后用uchar替代unsigned char #define uint unsigned int //宏定义作用同上 uchar code DSY_CODE[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,...

大兴区15646761855: 用汇编语言编写一个两个数码管为一组交替点亮一个数 -
揣莲潞党: 两个数码管交替显示一个数,是很简单的,以下例程,数码管分别为P0,P1口共阴极.交替显示0~9. ORG 0000HJMP BEGINORG 0030H TABLE: ; 共阴极数码管显示代码表DB 3FH,06H,5BH,4FH,66H ;01234DB 6DH,7DH,07H,7FH,6fh ;...

大兴区15646761855: PLC控制数码管,显示0到9,求梯形图或功能表 -
揣莲潞党: 数码管每一段相当于二极管,连接PLC输出点,要显示数字几,就将对应段点亮,几输入端有输入

大兴区15646761855: 求用51单片机接两个数码管,0 - 99动态显示程序(用C语言) -
揣莲潞党: #include #define uchar unsigned char #define uint unsigned int uchar DSY_CODE[]= { 0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f }; void delay(uint x) { uchar i; while(x--)for(i=0;i<120;i++); } void main() { uchar i; P0 = 0x00; P2 = 0x00; while(1)...

大兴区15646761855: 单片机共阳数码管显示0到99程序问题,PS:led1和led2都是位选 P0=table[num%10]; led1=0;这句作用? delay(); led1=1;这句作用?与led1的联系? P0=table[num/10]; led2=0; delay(); -
揣莲潞党: P0=table[num%10]; //LED1要显示的数据 led1=0; //点亮LED1 delay(); //延时,让LED1亮一会,不然看不清LED1的显示 led1=1; //熄灭LED1,必须灭掉,不然影响LED2的显示 P0=table[num/10]; //LED2要显示数据 led2=0; //点亮LED2 delay(); //延时,让LED2亮一会

大兴区15646761855: 汇编语言 数码管显示0 - 9.每个数字闪烁三次,再显示下一个数字,如此循环.求程序,, -
揣莲潞党: ORG 0000H LJMP MAIN ORG 0030H MAIN:MOV R0,#0 MOV R1,#3LOOP:MOV DPTR,#TABLE MOV A,R0 MOVC A,@A+DPTR MOV P1,A LCALL DELAY MOV P1,#00H LCALL DELAY DJNZ R1,LOOP INC R0 MOV R1,#3 ...

大兴区15646761855: 51单片机汇编语言1位数码管显示0,1,2,……到9再从9,8,7……到0,反复显示. -
揣莲潞党: 反复循环是一个作法,0到9循环结束后再做9到0的循环,0到9时用INC加法,9到0用DEC减法就行了,分开做两个循环,先加后减,两个循环结束,再回到0到9实现大循环就好了.很容易的呀,既然会0到9的循环,自己都能做出来,那其它的也能做出来吗,自己独立完成是最好的煅炼了,不能什么事都靠别人,那样是不会提高进步的.

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网