单片机C51编程(C语言):实现学号的显示(学号是10位数字)
发布网友
发布时间:2022-06-01 15:45
我来回答
共5个回答
热心网友
时间:2023-10-05 07:06
你用什么驱动数码管呢?
不同的驱动,程序写法不同。
如果直接用I/O口驱动,8位数码管就这样写:
wei=位选
an=段选
//断码表
uchar
code
shuzi[12]={0xc0,0xf9,0xa4,0xb0,0x99,//0,1,2,3,4,
0x92,0x82,0xf8,0x80,0x90,//5,6,7,8,9,
0x00,0xff};
void
led_scan(void)
{
uchar
i,j;//共阳数码管
wei=0xff;
j=0x01;
for(i=0;i<8;i++)
{
an=shuzi[i];
wei=!j;
delay(200);
j<<=1
;
}
wei=0xff;
}
热心网友
时间:2023-10-05 07:06
你用什么驱动数码管呢?
不同的驱动,程序写法不同。
如果直接用I/O口驱动,8位数码管就这样写:
wei=位选
an=段选
//断码表
uchar code shuzi[12]={0xc0,0xf9,0xa4,0xb0,0x99,//0,1,2,3,4,
0x92,0x82,0xf8,0x80,0x90,//5,6,7,8,9,
0x00,0xff};
void led_scan(void)
{
uchar i,j;//共阳数码管
wei=0xff;
j=0x01;
for(i=0;i<8;i++)
{
an=shuzi[i];
wei=!j;
delay(200);
j<<=1 ;
}
wei=0xff;
}
热心网友
时间:2023-10-05 07:07
你要在什么上面显示?是数码管还是LCD?数码管需要查表把数字转换为显示的代码。LCD则需要数字的ASCII码。
热心网友
时间:2023-10-05 07:07
要是显示9位,还不如直接用LCD1602显示好了,接口都少用一些,而且也就十快钱左右吧。
热心网友
时间:2023-10-05 07:08
是啊~~ 用LCD 还是数码管
如果用数码管 还有用有十位的~
单片机C51编程(C语言):实现学号的显示(学号是10位数字)
如果直接用I/O口驱动,8位数码管就这样写:wei=位选 duan=段选 //断码表 uchar code shuzi[12]={0xc0,0xf9,0xa4,0xb0,0x99,//0,1,2,3,4,0x92,0x82,0xf8,0x80,0x90,//5,6,7,8,9,0x00,0xff};void led_scan(void){ uchar i,j;//共阳数码管 wei=0xff;j=0x01;for(i=...
单片机C51编程(C语言):用数码管实现学号的显示,直接显示。学号从7041931...
这里就用后8个数字吧,刚好使用一个I/O口 假设数目管共阴,用P0口控制7个段,用P1口控制8个位。//这里我只给出重点,简单的初始化操作你自己也可以写 unsigned char led7_seg[10] = {写入0到9对应7段码值};unsigned char led_dis[8] = {0,4,1,9,3,1};unsigned char led_end=1,po...
在c51单片机的显示管上显示四个数字的c语言程序怎么写
void display(shiwan_c,wan_c,qian_c,bai_c,shi_c,ge_c)//6位显示子程序 { P0=table[shiwan_c]; //显示十万位 dula=1;dula=0;P0=0xfe;wela=1;wela=0;delay(2);P0=table[wan_c]; //显示万位 dula=1;dula=0;P0=0xfd;wela=1;wela=0;delay(2);P0=table[qian_c]; //...
单片机C51编程(C语言):1到100的求和显示,在数码管里显示出来.
void convert();void display();void delay();//共阴:0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F code unsigned char Led[16]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F,0x77,0x7C,0x39,0x5E,0x79,0x71};uchar num,sw,gw;void main(){ num=0;while(1){ co...
51单片机 让数码管自动显示0至9的C程序。有没有比这个更简单的???
数组定义简单,而且访问很方便。所有元素类型相同,在数码管显示程序中可以让程序代码减少。数组代码如下:chara[10]={0xff,0x3,0x9f,0x25,0xd,0x99,0x49,0x41,0x1f,0x1,0x9};三、设置数码管显示循环 数码管显示循环可以不用编写一次又一次的数码管显示代码,既方便又简洁。具体代码...
求一个c51的单片机c语言小程序,有酬谢。
TI=0;//清 串口发送溢出位 UART_SendFlag=FALSE;//清串口发送标志位(空闲中)} } void UART_Init()//串口初始化函数 { SCON=0x50;//选择通讯方式:10位异步收发,串口中断使能 PCON=0x80;//波特率倍频 TMOD &=0x0F;TMOD |=0x20;//定时器1工作模式2(8位自重装,做波特率发生器)TH1=th1;/...
跪求单片机c51一个多功能时钟设计。要闹钟。调整时间、秒表、就行了...
P0=dispcode[second10];//显示秒的十位 delay(1); P2=0xfd; P0=dispcode[second1]; //显示秒的个位 delay(1); P2=0xfb; P0=dispcode[10]; //显示"-" delay(1); P2=0xf7; P0=dispcode[minute10];//显示分的十位 delay(1); P2=0xef; P0=dispcode[minute1]; //显示分的个位 delay(1)...
C51单片机,C语言编程四位共阳极数码管静态显示1234 求程序和proteus仿真...
用51单片机组成四位共阳极数码管显示1234 ,proteus仿真图如下所示,P0口输出段码,P2口输出位码。
C51单片机如何让四位数码管分别显示四位不同的数字?
//显示第4位 k1 = k2 = k3 = k4 = 1;//关闭所有未选 k4 = 0;//打开第4位位选 P2 = table( temp%10 );//假设P2口控制数码管 temp = temp / 10;//temp = 123 delay( 5 );//显示第3位 k1 = k2 = k3 = k4 = 1;//关闭所有未选 k3 = 0;//打开第3位位选 P2 ...
单片机汇编语言,用的芯片是c51,编程实现9-0的倒计时,插线最好也说一下...
void t0isr() interrupt 1 { TH0=(65536-50000)/256;TL0=(65536-50000)%256;cnt++;if(cnt>=20){ cnt=0;dat--;P1=tab[dat];if(dat==0)dat=9;} } main(){ TMOD=0x01;TH0=(65536-50000)/256;TL0=(65536-50000)%256;TR0=1;ET0=1;EA=1;P1=tab[dat];while(1);} ...