标题: 单片机二位数码管显示程序问题 [打印本页]

作者: 干活哼哼唧唧    时间: 2022-5-16 14:03
标题: 单片机二位数码管显示程序问题
想让数码管显示特定数字,有信号但是一直没办法显示出来,大神帮忙看看是为什么

单片机程序如下:
#include <reg51.h>
unsigned char duanma[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F,0x77,0x7C,0x39,0x5E,0x79,0x71};
unsigned int shuzi;
sbit yi=P1^1;
sbit er=P1^0;
void delay();
void main()
{   
        shuzi=16;
        while(1)
                {  
                        P2=0x00;//很重要,否则数码管很可能无法正常显示
                        yi=0;
                        er=1;
                        P2=duanma[shuzi%10];
                        delay();
                        
                        yi=1;
                        er=0;
                        P2=duanma[shuzi/10];
                        delay();
                }
   
}


void delay()
{
        unsigned int i,j;
for(i=0;i<100;i++);
        for(j=0;j<10;j++);

}

IMG_20220516_134711.jpg (1.21 MB, 下载次数: 21)

IMG_20220516_134711.jpg

作者: 干活哼哼唧唧    时间: 2022-5-16 14:27
是因为电阻太大了嘛
作者: 留住这一刻2014    时间: 2022-5-16 18:18
10K电阻,牛!
作者: yaoyao2022    时间: 2022-5-16 23:21
复位电阻太大了
作者: yaoyao2022    时间: 2022-5-16 23:22
c3好像放反了
作者: lkc8210    时间: 2022-5-17 09:47
这代码是共阴的,你選的数码管是共阴的吗?
作者: yzwzfyz    时间: 2022-5-17 10:04
先查一下手册,点亮LED需要多少电流。




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1