导航:首页 > 操作系统 > 单片机数字显示

单片机数字显示

发布时间:2022-05-08 15:44:43

❶ 怎样单独控制51单片机中数码管显示数字

设置一个延时,一个while(1)循环,循环内让每一个电子管依次打开位选,各自的断选,并且每个电子管显示延时1毫秒。
单片机,全称单片微型计算机(英语:Single-Chip Microcomputer),又称微控制器(Microcontroller),是把中央处理器、存储器、定时/计数器(Timer/Counter)、各种输入输出接口等都集成在一块集成电路芯片上的微型计算机。与应用在个人电脑中的通用型微处理器相比,它更强调自供应(不用外接硬件)和节约成本。它的最大优点是体积小,可放在仪表内部,但存储量小,输入输出接口简单,功能较低。由于其发展非常迅速,旧的单片机的定义已不能满足,所以在很多应用场合被称为范围更广的微控制器;由于单芯片微电脑常用于当控制器故又名single chip microcontroller,但是目前在中国大陆仍多沿用“单片机”的称呼。

❷ 如何用51单片机用一位数码管显示对应数字

首先你要把0到9的数字对应的七段码放在一个数组中,然后用一个变量计按键的次数或序号,把该序号的七段码输出到对应的端口即可。

❸ 如何让单片机四位数码管显示相同数字

摘要 每一次只能让一个数码管位选,其他的关闭,给数码管赋值。重复4次就可以了。

❹ 51单片机的共阴数码管怎么显示数字(c语言)

要让51单片机共阴数码管显示数字,只需要将单片机的P2端口输出数字对应的段码即可。

以显示数字“0”为例,c语言程序如下:

#include<reg52.h>

#define uchar unsigned char

#define uint unsigned int

//数码管的段码编码

Uchar table[10] ={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};

void main(){//主函数

P0 = table[0];//显示0,大家可以修改里面的数据。

while(1);//程序不再执行其他步骤;

}

(4)单片机数字显示扩展阅读:

数字0-9的对应段码:

数字0 0x3f

数字1 0x06

数字2 0x5b

数字3 0x4f

数字4 0x66

数字5 0x6d

数字6 0x7d

数字7 0x07

数字8 0x7f

数字9 0x6f

❺ 单片机编程,从0到9的数字在LED上显示

#include<reg51.h>
#define uchar unsigned char
uchar code ledtab[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff};//共阳级数码管码表0-9
uchar time,dat;
bit flag=1;
sbit la=; //段和位控制位需要你自己填写。
sbit wela=;
void t0isr() interrupt 1
{
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
time++;
if(time>=20)
{
dat++;
dat%=10;
flag=1;
}
}
main()
{
TMOD0x01;
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
TR0=1;
ET0=1;
EA=1;
while(1)
{
if(flag)
{
flag=0;
la=1;
P0=0xff;
la=0;
wela=1;
P0=0x01;
wela=0;
la=1;
P0=ledtab[dat];
la=0;
}
}
}

❻ 单片机两位数码管显示数字

#include<reg51.h>

#define uchar unsigned char;

uchar distab[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71,0x00}; //0到f

uchar number,dat=29;

void t0isr() interrupt 1

case 0:P2=0x02;P0=distab[dat/10];

break;

case 1:P2=0x01;P0=distab[dat%10];

TMOD=0x01;

TH0=(65536-5000)/256;

TL0=(65536-5000)%256;

TR0=1;

ET0=1;

EA=1;

while(1);

}

分类

数码管也称LED数码管,不同行业人士对数码管的称呼不一样,其实都是同样的产品。按发光二极管单元连接方式可分为共阳极数码管和共阴极数码管。共阳数码管是指将所有发光二极管的阳极接到一起形成公共阳极(COM)的数码管,共阳数码管在应用时应将公共极COM接到+5V,当某一字段发光二极管的阴极为低电平时,相应字段就点亮,当某一字段的阴极为高电平时,相应字段就不亮。

以上内容参考:网络-数码管

❼ 单片机数码管如何显示数字

从电路图来看,是需要数码管共阳极的,哪一位的三极管导通,则该位的数码管就有被点亮的机会。

那么七段码数据,低电平的位对应该笔画的LED亮。

大致代码:

P2=0xff;

P0=s_code[1]; //0xF9

P2=0xfe;// P2.0=0

delay_ms();

P2=0xff;

P0=s_code[2]; //0xA4

P2=0xfd;// P2.1=0

delay_ms();

P2=0xff;

P0=s_code[3]; //0xB0

P2=0xfb;// P2.2=0

delay_ms();

P2=0xff;

P0=s_code[4]; //0x99

P2=0xf7;// P2.3=0

delay_ms();

❽ 单片机数字显示

实际上,是一个秒表。
在 P0 口,外接一个共阳数码管,执行下列程序,即可。

ORG 0000H
MAIN:
MOV DPTR, #TAB
MOV TMOD, #01H
SETB TR0
LOP0:
MOV R3, #10
LOP1:
MOV A, R3
MOVC A, @A + DPTR
MOV P0, A
MOV R4, #20
LOP2:
MOV TH0, #3CH
MOV TL0, #0B0H
JNB TF0, $
CLR TF0
DJNZ R4, LOP2
DJNZ R3, LOP1
SJMP LOP0
TAB:;共阳极
DB 00H, 90H, 80H,0F8H, 82H, 92H
DB 99H, 0B0H,0A4H,0F9H,0C0H
END

❾ 用c语言单片机led灯显示数字“28”,如何编程

摘要 给LED编个数组,控制IO口,或者直接控制IO口,不过要看显示的28要多大,会占用比较多的IO口,道理和矩阵键盘差不多。

❿ 单片机试验数码管上如何显示数字

解决方法:
试验数码管上显示数字( 单片机直接实现位选 共阴极) 。
解决方式:
连接方法:P0与J12 用8PIN排线连接 P1与JP16 用排线连接 。
代码:

#include<reg52.h>
#define uint unsigned int
#define uchar unsigned char
void delay(uint z)
{
uint x,y;
for(x=z;x>0;x--)
{
for(y=0;y<113;y++)
{
}
}
}
unsigned int code dbit[8]={0xfe,0xfd,0xfb,0xf7,0xef,0xdF,0xbF,0x7F};
unsigned int code num[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x40};
void main()
{
while(1)
{
P1=dbit[4];
P0=num[9];
}
}

位定义
#include<reg52.h>
#include<intrins.h>
#define uint unsigned int
#define uchar unsigned char
sbit LSA=P2^2;
sbit LSB=P2^3;
sbit LSC=P2^4;
uchar code num[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
void delay(uint z)
{
uint x,y;
for(x=z;x>0;x--)
{
for(y=0;y<113;y++)
{
}
}
}
void main()
{
while(1)
{
LSA=0;
LSB=0;
LSC=0;
P0=num[6];
delay(2);
LSA=1;
LSB=0;
LSC=0;
P0=num[6];
delay(2);
}
}

//让八个数码管全部亮并且从0~9循环
#include<reg52.h>
#include<intrins.h>
#define uint unsigned int
#define uchar unsigned char
uchar num;
uchar wnum=0x00;
uchar code dbit[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};//段选,选择要显示的数字
//uchar code wnum[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdF,0xbF,0x7F};//八位数码管
void delay(uint z)
{
uint x,y;
for(x=z;x>0;x--)
{
for(y=0;y<113;y++)
{
}
}
}
void main()
{
P1=wnum;
while(1)
{
for(num=0;num<10;num++)
{
P0=dbit[num];
delay(500);
}
}
}

阅读全文

与单片机数字显示相关的资料

热点内容
javascript权威编程指南 浏览:334
pdf机长 浏览:378
五十音图pdf 浏览:865
什么叫下架服务器 浏览:111
pdf分辨率查看 浏览:15
如何将word转pdf 浏览:186
我的世界ec服务器怎么调配置 浏览:259
单片机换标 浏览:595
语音系统和方舟编译器哪个好 浏览:316
html用什么编译器显示 浏览:185
程序员打印系统 浏览:73
安装系统端口和服务器地址怎么看 浏览:263
编译指针 浏览:410
用于解压房款的担保协议 浏览:674
程序员补班 浏览:566
组件编译语言 浏览:817
c文件夹怎么复制 浏览:968
linux统计ip流量 浏览:999
905减407的竖式算法 浏览:648
我的世界网易版如何查看服务器种子 浏览:633