问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501
你好,欢迎来到懂视!登录注册
当前位置: 首页 - 正文

如何在10位LED数码管显示自己的学号

发布网友 发布时间:2022-05-01 22:43

我来回答

1个回答

热心网友 时间:2022-06-24 12:28

#include <reg51.h>
unsigned char num,num2=0;//num用于计数,刷新数码管,num2用于选择要显示的数字
unsigned char code display[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F};//数码
unsigned char com[]={0x01,0x02,0x04,0x08};//位选地址

void main()
{
TMOD=0x01;//设置定时器0工作方式1
TH0 = (65536-917)/256;//1ms延时初值计算
TL0 = (65536-917)%256;;
EA=1;//开总中断
ET0=1;//定时器0中断
TR0=1;//开始计时
while(1){
if(num==10){ //定时器中断10次,也就是10ms
num=0; //清零
P1=~com[num2];//送入位选信号
P2=0xff;//消影
P2=display[num2];//送入段选信号
num2++; //num2=0~3,四个数码管轮流显示。
if(num2>=4)
num2=0;
}
}
}

void Timer0() interrupt 1 //定时器中断
{
TH0 = (65536-917)/256;//重新赋值
TL0 = (65536-917)%256;;
num++;//
}

然后就是一个使用点的例子,实现59s的计时,电路图和上边是一样的,直接上代码:
#include <reg51.h>
unsigned char code display[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F};
unsigned char com[]={0x01,0x02,0x04,0x08};

unsigned char num,num2=0,time[4];
unsigned int num3;

void main()
{
TMOD=0x01;
TH0 = (65536-917)/256;
TL0 = (65536-917)%256;;
EA=1;
ET0=1;
TR0=1;
time[0]=0;
time[1]=0;
time[2]=0;
time[3]=0;
while(1){
if(num==10){
num=0;
P1=~com[num2];
P2=0xff;
P2=display[time[num2]];
num2++;
if(num2>=4)
num2=0;
}

if(num3==1000)//计数1000次,计时1s
{
time[3]++;//更新第四位
if(time[3]>=10)
{
time[3]=0;
time[2]++;//更新第三位
if(time[2]>=6)
time[2]=0;
}
num3=0;
}
}
}

void Timer0() interrupt 1
{
TH0 = (65536-917)/256;
TL0 = (65536-917)%256;;
num++;
num3++;
}

使用上述代码,就可以实现了
单片机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...

假设数目管共阴,用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,position,time;void led_display();void main(...

单片机数码管静态显示学号1830508,用keil 最好有过程,在图上的过程上...

define uchar unsigned char // 此表为 LED 的字模 0 1 2 3 4 5 6 7 8 9 a b c d e f unsigned char code LED7Code[] = {0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F,0x77,0x7C,0x39,0x5E,0x79,0x71};void delay(uchar z){ uchar i,j;for(i=0;i&lt;120...

数码管 先显示学号再通过按键显示年月日

也可以使用外接一个按键,来进行功能选择,不过感觉轮换显示的方式就行了,很实用。

一、数码管显示 1、六位数码管自己的姓名和学号(姓名为开头的英文字母...

1、六位数码管自己的姓名和学号(姓名为开头的英文字母) 2、效果为滚屏显示 这个简单,就是数码管的动态显示:把姓名和学号的数码管编码放在数组a[ ]中,用数组b[6]表示段选编码 第一次显示:数组b[6]选数组a[0]到a[5];第二次显示:数组b[6]选数组a[1]到a[6];……以此类推 中间加个...

用c语言编程,用数码管同时显示1-6或自己的学号后六位这6个数字,并让显...

sbit wela=P2^7;uchar num;uchar code table[]={ 0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};void delay(uint z);void main(){ wela=1;//11101010 P0=0xea;wela=0;while(1){ for(num=0;num&lt;16;num++){ dula=1;P0=table[num...

Proteus仿真,动态显示时数码管一闪一闪的,不稳定。

本人单片机新手,求大神指教。我在做显示学号(学号:201015020137),利用的是数码管动态显示,但是仿真时数码管一闪一闪的。程序如下:(没贴完整程序,因为贴不下。) #include &lt;at89x51.h&gt; #define led11 P3_0 #define led12 P3_1 #define led13 P3_2 #... 展开 qq...

显示译码器显示4位学号

如果您需要使用显示译码器来显示4位学号,可以采用以下步骤:1、选择符合需求的显示译码器:根据您的具体需求和硬件条件,选择支持4位数字显示的显示译码器。常见的显示译码器有BCD译码器、数码管译码器等。2、连接显示译码器:将显示译码器与控制芯片或其他驱动电路连接,以便通过输入信号控制译码器的工作...

单片机开发板STC89C52..想要在四个数码管显示自己的学号

我先虚拟你所使用的数码显示位最高4位 且单片机位数是8位 AHH=10 AH=90 AL=62 ALL=31 首先注意表格制作 0-9 对应的数据 不显示的数据为00H应该 那么放在 0A位上 0--1 -- 2 -- 3---4---5---6---7--8---9---A...L---H---P---E---F 0AFH,06H,...00H...

51单片机,8位共阴极数码管动态显示12位学号,按键调整走动速度,C语言的...

10, 10, 10, 10, 10, 10, 10, 10,1, 3, 9, 2, 5, 8, 0, 7, 4, 6, 3, 2,10, 10, 10, 10, 10, 10, 10, 10};unsigned char j = 0, k = 1;void DelayMS(unsigned int x){ unsigned char i;while(x--) for(i = 200; i &gt; 0; i--);} void display(...

声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。
E-MAIL:11247931@qq.com
苹果ID可以借给别人吗? 苹果ID密码可以随便给别人吗 ...电工证(含上岗证)、中级车工证、中级钳工证能加分吗? 三国志战略版刘备需要觉醒吗 北京化工大学北方学院怎么样?女生学哪个专业比较好? 北京化工北方学院法学专业怎么样啊 北京化工大学里面有啊些专业适合就业的? 北京化工大学本科毕业去那里好吗? wps表格里的照片模糊不清晰,怎么办 如何调高WPS图片的像素? 如何在数码管上显示十进制的数据 写一个程序让单片机的数码管显示10?谢谢 三菱plc要在七段数码管显示10应该怎么写程序? 怎么用单片机数码管显示十进制??? 七段数码管显示10个数字 再加一只数码管,该怎么加,只有双数码管才能显示数字10,急求 asp.net 数据访问层 油炸莲藕怎么做 居延汉简的发现地简介 流沙坠简的人类首次全面解读居延汉简 求有关考古学的名词解释 期末来了 “居延汉简”中存在的标注记号的含义是什么? 居延汉简的分类方法 居延汉简的相关事件 “居延汉简”“居延新简”都在什么地方出土的? 居延汉简是怎样的? 居延汉简有什么价值? 小风相遇记,表白风光580,他给我的体验很好! 入了 TENGA的AIR-TECH,送的润滑油用光了,应该买什么润滑液搭配呢?没有润滑油能用吗? 居延汉简内容是什么? 如何将二进制在数码管上以十进制显示,不用单片机 我想用1个按键控制2个数码管显示10,15,20的程序! 关于数码管的dispbuf[8]={10,10,10,10,10,0,0,0}前五个数码管初值都是10问题,注意我总共用了八个数码管。 verilog语言 数码管显示十进制数 单片机,数码管显示,如何让个位进制十位,也就是说按加健,数码管的个位加到9,下一位就进制到十位。 数码管动态显示问题! 海尔热水器es60h h3排污口是用什么遮盖的 FPGA四位七段数码管显示十进制数字 怎样用单片机产生0~9,并且送到10个数码管显示?并且10个数码管的数字显示不同? 我做梦没到我妈妈说他最大的心愿是一样我赶快嫁人,此梦何解? 海尔热水器ES60H-q1排污口在哪里啊? 梦见我妈要嫁人,且我爸还在世,说是快不行了,如果不改嫁我就娶不到老婆,急醒了,这预示着什么?急! 香港恒生指数期货开户门槛是多少(恒指期货 歼20战斗机,作战能力有多强?看完自豪 歼20对地攻击武器到底有多厉害:中国空军凶狠一招令 中国的J20和美国俄罗斯的比怎么样?谁更厉害? 名侦探柯南里鲁邦三世与怪盗基德谁更胜一筹呢? 猩红邦尼讲的是什么? 香港传媒大学排名 歼20雷达性能有多强
  • 焦点

最新推荐

猜你喜欢

热门推荐