51单片机——数码管静态显示
Posted 马己
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了51单片机——数码管静态显示相关的知识,希望对你有一定的参考价值。
51单片机——数码管静态显示
1、由原理图找到对应控制端口
这次是想要在数码管上显示出数值。同样的,先在开发板原理图中找到数码管对应的控制端口
发现要让数码管起作用的话,LEDS0要为低电平,则在74LS138译码器中,输入A2A1A0的值分别为000。而P0口可以控制数码管的显示。
2、程序部分
需要用到的对应控制端口找完,开始写程序。先写个简单一点数码管静态显示。
程序如下:
#include <reg52.h>
sbit ADDR0=P1^0;
sbit ADDR1=P1^1;
sbit ADDR2=P1^2;
sbit ADDR3=P1^3;
sbit ENLED=P1^4;
void delay(unsigned char x);
unsigned char code duan[]=
0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90; //²é±í·¨
void main()
unsigned char i;
ADDR0=0; //按原理图端口初始化
ADDR1=0;
ADDR2=0;
ADDR3=1;
ENLED=0;
while(1)
for(i=0;i<9;i++)
P0=duan[i];
delay(250);
void delay(unsigned char x)
unsigned char n;
while(--x)
for(n=0;n<250;n++);
开发板显示如下:
以上是关于51单片机——数码管静态显示的主要内容,如果未能解决你的问题,请参考以下文章
51单片机定时器计时1秒数码管静态循环显示0到F+Proteus仿真
基于51单片机+74LS138译码器+8位共阴数码管时钟设计—按键修改时间