云龙数码行业报告

四位数码管动态实验报告,四位数码管的动态显示

大家好,今天小编关注到一个比较有意思的话题,就是关于四位数码管动态实验报告问题,于是小编就整理了2个相关介绍四位数码管动态实验报告的解答,让我们一起看看吧。

  1. 怎样用keil编写4位数码管显示1234的程序?
  2. 四位数码管的引脚功能?

怎样用keil编写4位数码管显示1234的程序

//头文件:
#include 'reg51.h'

//变量定义:
unsigned char table[]=
{0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
//表:共阳数码管 0-9
//引脚定义:
***it SMG_q = P1^0; //定义数码管阳级控制脚(千位)
***it SMG_b = P1^1; //定义数码管阳级控制脚(百位)
***it SMG_s = P1^2; //定义数码管阳级控制脚(十位)
***it SMG_g = P1^3; //定义数码管阳级控制脚(个位)

四位数码管动态实验报告,四位数码管的动态显示
图片来源网络,侵删)

//函数声明:
void delay(void); //延时子函时

//主函数,C语言的入口函数:
void main(void)
{
unsigned char i=0; //作为查表的索引号
while(1) //不停的循环扫描,不扫描则不显示或显示不正确,即为动态显示,
{ //数码管显示 1234,可自行修改
SMG_q=0; //选择千位数码管
P0=table[1]; //查找'1'定义好的数码管段值与P0口输出,显示相应的1
delay(); //加入短暂延时
P0=0XFF; //清除数码管显示,因是共阳型,所以不是0
SMG_q=1; //关闭千位数码管

SMG_b=0; //选择百位数码管
P0=table[2]; //查找'2'定义好的数码管段值与P0口输出,显示相应的2
delay(); //加入短暂延时
P0=0XFF; //清除数码管显示,因是共阳型,所以不是0
SMG_b=1; //关闭百位数码管

SMG_s=0; //选择十位数码管
P0=table[3]; //查找'2'定义好的数码管段值与P0口输出,显示相应的2
delay(); //加入短暂延时
P0=0XFF; //清除数码管显示,因是共阳型,所以不是0
SMG_s=1; //关闭十位数码管

四位数码管动态实验报告,四位数码管的动态显示
(图片来源网络,侵删)

SMG_g=0; //选择个位数码管
P0=table[4]; //查找'2'定义好的数码管段值与P0口输出,显示相应的2
delay(); //加入短暂延时
P0=0XFF; //清除数码管显示,因是共阳型,所以不是0
SMG_g=1; //关闭个位数码管
}
}

//延时子函数,短暂延时void delay(void){ unsigned char i=10; while(i--);}

四位数码管的引脚功能

四位数码管是一种半导体发光器件,其基本单元是发光二极管,能显示4个数码管叫四位数码管。CEM5461AE是八段共阴式数码管(含有小数点)。

四位数码管动态实验报告,四位数码管的动态显示
(图片来源网络,侵删)

4位一体数码管,其内部段已连接好,引脚如下所示(正面朝自己,小数点在下方)。上面的六位是:w1,a,f,w2,w3,b; 下面的六位是:e,d,dp,c,g,w4; 其中a、b、c、d、e、f、g、dP为段引脚,w1、w2、w3、w4分别表示四个数码管的位。

到此,以上就是小编对于四位数码管动态实验报告的问题就介绍到这了,希望介绍关于四位数码管动态实验报告的2点解答对大家有用。

[免责声明]本文来源于网络,不代表本站立场,如转载内容涉及版权等问题,请联系邮箱:83115484@qq.com,我们会予以删除相关文章,保证您的权利。 转载请注明出处:http://www.nickplaister.com/post/22382.html

分享:
扫描分享到社交APP