延时后只显示一个数字8,肿么办?
追答不应该是是8,应该让数码管全不亮,在延时前,一定将位选数据写进数码管,让数码管全灭,显示8,应该是电平弄反了,
追问谢谢,那能来个程序不?C语言的,写个一般的,我的开发板单片机I/O口我自己改
追答我没有这个程序,你可以把你的程序贴出来,我帮你看看,或者你找一个现成的程序,我可以帮你看看,修改一下
追问恩,我从别的地方再看看,谢谢你
谢你哦
追答搜:
做而论道 595输出驱动数码管闪烁
百度一下,即可找到解决楼主问题的具体方法。
52单片机如何让数码管同时显示12345678并一起闪烁?
但是还是可以实现的,因为你已经成能让数码管动态的显示数字了,那么你就一段时间让数码管显示正常的数字,一段时间让数码管全灭(假设你的数码管是共阳极的话,简单点实现就是此时位选的值全是高电平),这样就能完成动态数码管的闪烁功能,但是这个时间还需要实际调试 ...
单片机AT89C52六位数码管前两位数码管要怎么同时显示0,2,4,6,8,并...
一、显示函数部分,void display(uchar shi,uchar ge),既然函数已经指定了变量名,调用此函数的时候就不可以再使用该函数定义的变量名 shi,ge,主循环中有错误 二、定时器1的中断部分,if(num==100); ,这一句判断根本没起作用,因为后面你加了个语句的结束符 ; 这就使此句语句直接结束了 三、...
51单片机两位数码管交替123456789
{ aa=0; \/\/打开第一个数码管 P0=table[a];delay(20);P0=0xff;aa=1;bb=0; \/\/打开第二个数码管 P0=table[b];delay(20);P0=0xff;bb=1;a++;b++;} a=1;b=2;c=0;} }
51单片机控制数码管显示不正常问题,为什么后面4位数码管1234和5678都...
先建立程序的一般结构,然后定义一个code数组,里边存放数码管显示0~9的数据,之后定义一个display显示函数,传递参数但不返回参数,然后将传递的参数(1234或5678)分解成4哥单个数,然后依次选择要显示的数码管和数据,紧接消影和简单暂时,这样一个数码管显示就完成了,之后三个跟这个一样。最后在主函数...
51单片机静态显示可以实现6位数码管123456的显示吗?
多位数码管无法实现静态显示,物理上它们就存在冲突。除非每一位显示的内容都相同……如果执着于用静态显示,可以用6个1位数码管,缺点是需要大量的管脚来控制(可以用串扩并方案或地址映射扩展方案,成本上得不偿失)。
51单片机共阴数码管利用静态显示,让六个数码管显示1~6,程序怎么写?
\/\/ 函数功能:数码管静态显示 \/\/ 入口参数:无 \/\/ 出口参数:无 \/* *** *\/ void main(void){ uchar i;we = 1;\/\/位选开 data = 0x00;\/\/送入位选数据 we = 0;\/\/位选关 while(1){ for(i = 0;i < 16 ; i++){ du = 1; \/\/段选开 data = leddata[i]; \/\/送...
如何让单片机不同数码管同时显示不同数
先让你的第一个数码管显示要显示的第一个数字,其他数码管关闭;然后关闭第一个数码管显示;然后让你的第二个数码管显示要显示的第二个数字,其他数码管关闭;然后关闭第二个数码管;然后让第三个数码管显示要显示的第三个数字,其他数码管关闭;然后关闭第三个数码管;………依次类推,到最后一个...
用51单片机C语言编写程序实现6位共阴极数码管循环显示0123456789ABCDEF...
\/\/数码管段选 \/* 8 9a b c def*\/code uchar wen[] = {0xfe,0xfd,0xfb,0xf7,0xef,0xdf};\/\/数码管位选uchar huancun[] = {0x00,0x00,0x00,0x00,0x00,0x00};\/\/数码管段选缓存sbit duan = P2^6;\/\/段选sbit wei = P2^7;\/\/位选void delay(uchar x)\/\/延时函数...
51单片机 四位数码管如何同时显示4位不同的数字?
有两种方式:一可以用类似595转转并芯片用静态显示法驱动数码管,二可以用动态扫描显示法显示数码管。
51单片机怎么用按键控制一个数码管,按一下显示一个数字,顺序显示
1、首先,要把代码写好,点亮数码管。2、代码写完后,要确认原先写好的代码是不是正确的。3、确认代码无误后,进入下一步,就是在这一行代码(箭头所指)的地方,将这四个字删去。4、然后如图所示,四个字已经删去,只要改成数字相应的代码即可。5、这里改成的是代表数字0的代码,如图所示。6、...