标题:
单片机用38译码器驱动数码管的Proteus仿真电路图和程序
[打印本页]
作者:
heicc
时间:
2016-5-29 17:09
标题:
单片机用38译码器驱动数码管的Proteus仿真电路图和程序
给大家介绍51单片机连接38译码器驱动8位数码管的Proteus仿真电路图和程序
仿真原理图:
0.png
(20.79 KB, 下载次数: 148)
下载附件
2016-5-29 17:06 上传
0.png
(80.51 KB, 下载次数: 131)
下载附件
2016-5-29 17:05 上传
仿真文件及完整程序下载:
http://www.51hei.com/bbs/dpj-50777-1.html
单片机用38译码器驱动数码管的源程序如下:
#include <reg51.h>
#ifndef uchar
#define uchar unsigned char
#endif
uchar disNumber[11] = {0x3f, 0x30, 0X5b, 0x4f, 0x66, 0x6d, 0x7d, 0x07, 0xff, 0x6f}; //共阴数码管
uchar switc[9] = {0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07};
//控制哪个数码管亮
void delay2ms200us(void) //延时函数
{
unsigned char a,b;
for(b=169;b>0;b--)
for(a=5;a>0;a--);
}
void main(void)
{
uchar i, j = 0;
while(1)
{
P2 = switc[j];
P0 = disNumber[i];
i++;
j++;
if(i == 8) //注意 i值为8时,每个数码管有固定的显示数字,当i超过8时每个数码管没有固定的显示数字,数码管数字就会乱跳
i = 0;
if(j == 8)
j = 0;
delay2ms200us();
}
}
//小月子2016年5月21日编辑 如果您有什么不理解的地方请加小月子
//小月子是个电子发烧友,小月子电子网店卖的是电子电路类、编程类学习资料教学视频
//请关注我的网
复制代码
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1