如何用C语言实现数码管显示数字12345和HELLO
发布网友
发布时间:2022-04-28 21:11
我来回答
共3个回答
热心网友
时间:2022-06-23 05:28
看一下我编的123456 的显示,是共阴极数码管接P1口 ,用了两个74HC573锁存器段选位选,HELLO的编码表 你自己编一下,然后定义一个数组就可以了。我也刚学 ,加油!
#include<reg52.h>
#define uint unsigned int
#define uchar unsigned char
sbit la=P2^6;
sbit wela=P2^7;
uchar code table[]={
0x3f,0x06,0x5b,0x4f,
0x66,0x6d,0x7d,0x07,
0x7f,0x6f,0x77,0x7c,
0x39,0x5e,0x79,0x71};
uchar code tablewe[]={
0xfe,0xfd,0xfb,
0xf7,0xef,0xdf};
delay(uchar);
uchar a;
void main()
{
while(1)
{
for(a=6;a>0;a--)
{
wela=1;
P0=tablewe[6-a];
wela=0;
la=1;
P0=table[a];
la=0;
delay(1);
P0=0xff;
}
}
}
delay(uchar xms)
{
uint i,j;
for(i=xms;i>0;i--)
for(j=110;j>0;j--);
}
热心网友
时间:2022-06-23 05:28
#include<stdio.h>
int main()
{
printf("12345\n");
printf("HELLO\n");
system("pause");
return 0;
}
热心网友
时间:2022-06-23 05:28
不用汇编好多年。。。。。。
如何用C语言实现数码管显示数字12345和HELLO
看一下我编的123456 的显示,是共阴极数码管接P1口 ,用了两个74HC573锁存器段选位选,HELLO的编码表 你自己编一下,然后定义一个数组就可以了。我也刚学 ,加油!include<reg52.h> define uint unsigned int define uchar unsigned char sbit dula=P2^6;sbit wela=P2^7;uchar code tabledu[]...
51单片机控制数码管显示hello和动态显示123456
端口接动态数码管原理。P0端口接动态数码管的字形码笔段,P2端口接动态数码管的数位选择端,P1.7接一个开关,当开关接高电平时,显示“12345”字样;当开关接低电平时,显示“HELLO”字样。
单片机数码管动态显示6个数码管显示012345问题
sbit wela=P2^7; // 申明U2锁存器的锁存端 uchar code table[]={ //共阴极数码管编码 0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};uchar code wei[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf}; //位选数据,6位数码管的位选...
50分!!解释一下共阴极动态数码管显示12345,hello的程序理解问题_百度...
共阴管是输出高电平才亮,没有CJNZ的命令,是cjne,不相等转移,CJNZ R1,#10H没有跳转地址,R1是给P2口的,P2口接的是K也就是阴极,当然是给FE啦 也就是说,共阴端接的是P2不是地
如何用汇编语言实现按钮控制led灯,第一个键按下是数码管上的数字1...
ORG 0030H TABLE: ; 共阴极数码管显示代码表 DB 3FH,06H,5BH,4FH,66H ;12345 DB 6DH,7DH,07H,7FH ;6789 DELAY: MOV R5,#20 LOOP4: MOV R6,#50H ;延时20X20ms LOOP5: MOV R7,#100 DJNZ R7,DJNZ R6,LOOP5 DJNZ R5,LOOP4 RET ;--- BEGIN: ...
51单片机数码管动态显示12345,我为了让它扫描更快,去掉了延时,结果没...
一方面动态扫描显示7段LED是利用人眼的视觉暂留原理来实现的,如果你不延时,那么暂留也就留不住了,所以要让人眼捕捉到显示的LED,必须有足够的延时时间,另一方面要保证LED显示的亮度,也必须有足够的时间让LED将电压建立起来,毕竟,从0到1实际上不是瞬时达到的,有一个渐变过程。
AT89S51 8位单片机 如何处理16位二进制数
用C语言写啊 C语言的INT型就是16位的,不用转换 unsigned int a=12345;for(i=0;i<5;i++){ //先从个位开始显示 display(i,a%10);//假设在第i位显示一个数的函数是display(i,什么);a/=10;}
C语言关于取余%的一些疑问,带小数可以取余吗?
在C语言中,取余操作%仅支持两个整型进行计算。所以不会存在12345.6 % 10的,编译器会报错的。那为什么按照这样的算法可以显示6位数字呢?是因为在C语言中,整型间的 /,表示的是求商运算,而不是实数的除法,也就是说,在C语言中,3 / 2 = 1 而不是1.5。所以123456 / 10 = 12345而不是...