struct date表示这是一个结构体类型,其中struct是关键词,不能省略;date为结构体数据类型名,不是变量名。date结构体类型包括了4个结构成员:unsigned int year,unsigned char month,unsigned char day,char week。这4个结构成员的数据类型可以相同,也可以不同,其中一个是无符号整型,两个是无符号字符型,另一个是字符型。......
2023-11-17
单片机的外部结构主要是指其I/O引脚、控制总线等。
1.2.1 MCS-51单片机引脚的功能
MCS单片机都采用40引脚的双列直插封装方式。图1-12所示为引脚排列图,各引脚的说明如下:
图1-12 引脚排列图
1.主电源引脚VSS和VCC
(1)VSS:接地。
(2)VCC:正常操作时为+5 V电源。
2.外接晶振引脚XTAL1和XTAL2
(1)XTAL1:内部振荡电路反相放大器的输入端,是外接晶体的一个引脚。当采用外部振荡器时,此引脚接地。
(2)XTAL2:内部振荡电路反相放大器的输出端,是外接晶体的另一端。当采用外部振荡器时,此引脚接外部振荡源。
3.控制或与其他电源复用引脚RST/VPD,ALE//VPP
(1)RST/VPD:当振荡器运行时,在此引脚上出现两个机器周期的高电平(由低到高跳变),将使单片机复位,在VCC掉电期间,此引脚可接上备用电源,由VPD向内部提供备用电源,以保持内部RAM中的数据。
(2)ALE/正常操作时为ALE功能(允许地址锁存)提供把地址的低字节锁存到外部锁存器,ALE引脚以不变的频率(振荡器频率的1/6)周期性地发出正脉冲信号。因此,它可用作对外输出的时钟,或用于定时目的。但要注意,每当访问外部数据存储器时,将跳过一个ALE脉冲,ALE端可以驱动(吸收或输出电流)八个LSTTL电路。对于EPROM型单片机,在EPROM编程期间,此引脚接收编程脉冲(功能)。
(3):外部程序存储器读选通信号输出端,在从外部程序存储取指令(或数据)期间,在每个机器周期内两次有效。同样可以驱动八个LSTTL输入。
(4)VPP:内部程序存储器和外部程序存储器选择端。当/VPP为高电平时,则访问内部程序存储器;当/VPP为低电平时,则访问外部程序存储器。
对于EPROM型单片机,在EPROM编程期间,此引脚上加21 V EPROM编程电源(VPP)。
4.输入/输出引脚P0.0~P0.7,P1.0~P1.7,P2.0~P2.7,P3.0~P3.7
(1)P0口(P0.0~P0.7)是一个8位漏极开路型双向I/O端口,在访问外部存储器时,它是分时传送的低字节地址和数据总线,P0口能以吸收电流的方式驱动八个LSTTL负载。
(2)P1口(P1.0~P1.7)是一个带有内部提升电阻的8位准双向I/O端口,能驱动(吸收或输出电流)四个LSTTL负载。
(3)P2口(P2.0~P2.7)是一个带有内部提升电阻的8位准双向I/O端口,在访问外部存储器时,它输出高8位地址。P2口可以驱动(吸收或输出电流)四个LSTTL负载。
(4)P3口(P3.0~P3.7)是一个带有内部提升电阻的8位准双向I/O端口,能驱动(吸收或输出电流)四个LSTTL负载。P3口还用于第二功能,见表1-1。
1.2.2 基本运行电路(www.chuimin.cn)
尽管8051系列单片机已经有很高的集成度,但其运行仍需要有外部电路配合才能正常工作。通常,将使用最少元器件搭建起的单片机运行电路称为单片机的最小运行系统。对于8051单片机而言,最小系统包括时钟电路和复位电路两个部分。
1.时钟电路
8051系列单片机在工作时需要有时钟信号的支持,时钟电路就是用来产生时钟信号的电路。按照时钟的来源不同,8051系列单片机可以使用两种不同类型的时钟。
1)内部时钟方式
内部时钟方式的时钟并非来源于单片机内部,而是由外接于单片机XTAL1和XTAL2引脚的晶体振荡器、陶瓷谐振器及电容与单片机内部的反向放大器一起构成自激振荡器,为单片机运行提供时钟。当单片机工作在内部时钟方式时,其电路原理如图1-13所示。
图1-13 内部时钟方式
为便于计算时间和得到正确的串行通信波特率,晶体振荡器的频率通常选择12 MHz或11.0592 MHz。晶振的频率越高,单片机执行代码的速度也越快,但相应的功耗和电磁辐射也会增加。在要求不高的情况下,也可以使用陶瓷谐振器代替晶振作为时钟源。使用晶体振荡器时,C1、C2的电容推荐值为30 pF,而使用陶瓷谐振器时电容应选择40 pF。
2)外部时钟方式
当单片机工作在外部时钟方式时,外部时钟信号从XTAL2引脚输入,此时XTAL1引脚应接地。外部时钟方式常用在单片机使用有源晶振或多个单片机同时工作的情况下,其工作电路如图1-14所示。
图1-14 外部时钟电路
2.复位电路
MCS-51单片机的复位电路如图1-15所示。它在RESET(图中表示为RES)输入端出现高电平时实现复位和初始化。
图1-15 复位电路
在振荡运行的情况下,要实现复位操作,必须使RES引脚至少保持两个机器周期(24个振荡器周期)的高电平。CPU在第二个机器周期内执行内部复位操作,以后每一个机器周期重复一次,直至RES端电平变低。复位期间不产生ALE及PSEN信号。内部复位操作使堆栈指示器SP为07H,各端口都为1(P0~P3口的内容均为0FFH),特殊功能寄存器都复位为0,但不影响RAM的状态。当RES引脚返回低电平以后,CPU从0地址开始执行程序。复位后,各内部寄存状态如表1-8所示。
表1-8 寄存器的内容
图1-15(b)所示为加电自动复位电路。加电瞬间,RES端的电位与VCC相同,随着RC电路充电电流的减小,RES的电位下降,只要RST端保持10 ms以上的高电平就能使MCS-51单片机有效复位,复位电路中的R,C参数通常由实验调整。当振荡频率选用6 MHz时,C选22 µF,R选1 kΩ,便能可靠地实现加电自动复位,若采用RC电路接斯密特电路的输入端,斯密特电路输出端接MCS-51和外围电路的复位端,能使系统可靠地同步复位。图1-15(a)所示为人工复位电路。
复位电路在实际应用中很重要,不能可靠复位会导致系统不能正常工作,所以现在有专门的复位电路,如810系列。这种类型的器件不断有厂家推出更好的产品,如将复位电路、电源监控电路、看门狗电路、串行E2ROM存储器全部集成在一起的电路,有的可分开单独使用,有的可只用部分功能,让使用者就具体实际情况灵活选用。
有关单片机原理与应用 基于C语言的文章
struct date表示这是一个结构体类型,其中struct是关键词,不能省略;date为结构体数据类型名,不是变量名。date结构体类型包括了4个结构成员:unsigned int year,unsigned char month,unsigned char day,char week。这4个结构成员的数据类型可以相同,也可以不同,其中一个是无符号整型,两个是无符号字符型,另一个是字符型。......
2023-11-17
按功能可把8255的内部结构分为3个逻辑电路部分,分别为口电路、总线接口电路和控制逻辑电路,如图8-31所示。2.总线接口电路总线接口电路用于实现8255和单片机芯片的信号连接。其中包括:图8-308255芯片引脚排列图图8-318255的逻辑结构图1)数据总线缓冲器。8255共有4个可寻址端口。4.中断控制电路8255逻辑电路中还包含一个中断控制电路。置位为允许,复位为禁止。......
2023-11-17
图1-2 8051单片机框图图1-2中4 KB的ROM存储器部分用EPROM替换就成为8751的结构图;图1-2中去掉ROM部分就成为8031的结构图。图1-4给出了8051单片机的取指和执行指令的定时关系。......
2023-11-17
Arduino控制器是由DFRobot出品的Arduino click,如图4-15所示。它继承了Arduino328控制器所有的特性而且集成了电机驱动、键盘、IO扩展板、无线数据串行通信等接口。它不仅可以兼容几乎所有Arduino系列的传感器和扩展板,而且可以直接驱动12个舵机。图4-15Arduino控制板AVR内核具有丰富的指令集和32个通用工作寄存器。ATmega48、ATmega88与ATmega168这三个型号只是在存储器大小、boot loader支持及中断向量长度上存在差别。芯片具有独立的BootLoader区,SPM指令只能在这个Flash区里得到执行。......
2023-06-26
多分支结构中具有两个以上条件可供选择,可使用无条件间接转移指令“JMP@A+DPTR”来实现。使用散转指令设计多分支程序结构时可采用下面的两种方法:1)数据指针DPTR固定,根据累加器A的内容,程序转入相应的分支程序中去。采用转向地址表实现多分支结构,转移的目标程序序号存放于R7中。......
2023-11-17
目前在单片机市场上,8位单片机和32位的ARM嵌入式微处理器占据的市场份额达70%以上。在单片机市场中,代表性的产品有MCS-51系列产品,其中ATMEL公司的AT89C51/C52两个系列8位单片机在焊接领域应用较为广泛。1994年ATMEL公司以其E2PROM和Intel公司的80C31单片机核心技术进行交换,从而取得80C31核的使用权。......
2023-06-26
使用查询标志位的方法通过串行口发送C语言的经典语句“hello World!”,在PC上运行串口调试助手软件接收此消息并在屏幕上显示出来。单击“打开串口”按钮,这时会发现在串口调试助手的接收区有“hello World!”图9-29 串口调试助手向单片机发送数字单片机接收到来自PC发送的信息后,用LED灯显示该数字的状态,系统板的具体状态如图9-30所示。......
2023-11-17
如果将单片机的一个I/O口连接于K点,通过检测K点电压的高低,就可以确认是否有按键按下,这就是键盘检测的基本原理。基于中断方式工作的独立键盘的电路原理如图6-8所示。矩阵键盘能有效地节省I/O口,简化电路,非常适用于按键数量较多的应用。......
2023-11-17
相关推荐