protues数码管数字0~9循环显示
关于使用 protues 进行仿真数码管数字显示
本次试验主要是为了实现数码管从“0~9” 的循环显示, 此次应特别注意区分数码管的共阴极连法和共阳极连法, 虽然说这个很简单, 大家都知道, 但我还是要承认, 一开始做的时候, 却不知道到底怎要么用, 也算是走了不少弯路, 特此将自己的经验写下来, 希望对大家有帮助。
数码管的引脚图如下所示:
关于这个连接方法的详细介绍网上有很多, 我就不多说了, 这里就说说关于这个连接的一些须知常识吧,共阴极接法, 说白了, 就是将阴极连接在一起, 然后接地, 那么这边的电压为 0, 为了让数码管亮起来, 那么就需要在“a,b,c,d,e,f,g,dp” 端接高电平。 不过因为单片机输出的电压实在太低, 达不到点亮数码管的标准, 所以一般要接上拉电阻, 以提高电压。同理, 共阳极接法就是讲所有阳极接在一起, 然后接高电平, 为了让数码管亮起来, 需要在“a,b,c,d,e,f,g,dp” 接低电平。
共阴极
源代码:
#define uchar unsigned char
#define uint unsigned int
#include<reg52.h>
#define temp P0
uchar Tab[]={0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x3f};
void delay()
{
uint x,y;
for(x=100;x>0;x--)
{
for(y=2500;y>0;y--)
{}
}
}
void main()
{
uint i;
temp=1;
while(1)
{
for(i=0;i<10;i++)
{
temp=Tab[i];
delay();
}
}
}
连接图:
所用组件名称:
单片机(AT89C52); 排阻(RESPACK-8); 数码管(7SEG-COM-CAT-GRN);
效果图:
共阳极
源代码:
#define uchar unsigned char
#define uint unsigned int
#include<reg52.h>
#define temp P0
uchar Tab[]={0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xc0};
void delay()
{
uint x,y;
for(x=100;x>0;x--)
{
for(y=2500;y>0;y--)
{}
}
}
void main()
{
uint i;
temp=1;
while(1)
{
for(i=0;i<10;i++)
{
temp=Tab[i];
delay();
}
}
}
连接图:
所用组件名称:
单片机(AT89C52) 数码管(7SEG-COM-AN-GRN)
效果图:
同类文章排行
- LED数码管的检测
- LED数码管故障检测检修
- LED数显温度控制器设计论述
- LED大屏幕数显装置在随流孕育装置上的应用
- LED数码管正装与倒装结构区别
- led数码管静态显示方式和动态显示方式
- LED七段数码管数字钟
- led数码管显示种类简介
- LED数码管显示器介绍
- LED数码管动态扫描显示控制器设计