如何用C语言实现数码管显示数字12345和HELLO

是要在单片机C51上实现的。最好要有汇编程序。O(∩_∩)O谢谢

看一下我编的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[]={
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;

dula=1;
P0=tabledu[a];
dula=0;
delay(1);
P0=0xff;

}
}
}

delay(uchar xms)
{
uint i,j;
for(i=xms;i>0;i--)
for(j=110;j>0;j--);
}
温馨提示:内容为网友见解,仅供参考
第1个回答  2010-05-27
#include<stdio.h>
int main()
{
printf("12345\n");
printf("HELLO\n");
system("pause");
return 0;
}
第2个回答  2010-05-27
不用汇编好多年。。。。。。

如何用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[]...

单片机数码管动态显示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位数码管的位选...

51单片机控制数码管显示hello和动态显示123456
端口接动态数码管原理。P0端口接动态数码管的字形码笔段,P2端口接动态数码管的数位选择端,P1.7接一个开关,当开关接高电平时,显示“12345”字样;当开关接低电平时,显示“HELLO”字样。

如何用汇编语言实现按钮控制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: ...

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而不是...

相似回答