微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 51单片机学习之1-锁存器驱动led灯

51单片机学习之1-锁存器驱动led灯

时间:11-30 来源:互联网 点击:
第一集

单片机的介绍以及学习必备的一些基础知识等。

第二集

一、单片机型号解析。

1、例子AT89S5224PU

AT—生产商标志,表示该器件是ATMEL公司的产品。

89—ATMEL公司的产品89系列家族(内涵Flash存储器)。

S—表示可在线编程。 还有C表示是CMOS产品、LS表示低电压2.7V-4V、LV表示低电压2.7V-6V、LP表示低功耗单时钟周期指令。

52—表示存储器的容量是8K,还有53是12K、54是16K、55是20K,51是4K、2051是2K等。

24—表示芯片的最高时钟频率为24MHZ。还有33MHZ、20MHZ、16MHZ等。

P—表示DIP封装。还有 S表示SOIC封装、 Q表示PQFP封装、A表示TQFP封装、J表示PLCC封装、W表示裸芯片等。

U—表示芯片的产品等级为无铅工业产品,温度范围为-40至+85℃。还有C表示商业产品,温度范围为0至+70℃;I表示工业产品,温度范围为-40至+85℃;A表示汽车用产品,温度范围为-40至+125℃;M表示军用产品,温度范围为-55至+150℃。

二、51单片机内部结构

8位CPU、4K的ROM、128字节RAM、4个8位并行I/O口、一个全双工串行口,2个16位定时器/计数器,5个中断源

单片机为TTL电平:高电平+5V低电平0V如果要和计算机通讯,因为计算机高电平-12V低电平+12V所以计算机与单片机之间通讯需要加电平转换芯片MAX232。

三、二进制的运算

:两者都为1(真)才为1真例:1&1=10&0=00&1=01&0=0

:两者只要其中一个为1(真)则为真例:1|0=10|1=11|1=10|0=0

:1则00则1例:!1=0!0=1

第三集

一、C51数据类型

1、sfr:特殊功能寄存器声明

C51已经为我们定义好的。如reg52.h文件里面的sfrTCON=0x88;我们可以直接操作TCON就等于操作0x88这个地址的内容。

2、sfr16:sfr的16位数据声明

同上。

3、sbit:特殊功能位声明

C51已经为我们定义好的。如reg52.h文件里面的sbitTR1=TCON^6;我们可以直接将TR1=1就等于把TCON的第6位置1

4、bit:位变量声明

二、C51头文件

通常有:reg51.hreg52.hmath.hctype.hstdio.hstdlib.habsacc.h

常用有:reg51.hreg52.h里面定义了特殊功能寄存器和位寄存器

math.h定义常用数学运算

三、宏定义

例:

#defineucharunsignedchar

#defineuintunsignedint

#defineulintunsignedlongint

凡是程序源码中出现uchar时,在我们编译的时候编译器会把uchar替换成unsignedchar,uint替换成unsignedint,uling替换成unsignedlongint方便我们使用。和C的含义一样。

四、C51运算符

与C语言基本相同

+-*/(加减乘除)

>>=<=(大于大于等于小于小于等于)

==!=(测试等于测试不等于)

&&||!(逻辑与逻辑或逻辑非)例:if(Led==0)printf(“Led等于0”);

>><(位右移位左移)

&|(按位与按位或)

^~(按位异或按位取反)

五、C-51的基本语法

与C一样

第四集

一、74HC573锁存芯片(主要用来扩展单片机的IO口)



74HC573引脚说明:

OE:低电平有效,要使用这个芯片OE必须为低电平芯片才会工作。

D0—D7:为输入一般接在单片机的IO口

Q0—Q7:为输出外围芯片、电机、led等

LE:锁存控制,当LE为高电平时D引脚输入的电平状态会直接影响Q输出引脚的电平状态,相当于单片机的IO口可以直接操控Q输出引脚,即单片机IO==Q==D。当LE为低电平时,无论D引脚的电平状态怎么变动,Q的电平状态仍维持不变。相当于Q输出引脚与单片机的IO口隔离。
真值表


这表格分成两个部分:INPUTS(输入)、OUTPUT(输出)。
L:表示低电平 在INPUTS表示输入低电平 在OUTPUT表示输出低电平。
H:表示高电平 在INPUTS表示输入高电平在OUTPUT表示输出高电平。
X:表示无所谓是高电平还是低电平。
Q0:表示维持原来的状态不变。
Z:高阻态 (接的是高电平则是高电平,接的是低电平则是低电平)当输出高阻态时,说明芯片没有工作。

INPUTS(输入):
OE:OE上面有一条横杠代表低电平有效。
LE:锁存控制。
D:输入端 即 D0 — D7

OUTPUT(输出):
Q:输出端 即 Q0 — Q7

真值表解释:
第三行:OE=LLE=H D=H Q=H
表示OE为低电平时,LE为高电平即不锁存,那么D是高电平则Q也是高电平。
第四行:OE=LLE=H D=L Q=L
表示OE为低电平时,LE为高电平即不锁存,那么D是低电平则Q也是低电平。
第五行:OE=L LE=L D=X Q=Q0
表示OE为低电平时,LE为低电平即锁存,那么无论D是什么状态,Q仍保持上一次的状态。
第六行:OE=H LE=X D=X Q=Z
表示OE为高电平即停用芯片,LE无论是什么状态,D无论是什么状态,Q保持高阻态即不起作用。

二、电路图



单片机的一组P0口要控制8个Led灯,首先需要将LE引脚置1,让74HC573的Q输出端与D输入端关联起来。这样P0口的电平状态会传递给D输入端进而改变Q的电平状态。

8

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top