历史上的今天
今天是:2025年01月05日(星期日)
2018年01月05日 | 51单片机IO口直接驱动LED数码管方法
2018-01-05 来源:eefocus
1.实验任务
如图13所示,利用AT89S51单片机的P0端口的P0.0-P0.7连接到一个共阴数码管的a-h的笔段上,数码管的公共端接地。在数码管上循环显示0-9数字,时间间隔0.2秒。
2.电路原理图
图4.7.1
3.系统板上硬件连线
把“单片机系统”区域中的P0.0/AD0-P0.7/AD7端口用8芯排线连接到“四路静态数码显示模块”区域中的任一个数码管的a-h端口上;要求:P0.0/AD0与a相连,P0.1/AD1与b相连,P0.2/AD2与c相连,……,P0.7/AD7与h相连。
4. 程序设计内容
(1).LED数码显示原理
七段LED显示器内部由七个条形发光二极管和一个小圆点发光二极管组成,根据各管的极管的接线形式,可分成共阴极型和共阳极型。 LED数码管的g~a七个发光二极管因加正电压而发亮,因加零电压而不以发亮,不同亮暗的组合就能形成不同的字形,这种组合称之为字形码,下面给出共阴极的字形码见表2
(2).由于显示的数字0-9的字形码没有规律可循,只能采用查表的方式来完成我们所需的要求了。这样我们按着数字0-9的顺序,把每个数字的笔段代码按顺序排好!建立的表格如下所示:TABLE DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH
5.程序框图
图4.7.2
6.汇编源程序
ORG 0
START: MOV R1,#00H
NEXT: MOV A,R1
MOV DPTR,#TABLE
MOVC A,@A+DPTR
MOV P0,A
LCALL DELAY
INC R1
CJNE R1,#10,NEXT
LJMP START
DELAY: MOV R5,#20
D2: MOV R6,#20
D1: MOV R7,#248
DJNZ R7,$
DJNZ R6,D1
DJNZ R5,D2
RET
TABLE: DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH
END
7.C语言源程序
#include
unsigned char code table[]={0x3f,0x06,0x5b,0x4f,0x66,
0x6d,0x7d,0x07,0x7f,0x6f};
unsigned char dispcount;
void delay02s(void)
{
unsigned char i,j,k;
for(i=20;i>0;i--)
for(j=20;j>0;j--)
for(k=248;k>0;k--);
}
void main(void)
{
while(1)
{
for(dispcount=0;dispcount<10;dispcount++)
{
P0=table[dispcount];
delay02s();
}
}
}
下一篇:设计属于自己的单片机最小系统
史海拾趣
|
SMIC需要的是时间,以及更好的管理。王能否改善SMIC的管理是个问题。他以前在华虹NEC的记录不太positive。 对SMIC客户来讲,更换领导层甚至方向不是个好事。不确定性太大。大伙的身家性命都在上面呢。Wafer涨价?关停一些线?更新销售策略?与TSM ...… 查看全部问答> |
|
请问各位,谁比较了解EZ-USB FX2LP系列芯片CY7C68013A, 该芯片引脚有三种数量类型,即56个引脚的,100引脚的和128引脚的, 我用的接口模式为GPIF主控式的,在此接口模式下,只有56引脚的没有地址线,其它两种引脚都有9位的地址线,有我想问的是 ...… 查看全部问答> |
|
前言:这几天在整理和生产EMC程序一些宏,发现这东西真的是好用的超乎了想象,将一些,以下以 EM78P260为主,其实其他型号大通小异,注意修改一下寄存器就可以。 (1)最常用的 PAGE 和 BANK EMC 的IC是分几个page和几个bank的,低端的EM78P156 ...… 查看全部问答> |
|
发帖发问一个bootloader问题并邀请学习6410,PXA3XX等高级货的同志了! 这几天看了6410的eboot,并对nk.bin以及nk.nb0文件重新了解了一下,发现了很多疑问。 主要是我以前一直用ADS bootloader,现在觉得两者有不可思议的差别。 一、ADS bootloader没有拷贝全局变量到RAM的行为,但是eboot.nb0有——但是这两个格式的 ...… 查看全部问答> |
|
大家好,请问谁用过MAX3420的USB芯片呢?有问题请教。 大家好,请问谁用过MAX3420的USB芯片呢?有问题请教。 以往的USB芯片没有安装驱动时候直接连接到计算机上会提示发现新硬件,我手里这个MAX3420芯片连接到主机后,什么提示都没有,但也不应该是芯片坏了。在设备管理器中也看不见这个设备,好奇怪, ...… 查看全部问答> |
|
如题。用的2450的板子,wince5.0的平台。现在用IIC1接我的IC芯片。现在拿到手的IIC驱动是IIC0的,即用的GPE14\\GPE15,我需要将其换成IIC1,即GPB7\\GPB8。我做了如下修改: 1、 WINCE500\\PLATFORM\\SMDK2450\\Src\\Drivers\\IIC\\i2c.c中 //#de ...… 查看全部问答> |
|
我用的优龙YL2410开发板,最近想自己制作一个cramfs跟文件系统,参考网上比较著名的一个文档《Linux系统移植》的根文件系统制作部分自己制作了一个cramfs的文件系统my_rootfs.cramfs,其中busybox使用的是1.1.3。把my_rootfs.cramfs烧写到板子后发 ...… 查看全部问答> |
|
wince5.0 S3c2440官方bsp,带camera驱动 wince5.0 S3c2440官方bsp,带camera驱动: http://www.itxxh.cn/book/2440/zaxsw1565.shtml WINCE5.0系统下,OV9650 CAMERA驱动程序: http://www.itxxh.cn/book/2440/zaxsw1568.shtml… 查看全部问答> |




