#C51单片机程序100例# 程序中0DFFFH是什么意思?

基于超级结技术的功率MOSFET已成为高压开关转换器领域的……
激光雷达,是利用激光、全球定位系统GPS和惯性测量装置(……
每年,在新款iPhone发布之前各种各样的消息以及渲染图都……
在飞安级的电流精度下,还有器件能检测吗?……
Type&C自问世以来,经历过了风口浪尖上的2015年,……
演讲人:陈智鸿时间: 10:00:00
演讲人:梁国柱,徐玮时间: 10:00:00
演讲人:张清刚时间: 10:00:00
预算:小于¥10,000预算:¥10,000-¥50,000
51单片机与D/A接口设计详解
[导读]D/A转换器输入的是数字量,经转换后输出的是模拟量。有关D/A转换器的技术性能指标很多,例如绝对精度、相对精度、线性度、输出电压范围、温度系数、输入数字代码种类(二进制或BCD码)等。1) 分辩率分辨率是D/A转换器对
输入的是数字量,经转换后输出的是模拟量。有关D/A转换器的技术性能指标很多,例如绝对精度、相对精度、线性度、输出电压范围、温度系数、输入数字代码种类(二进制或BCD码)等。
分辨率是D/A转换器对输入量变化敏感程度的描述,与输入数字量的位数有关。如果数字量的位数为n,则D/A转换器的分辨率为2-n。这就意味着数/模转换器能对满刻度的2-n输入量作出反应。
2) 建立时间
建立时间是描述D/A转换速度快慢的一个参数,指从输入数字量变化到输出达到终值误差&(1/2)LSB(最低有效位)时所需的时间。通常以建立时间来表示转换速度.
转换器的输出形式为电流时,建立时间较短;输出形式为电压时,由于建立时间还要加上运算放大器的延迟时间,因此建立时间要长一点。但总的来说,D/A转换速度远高于A/D转换速度,快速的D/A转换器的建立时间可达1 &s。
3) 接口形式
D/A转换器与单片机接口方便与否,主要决定于转换器本身是否带数据锁存器。有两类D/A转换器,一类是不带锁存器的,另一类是带锁存器的。对于不带锁存器的D/A转换器,为了保存来自单片机的转换数据,接口时要另加锁存器,因此这类转换器必须在口线上;而带锁存器的D/A转换器,可以把它看作是一个输出口,因此可直接在数据总线上,而不需另加锁存器。
典型D/A转换器芯片DAC0832
DAC0832是一个8位D/A转换器。单电源供电,从+5 V~+15 V均可正常工作。基准电压的范围为&10 V;电流建立时间为1 &s;CMOS工艺,低功耗20 mW。
DAC0832转换器芯片为20引脚,双列直插式封装,其引脚排列图如图所示。DAC0832内部结构框图如图所示。 该转换器由输入寄存器和DAC寄存器构成两级数据输入锁存。使用时,数据输入可以采用两级锁存(双锁存)形式,或单级锁存(一级锁存,一级直通)形式,或直接输入(两级直通)形式。
此外,由三个与门电路组成寄存器输出控制逻辑电路,该逻辑电路的功能是进行数据锁存控制,当=0时,输入数据被锁存;当=1时,锁存器的输出跟随输入的数据。
D/A转换电路是一个R-2R T型电阻网络,实现8位数据的转换。对各引脚信号说明如下:
(1) DI7~DI0:转换数据输入。
(2) CS:片选信号(输入),低电平有效。
(3) ILE:数据锁存允许信号(输入),高电平有效。
(4) WR:第1写信号(输入),低电平有效。
上述两个信号控制输入寄存器是数据直通方式还是数据锁存方式,当ILE=1和 WR1 =1=0时,为输入寄存器直通方式;当ILE=1和WR1 =1时,为输入寄存器锁存方式。
(5) WR2 =1:第2写信号(输入),低电平有效。
(6) XFER:数据传送控制信号(输入),低电平有效。
上述两个信号控制DAC寄存器是数据直通方式还是数据锁存方式,当 WR2=0和XFER=0时,为DAC寄存器直通方式;当WR2=1和XFER=0时,为DAC寄存器锁存方式。
(7)  Iout1:电流输出1。
(8)  Iout2:电流输出2。
DAC转换器的特性之一是:Iout1+Iout2=常数。
(9)  Rfb:反馈电阻端。
DAC 0832是电流输出,为了取得电压输出,需在电压输出端接运算放大器,Rfb即为运算放大器的反馈电阻端。运算放大器的接法如图7.31所示。
(10) Vref:基准电压,其电压可正可负,范围是-10 V~+10 V。
(11)  DGND:数字地。
(12)  AGND:模拟地。
单缓冲方式的接口与应用
1. 单缓冲方式连接
所谓单缓冲方式就是使DAC 0832的两个输入寄存器中有一个处于直通方式,而另一个处于受控的锁存方式,或者说两个输入寄存器同时受控的方式。在实际应用中,如果只有一路模拟量输出,或虽有几路模拟量但并不要求同步输出时,就可采用单缓冲方式。
2. 单缓冲方式应用举例&&产生锯齿波
在许多控制应用中,要求有一个线性增长的电压(锯齿来控制检测过程,移动记录笔或移动电子束等。对此可通过在DAC0832的输出端接运算放大器,由运算放大器产生锯齿波来实现,电路连接如图所示。图中的DAC8032工作于单缓冲方式,其中输入寄存器受控,而DAC寄存器直通。
假定输入寄存器地址为7FFFH,产生锯齿波的源程序清单如下:
:,;输入寄存器地址,假定接
,&&;转换初值
&&&&&,;转换
&&&&;延时
双缓冲方式的接口与应用
1. 双缓冲方式连接
所谓双缓冲方式,就是把DAC0832的两个锁存器都接成受控锁存方式。双缓冲DAC0832的连接如图所示。为了实现寄存器的可控,应当给寄存器分配一个地址,以便能按地址进行操作。图中采用地址译码输出分别接和来实现,然后再给和提供写选通信号,这样就完成了两个锁存器都可控的双缓冲接口方式。
2. 双缓冲方式应用举例
双缓冲方式用于多路D/A转换系统,以实现多路模拟信号同步输出的目的。例如使用单片机控制X-Y绘图仪。X-Y绘图仪由X、Y两个方向的步进电机驱动,其中一个电机控制绘图笔沿X方向运动,另一个电机控制绘图笔沿Y方向运动,从而绘出图形。因此,对X-Y绘图仪的控制有两点基本要求:一是需要两路D/A转换器分别给X通道和Y通道提供模拟信号,二是两路模拟量要同步输出。
向左转?向右转?还是180度向后转?在职场上,很多人做得不顺心了,看不到希望了,就想玩个惊天&大逆转&,来一个华丽&转身&,从此柳暗花明,前途大好。转型可分为三种:转行、转职、转行转职......关键字:
FZ-MCU51单片机开发板集实验开发、编程、仿真和下载于一体,支持AT89S51、AT89S52、AT89S53的和STC系列单片机如STC89C53RC等全系列单片机的编程和实验,使用配套的仿真模......关键字:
大家在科幻片常常可以看到生活在未来的人们,动动手指,家里的设备就会自动为你服务,但事实上这些生活已经可以实现,最近苹果为大家展示了Home智能家居的广告,并列出大量支持HomeKit的第三方配件。......关键字:
美国盐湖城时间11月17日下午1:20时许(北京时间18日凌晨4:20时许),2016年度&戈登&贝尔&奖的谜底终于在美国盐湖城举行的国际超算大会(SC16)上揭晓。此前被寄予厚望的中国团队不负......关键字:
据报道,或许你会担心某人正在设计的机器人将取代你的工作。的确,机器人在“玩弄权术”方面的表现可能超过你的想象。而且在更大范围内,机器人的编码速度可能比Facebook的马克?扎克伯格(Mark Zuckerberg)更快,它会成为更称职的......关键字:
2016年对全球手机市场来说,是刻骨铭心的一年。国际上,三星苹果爆炸接二连三,国产手机销量创新高却遭遇高层动荡,换帅不停,渠道变幻更是神秘莫测。而互联网手机锤子、魅族、乐视危机不断,互联网手机 IUNI倒闭、一加裁员关店,还有更多的不知名的......关键字:
我 要 评 论
热门关键词当前位置: >>
实验安排周五5、6节 12#-405A 定时器实验周六1、2节上课 第4章MCS-51单片机系统的扩展技术主要内容: MCS-51单片机系统扩展的基本原理和方法。常用 器件的选择和应用,常用总线标准和典型接口电 路。要求学生掌握单片机系统扩展的原理、方法, 并能根据工程要求
进行系统扩展。 重 难 点:常用器件的选择和应用,常用总线标准和典型接口 电路,单片机系统扩展的基本原理和方法。 点:存储器地址重叠,灵活运用所学知识根据实际需要 进行系统扩展。 T0 T1时钟电路ROMRAM定时计数器CPU并行接口 串行接口 中断系统P0 P1 P2 P3TXD RXDINT0 INT1 PSENP2.2--P2.0A0~A7 A8~A10 OE CS WE OE A0~A7 WE OE A8~A10P0ALE WR RD373 G2716D7~D06116(2)D7~D0 CE6116(1)D7~D0 CE8031P2.3 P2.4 P2.5 P2.6 P2.7ALE+5VA B C G2A G2B G1AD0~AD7PAPBY2 Y1 Y0RD WE CE8155 PCP1.0IO/ M 第4章MCS-51单片机系统的扩展技术4.1 MCS-51单片机系统扩展概述4.2 存储器的扩展4.34.4并行I/O口的扩展时钟芯片的扩展4.54.6系统监控芯片的扩展总线接口扩展 4.1MCS-51单片机系统扩展概述系统扩展是指为加强单片机某方面功能,在最小应用系统 基础上,增加一些外围功能部件而进行的扩充。4.1.1 MCS-51系列单片机的外部扩展原理1.MCS-51系列单片机的片外总线结构 MCS-51系列单片机具有很强的外部扩展功能。其外部扩展 都是通过三总线进行的。 (1)地址总线(AB) 地址总线用于传送单片机输出的地址信号,宽度为16位, P0口经锁存器提供低8位地址,锁存信号是由CPU的ALE引脚提 供的;P2口提供高8位地址。 (2)数据总线(DB) 数据总线是由P0口提供的,宽度为8位。 (3)控制总线(CB) 控制总线实际上是CPU输出的一组控制信号。MCS-51单片 机通过三总线扩展外部设备的总体结构图如下图所示。 2.MCS-51系列单片机系统的扩展能力 片外可扩展存储器的最大容量为216=64KB,地址范围为0000H~FFFFH。允许片外程序存储器和数据存储器的地址 重叠。 I/O接口的编址方法:一种是独立编址,另一种是统一编址。 MCS-51单片机采用了统一编址方式,即I/O端口地址与外部数据存储单元地址统一编址为0000H~FFFFH(64KB)。当MCS-51单片机应用统扩展较多外部设备和I/O接口时,要占 去大量的数据存储器的地址。 4.1.2MCS-51单片机系统地址空间的分配系统空间分配:通过适当的地址线产生各外部扩展器件的片选/ 使能等信号就是系统空间分配。编址:编址就是利用系统提供的地址总线,通过适当的连接,实 现一个编址惟一地对应系统中的一个外围芯片的过程。编址就是 研究系统地址空间的分配问题。 片内寻址:若某芯片内部还有多个可寻址单元,则称其内部单元 寻址为片内寻址。编址的方法:芯片的选择是由系统的高位地址线通过译码实现的, 片内寻址直接由系统低位地址信息确定。 产生外围芯片片选信号的方法有三种:线选法、全地址译码 法和部分译码法。 4.2 存储器的扩展 4.2.1 程序存储器扩展4.2.2数据存储器扩展4.2.3 MCS-51对外部存储器的扩展 4.2.4 程序存储空间和数据存储空间的混合 存储器是计算机系统中的记忆装Z,用来存放程序和程序运行所需要的 数据。单片机系统扩展的存储器通常使用半导体存储器,根据用途可以分为 程序存储器(一般用ROM)和数据存储器(一般用RAM)两种类型。MCS-51单片机对外部存储器的扩展应考虑的问题: (1)选择合适类型的存储器芯片 只读存储器( ROM ):常用于固化程序和常数。可分为ROM、PROM、EPROM和E2PROM。 若所设计的系统是小批量生产或开发产品,使用EPROM和E2PROM ; 若为成熟的大批量产品,则应采用PROM或掩膜ROM 。随机存取存储器( RAM ):常用来存取实时数据、变量和运算结果。可分为SRAM和DRAM两类。 所用的RAM容量较小或要求较高的存取速度,则宜采用SRAM; 若所用的RAM容量较大或要求低功耗,则应采用DRAM,以降低成本。 此外,还可以选择OTP ROM、Flash存储器、串口RAM、FRAM、 NVRAM、用于多处理机系统的DSRAM(双端口RAM)等。 (2)工作速度匹配 MCS-51的访存时间(单片机对外部存储器进行读写所需要 的时间)必须大于所用外部存储器的最大存取时间(存储器的 最大存取时间是存储器固有的时间 ) (3)选择合适的存储容量 MCS-51应用系统所需存储容量不变的前提下,若所选存储 器本身存储容量越大,则所用芯片数量就越少,所需的地址译 码电路就越简单。 (4)合理分配存储器地址空间的分配 存储器的地址空间的分配必须满足存储器本身的存储容量, 否则会造成存储器硬件资源的浪费。 (5)合理选择地址译码方式 线选法、全地址译码法、部分地址译码法。 4.2.1 程序存储器扩展 单片机内部没有ROM,或虽有ROM但容量太小时,必须扩展外部程序存储器方能工作。最常用的ROM器件是EPROM。 1. 常用EPROM程序存储器 EPROM主要是27系列芯片,如:2764(8K)/27128(16K) /27256(32K)/K)等,一般选择8KB以上的芯片作为外部程序存储器。其引脚图如下图所示。
引脚符号的含义和功能如下:D7~D0:三态数据总线; A0~Ai:地址输入线,i=12~15。2764的地址线为13位,i=12; 27512的地址线为16位,i=15;CE :片选信号输入线; OE :输出允许输入线;VPP:编程电源输入线;PGM:编程脉冲输入线;VCC :电源; GND:接地; NC:空引脚。 EPROM的工作方式 2. 地址锁存器程序存储器扩展时,还需要地址锁存器,常用的有: (1)带三态缓冲输出的8D锁存器74LS373 74LS373是带有三态门的8D锁存器,当三态门的使能信号 线 OE 为低电平时,三态门处于导通状态,允许锁存器输出,锁 存控制端为11脚LE,采用下降沿锁存,控制端可以直接与CPU 的 地址锁存控制信号ALE相连。74LS373使用较多。 (2)带有清除端的8D触发器74LS273 74LS273是带有清除端的8D触发器,只有在清除端保持高电 平时,才具有锁存功能,锁存控制端为11脚CLK,采用上升沿锁 存。 CPU 的ALE信号必须经过反相器反相之后才能与74LS273 的控制端CLK 端相连。 3.典型扩展电路2764A是一种8K×8位EPROM,单一+5V供电,工作电流 为75mA,维持电流为35mA,读出最大时间为250ns,28 脚双列直插封装。其扩展电路示于图图6-6 2764 EPROM扩展电路 地址空间:A15A14A13A12 A11 A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0 最低地址:××× 0 0 0 0 0 0 0 0 0 0 0 0 0 0000H 最高地址:××× 1 1 1 1 1 1 1 1 1 1 1 1 1 1FFFH最低地址:×× 10 0 0 0 0 0 0 0 0 0 0 0 0 2000H 最高地址:×× 1 1 11 1 1 1 1 1 1 1 1 1 1 3FFFH0000H~1FFFH, 4000H~5FFFH, 8000H~9FFFH, 0C000H~0DFFFH, 2000H~3FFFH 6000H~7FFFH 0A000H~0BFFFH 0E000H~0FFFFH 4. 超出64KB容量程序存储器的扩展MCS-51单片机提供16位地址线,可直接访问程序存储器的 空间为64 KB(216),若系统的程序总容量需求超过64 KB,可 以采用区选法来实现。单片机系统的程序存储器每个区为64 KB, 由系统直接访问,区与区之间的转换通过控制线的方式来实现。 如下图所示为系统扩展128 KB程序存储空间(2×64 KB)示意 图。 P1.0输出高电平,访问A芯片; P1.0输出低电平,访问B芯片。 4.2.2数据存储器扩展单片机内部的RAM为128B(或256B),有的单片机应用系统需要扩展外部数据存储器RAM (如数据采集系统数据量较大,需要专设 RAM或 Flash RAM)。最常用的 RAM器件是静态 RAM( SRAM )。 1. 常用静态RAM存储器 常用的SRAM有6116(2K)、6264(8K)、62128(16K)、62256(32K)、 K)等。一般选择8KB以上的芯片作为外部程序存储器。其引脚图如下页图所示。 引脚符号的含义和功能如下:D7~D0:双向三态数据总线;A0~Ai:地址输入线i=10(6116芯片),i=12(6264芯片),i=14(62256芯片);CS ( CS1):片选信号输入端,低电平有效;CS2 :片选信号输入端,高电平有效(仅6264芯片有);OE :读选通信号输入线,低电平有效; WE :写选通信号 输入线, 低电平有效; Vcc :电源+5V; GND :地。 静态RAM存储器有三种工作方式:数据的读出、写入和 维持,其操作控制如下表所示。 MCS-51扩展数据存储器与扩展程序存储器电路的异同:(1)所用的地址总线,数据总线完全相同; (2)读/写控制线不同:扩展程序存储器的读选通信号由 PSEN WR 控制,扩展数据存储器的读、写控制线用 、 分别控制存 RD 储器芯片的 OE 和 WE ; (3)数据存储器与程序存储器的地址可以重叠,因为扩展它们 的控制信号不同。 (4)I/O扩展的地址空间与数据存储器扩展的空间是共用的,所 以扩展数据存储器涉及到的问题远比扩展程序存储器扩展多。 2.数据存储器典型扩展电路MCS-51扩展6264的电路连接方法:数据线:P0口接RAM的D0~D7 ; 地址线: 6264容量为8KB,213=8KB,需要A0~A12共13根地 址线。P0口经地址锁存器后接RAM的A0~A7 ; P2.0~P2.4接 RAM的A8~A12 。RD 控制线:ALE接373的LE, 接RAM的 OE 、 WR接RAM的WE ,只有一片EPROM,且系统无其他I/O接口及外围设备扩展,片选CE可以接地。扩展电路如下页图所示。 6264的地址范围为:0000H~1FFFH。 [例题] 在上页图的数据存储器扩展电路中,将片内RAM 以50H单 元开始的16个数据,传送片外数据存储器0000H开始的单元中。程序如下:ORG 0000H LJMP START ORG 0030H START : MOV SP , #60H MOV R0, #50H ; 数据指针指向片内50H单元 MOV R7, #16 ; 待传送数据个数送计数寄存器 MOV DPTR, #0000H ; 数据指针指向数据存储器H单元 AGAIN: MOV A, @R0 ; 片内待输出的数据送累加器A MOVX @DPTR, A ; 数据输出至数据存储器6264 INC R0 INC DPTR ; 修改数据指针 DJNZ R7, AGAIN ; 判断数据是否传送完成 RET END 扩展多片存储器,线选法和地址译码法 1. 线选法直接用系统的 高位地址线作 RAM芯片的片 选信号。例: 外扩8KB EPROM (2片2732) 4KB RAM (2片6116)2732(1)的地址范围:7000H~ 7FFFH;(2)的地址范围: B000H~ BFFFH;(1)的地址范围:E800H~ EFFFH;6(2)的地址范围:D800H~ DFFFH。11011 2732:4KB ROM,12根地址线A0~A11,1根片选线 6116:2KB RAM,11根地址线A0~A10,1根片选线 片选端低电平有效 地址范围: 2732(1)的地址范围:7000H~7FFFH;(2)的地址范围: B000H~BFFFH;(1)的地址范围:E800H~EFFFH;6(2)的地址范围:D800H~DFFFH。1101 1 线选法特点优点:电路简单,不需另外增加硬件电路,体积小, 成本低。 缺点:可寻址的器件数目受限,地址空间不连续。 只适于外扩芯片不多,规模不大的单片机系统 2. 译码法 常用译码器芯片: 74LS138(3-8译码器)74LS139(双2-4译码器)74LS154(4-16译码器) 全译码:全部高位地址线都参加译码; 部分译码:仅部分高位地址线参加译码。 (1)74LS138(3~8译码器)当译码器的输入为某一个固定编码时,其输出只有某 一个固定的引脚输出为低电平,其余的为高电平。 74LS138译码器真值表输G1 G2A* G2B*入C B A输出Y7* Y6* Y5* Y4* Y3* Y2* Y1* Y0* ( 2) 74LS139(双2-4译码器) 例: 要扩8片8KB的RAM 6264,如何通过74LS138把64KB空 间分配给各个芯片?采用全地址译码方式,单片机发地址码时,每次只能选 中一个存储单元。同类存储器间不会产生地址重叠的问题。 如果用74LS138把64K空间全部划分为每块 4KB,如何划分? 4.2.3 MCS-51对外部存储器的扩展下图所示的 8031扩展系统中,外扩了16KB程序存储器(使用两片 2764芯片)和8KB数据存储器(使用一片6264芯片)。采用全地址译码方式, P2.7用于控制2D4译码器的工作,P2.6, P2.5参加译码,且无悬空地址线, 无地址重叠现象。1# 64, 3# 6264的地址范围分别为:0000H~ 1FFFH, 2000H~3FFFH, 4000~5FFFH。 4.2.4 程序存储空间和数据存储空间的混合在硬件结构上将 PSEN 信号 和 RD 信号相“与”后连接到 RAM芯片的读选通端,这样就 能使程序存储空间和数据存储空 间混合。如右图所示。将程序装 入6264中,很容易进行读写修改, 执行程序时,由信号选通RAM 读出。调试通过后,再将 RAM6264调换成EPROM2764。 4.3 并行I/O口的扩展MCS-51单片机具有四个并行8位I/O口(即P0, P1, P2, P3), 原理上这四个I/O口均可用做双向并行I/O接口,但在实际应用中, 可提供给用户使用的I/O口只有P1口和部分P3口线及作为数据总线 用的P0口。在单片机的I/O口线不够用的情况下,可以借助外部器 件对I/O口进行扩展。可资选用的器件很多,方案也有多种。4.3.1 概述 4.3.2 普通并行I/O口扩展 4.3.3 可编程并行I/O接口芯片扩展 4.3.4 可编程逻辑器件(PLD)扩展 4.3.1概述1. 单片机I/O口扩展方法 并行I/O口扩展的目的:为外围设备提供一个输入输出通道。 (1)并行总线扩展的方法 (2)串行口扩展方法 (3)I/O端口模拟串行方法 2. MCS-51单片机扩展并行I/O口的扩展性能 (1)访问扩展I/O口的方法与访问数据存储器完全相同,使用 相同的指令,所有扩展的I/O口与片外数据存储器统一编址。(2)利用串行口扩展法扩展的外部并行I/O口不占用外部RAM 地址空间。(3)利用并行总线扩展的方法扩展外部并行I/O口时,必须注 意P0, P2, P3口的负载问题,若负载能力不够,必须进行总线驱 动能力扩展。 (4)扩展外部并行I/O口对外设的硬件具有依赖性(驱动功率、 电平匹配、干扰抑制、隔离等)。 4.3.2普通并行I/O口扩展普通并行I/O口在扩展时,它们的选通端或时钟信号端要与 地址线和控制线的逻辑组合输出端相连。其特点是电路简单、 成本低、配Z灵活方便等特点,应用广泛。 1.扩展并行输出口 (1)用74LS377扩展并行输出口 74LS377是带有输出允许端E 的8D锁存器,硬件电路如右图所示。 程序如下:MOV DPTR, #7FFFH ; 数据指针指向74LS377 MOV A, 60H ; 输出的60H单元数据送累加器A MOVX @DPTR, A ; P0口将数据通过74LS377输出
(2)用74LS374扩展并行输出口 74LS374是具有三态输出的8D边沿触发器,与单片机接口 电路如下图所示,74LS374的地址为7FFFH。 程序如下:MOV DPTR, #7FFFHMOV A, 60H MOVX @DPTR, A 2.扩展并行输入口 用单向总线缓冲器74LS244扩展并行输入口 ,硬件电路如 下图所示。74LS244的地址为7FFFH。程序如下:MOV DPTR, #7FFFH ; 数据指针指向74LS244 MOVX A, @DPTR ; 外部数据经过74LS244送入累加器A MOV 61H, A; 数据送61H单元保存 4.3.3 可编程并行I/O接口芯片扩展可编程I/O接口芯片的特点:适应多种功能需求,使用灵活, 可扩展多个并行I/O口,可以编程设定为输入或输出口,应用非 常广泛。 1.可编程并行口8255A芯片 (1)8255A的结构和引脚Intel 8255A芯片是通用可编程并行 接口电路,广泛应用于单片机扩展并行 I/O口。它具有3个8位并行口PA, PB和 PC,一个8位的数据口D0~D7 ,PC口 分高4位和低4位。高4位可与PA口合为 一组(A组),低4位可与PB口合为一组(B 组) ,PC口可按位Z位/复位。40条引 脚,DIP封装。 引脚图如右图所示。 A组控制 DB 数据 总线内 部 总 线PA7~PA0A口 PC7~PC4 上C口 PC3~PC0 下C口RD o WR o 读/写 A0 控制 A1 逻辑 RESET CS o CPU接口PB7~PB0B组控制 内部逻辑B口外设接口 (2)8255A的工作方式8255A芯片的工作方式是通过地址线A1, A0选择端口、通过 读写控制逻辑的组合状态来实现的。其操作状态如下表所示。 三种工作方式方式0(基本输入/输出方式):不需要任何选通信号,适合于 无条件传输数据的设备,数据输出有锁存功能,数据输入有缓 冲(无锁存)功能。 方式1(选通输入/输出方式):A组包括A口和C口的高四位 (PC7~PC4),A口可由程序设定为输入口或输出口,C口的 高四位则用来作为输入/输出操作的控制和同步信号;B组包括 B口和C口的低四位(PC3~PC0),功能和A组相同。方式2(双向I/O口方式):仅A口有这种工作方式,B口无此工 作方式。此方式下,A口为8位双向I/O口,C口的PC7~PC3用 来作为输入输出的控制和同步信号。此时,B口可以工作在方 式0或方式1。 8255A在不同的工作方式下,各口线的功能如下表所示。 STB*:选通输入,是由输入外设送来的输入信号。 IBF:输入缓冲器满,高电平有效。表示数据已送入 8255A的输入锁存器,它由STB*信号的下降沿置 位,由信号的上升沿使其复位 INTR:中断请求信号,高电平有效。由8255A输出, 向单片机发中断请求。 INTE A:A口中断允许,由PC4控制,INTE B:B口中断允许,由PC2控制。A口的方式1输入工作方式见下图。
方式1输出各信号的功能如下: OBF*:输出缓冲器满信号,8255A给外设的联络信号, 外设可以将数据取走。ACK*:外设的响应信号,外设已将数据取走。INTR*:中断请求信号。表示该数据已被外设取走, 请求单片机继续输出下一个数据。 INTE A:中断允许,由PC6控制。 INTE B:中断允许,由PC2控制。 B口的方式1输出如图所示: (3)8255A芯片的控制字8255A芯片的初始化编程是通过对控制口写入控制字的方 式实现的 。方式控制字:字控制8255A芯片三个端口的工作方式,特征是 最高位为1。如下图所示。 C口的按位Z位/复位控制字:C口具有位操作能力,其每 一位都可以通过软件设Z为Z位或复位。其特征是最高位为0。 格式如下图所示。 (4)接口与编程方法 MCS-51单片机外扩8255A芯片的电路原理图如下图所示。 8255A芯片内部已有数据总线驱动器,可以直接与MCS-51单片 机总线相连接(P0口接D0~D7)。8255A的RESET, ,RD WR CS 分别与MCS-51单片机的RESET, ,RD 相连, 接P2.7,单 WR 片机地址线最低2位分别接8255A芯片的A1,A0。PA, PB, PC及 控制寄存器的地址分别是7FFCH, 7FFDH, 7FFEH和7FFFH。 [例题]如图上页所示,假设8255A芯片的PA接一组8只状态指示灯,PB接一组8个开关,现须将开关闭合的状态输入到片内60H单元保存,将70H单元 的内容送状态指示灯显示,并Z位PC7引脚,编写相应程序。 解:根据题意,设Z8255A的A口方式0输出,B口方式0输入,C口高四位输 出 , 则 8255A 的 方 式 字 为 82H ( B ) , C 口 Z 位 / 复 位 字 为 0FH (B),8255A的方式字及Z位/复位控制字地址为7FFFH。初始化 过程及输入/输出的程序如下:ORG 0000H LJMP START ORG 0030H START : MOV SP , #60H DSP8255: MOV DPTR, #7FFFH ; 数据指针指向8255A控制口 MOV A, #82H MOVX @DPTR, A ; 工作方式字送8255A控制口 MOV A, #0FH MOVX @DPTR, A ; C口Z位/复位字送8255A控制口 MOV DPTR, #7FFDH ; 数据指针指向8255A 的B口 MOVX A, @DPTR MOV 60H, A ; 将B口开关状态送入60H单元 MOV DPTR, #7FFCH ; 数据指针指向8255A 的A口 MOV A, 70H MOVX @DPTR, A ; 70H单元内容A口指示灯显示 RET END 2.RAM/IO扩展芯片8155 (1)结构与引脚 8155 芯 片 内 具 有 256B 的 静态RAM,2个8位可编程并行I/O口PA、PB, 1个6位可编程并行I/O口PC, 1个14位计数器。其特 点是接口简单、内部资源丰富、应用广泛。引脚图如右图所示。 8155的结构 (2)8155芯片的RAM和I/O地址编码8155的I/O端口及RAM地址在单片机应用系统中与外部数 据存储器是统一编址的,其控制操作如左下表所示,对应I/O口 寄存器的地址编码如右下表所示。 CE* 0 0IO/M* 1 1A7 × ×A6 × ×A5 × ×A4 × ×A3 × ×A2 0 0A1 0 0A0 0 1所选的端口 命令/状态寄存器 A口0 00 01 11 1× ×× ×× ×× ×× ×× ×× ×× ×× ×× ×0 01 11 10 00 10 1B口 C口计数器低8位 计数器高6位00××××××××RAM单元 (3)命令/状态寄存器 8155芯片的命令/状态寄存器物理上只有一个端口地址,对 该端口写操作,命令字被写入命令寄存器;对该端口读操作,则 从状态寄存器读出状态字。8155的命令字格式如下图所示。 8155的状态字格式如下图所示。8155有2种工作方式:基本I/O和选通I/O。 (4)定时器/计数器8155芯片内有一个14位的减法计数器,可对输入脉冲进行减法计数,它可以在0002H~3FFFH之间选择计数器初值,TIMER IN为定时器时钟输入引脚,TIMER OUT为定时器输出 引脚,可输出方波、脉冲等信号。定时器的计数单元和工作方式由8155内部两个寄存器确定。格式如下图所示。其中,高字节寄存器的最高两位M2, M1用于设定定时器/计数器的工作方式。 M2,M1 定义定时/计数器从TIMEROUT输出信号的形式:M2,M1=00 输出单个方波M2,M1=01 输出连续方波 M2,M1=10 输出单个脉冲计数开始单方波宽度约等 计数结束 于初值的一半 常常用作分频器 (自动重装初值)负脉冲宽度约等于 输入TI的时钟周期 常常用作分频器 (自动重装初值)M2,M1=11 输出连续脉冲 定时器/计数器的使用(初始化):① 对(04H)(05H)寄存器装入14位初值和输出信号形式。14位初 值的范围是2―3FFFH。② 启动定时器/计数器。即对命令/状态字寄存器(00H)的最高两 位M2,M1写入“11”。 ③ 如果定时器/计数器在运行中要改换新的时间常数,必须先 装入新的初值,然后再发送一次启动命令,即写入:M2, M1=11 。 注意:8155定时器/计数器的最小初值为2。分频应用时,初值若 为偶数,则输出等占空比方波;若为奇数,则正半周多一个脉冲 周期。 (5)接口与编程 8155芯片可以直接与MCS-51单片机连接,不需要任何外加 逻辑电路,扩展一片8155系统可以增加256B片外RAM、22位I/O 口线及一个14位减法计数器,MCS-51与8155芯片的连接电路如 下图所示。 上页图中RAM和各端口的地址为: RAM字节地址范围:7E00H~7EFFH;命令/状态寄存器: 7F00H;PA口:7F01H;PB口:7F02H;PC口:7F03H;定时 器低8位寄存器:7F04H;定时器高8位寄存器:7F05H。 [例题] 在上页图中,将单片机片内RAM 40H~4FH单元的内容, 送8155芯片内的00H~0FH单元,并设定8155芯片的工作方式为: A口基本输入方式,B口基本输出方式,C口输入方式,定时器 作为方波发生器,对输入脉冲100分频。 解:程序如下:ORG 0000H LJMP START ORG 0030H START : MOV SP , #60H LP:MOV R0, 40H ; CPU片内RAM 40H单元地址指针送R0 MOV DPTR, #7E00H ; 数据指针指向8155内部RAM单元 MOV A, @R0 ; 数据送累加器A MOVX @DPTR, A ; 数据从累加器A送8155内部RAM单元 INC DPTR ; 指向下一个8155内部RAM单元 INC R0 ; 指向下一个CPU内部RAM单元 CJNE R0, #50H,LP ; 数据未传送完返回 MOV DPTR, #7F04H ; 指向定时器低8位 MOV A, #64H ; 分频系数(64)16=(100)10 MOVX @DPTR, A ; 低8位初值装入 INC DPTR ; 指向定时器高8位 MOV A, #40H ; 设定时器方式为连续方波(40H=B) MOVX @DPTR, A ; 定时器/计数器方式及高6位初值装入 MOV DPTR, #7F00H ; 数据指针指向控制字寄存器 MOV A, #0C2H ; 设定A, B, C口方式 MOVX @DPTR, A ; 启动定时器(0C2H=B) RET END 4.4时钟芯片的扩展 时钟芯片概述4.4.14.4.2 DS12C887的结构及工作原理4.4.3 DS12C887与MCS-51的接口4.4.4 DS12C887的应用举例 实现实时时钟的方法:(1)软件时钟:由软件计时实现。其特点是硬件开销小、成本 低、外围电路简单、占用CPU的时间、计时精度低、走时误差较大。(2)硬件时钟:由硬件时钟芯片实现,其特点是计时精确,不 占用CPU资源,扩展电路简单。在单片机系统中应用较为广泛。 (3)GPS时钟:由全球卫星定位系统提供。其特点是精度高,成 本高。
4.4.1 时钟芯片概述 1.DS1302 DS1302是美国达拉斯(Dallas)半导体公司推 出的一种高性能、低功耗、带RAM的实时时钟芯片, 它可以对年、月、日、星期、时、分、秒进行计时, 且具有闰年补偿功能。采用三线串行数据传输接口与 CPU进行同步通信,内部有一个31B的高速RAM,工 作电压范围为2.5~5.5V。 2. DS12887DS12887是实时日历时钟芯片。
4.4.2DS12C887的结构及工作原理DS12C887是美国Dallas公司生产的实时日历时钟芯片,采 用CMOS技术,与MC146818B和DS1287管脚兼容,特点如下: (1)具有秒、分、时、星期、日、月、年计数功能,有12小时 制和24小时制两种模式。 (2)可实现闰年调整。时间可用二进制数和BCD码表示。 (3)内部有128字节RAM,其数据具有掉电保护功能。 (4)可以选择Motorola和Intel总线时序。通过编程可实现多种 方波输出。 (5)工作电压为4.5~5.5V,工作电流为7~15mA。在断电情 况下运行十年以上不丢失数据。 (6)功耗低、外围接口简单、精度高、工作稳定可靠,可广泛 用于各种需要较高精度的实时时钟场合中。 1. DS12C887的基本组成及引脚 组成: 石英晶体振荡器、锂电池、总线接口、控制寄存器A~D、实时时钟、日历时钟、报警时钟、方波电路和用户RAM等。24脚DIP封装,其引 脚如下图所示。 引脚的功能如下: MOT:模式选择( Motorola模式和Intel模式)。 SQW:方波输出,通过对控制寄存器A编程,有13种方波信号的输出。 AD0~AD7:地址/数据复用总线。 AS:地址锁存。 WR :写数据控制输入。 RD :读数据控制输入。 CS :片选信号输入线。 IRQ :中断请求输出线。 RESET :复位输入线。 NC:空引脚。 2. DS12C887的状态控制寄存器 DS12C887状态控制寄存器及存储单元功能表如下表所示。 (1)状态控制寄存器A(地址为xx0AH) 控制寄存器A控制字的格式如下表所示。其中: UIP位:更新周期标志位。DV0~DV2:芯片内部振荡器RTC控制位。RS3~RS0:周期性中断或可编程方波输出速率选择位。各 种不同的组合可以产生不同的输出。 (2)控制寄存器B(地址为xx0BH) 控制寄存器B控制字的格式如下表所示。其中:SET位:更新周期/芯片停止工作选择位。PIE, AIE, UIE位:周期中断、报警中断、更新结束中断允许位。 SQWE位:方波输出允许位。DM位:时标寄存器用十进制BCD码表示或用二进制表示格式选择位。24/12位:24/12小时模式设Z位。 DSE位:夏令时服务位。 (3)控制寄存器C(地址为xx0CH) 控制寄存器C控制字的格式如下表所示。 D7 IRQF 其中:IRQF位:中断申请标志位。D6 PFD5 AFD4 UFD3 0D2 0D1 0D0 0PF, AF, UF位:周期中断、报警中断、更新结束中断标志位。以上四个标志位在程序读取状态控制寄存器C的内容后,或者引脚 变有效时(低电平),自动清0。D0~D3位:保留标志位。 (4)控制寄存器D(地址为xx0DH) 控制寄存器D控制字的格式如下表所示。D7 VRT D6 0 D5 0 D4 0 D3 0 D2 0 D1 0 D0 0控制寄存器D只有VRT位可用,该位用于指示芯片内锂电 池的工作状态。正常时,VRT=1,锂电池耗尽时,VRT=0, 此时读出的数据无效。该寄存器的其他各位均为厂家保留位, 读出值始终为零,不允许用户向这些位写入数据。 3.DS12C887的中断和更新周期 DS12C887处于正常工作状态时,每秒将产生一个更新周期。 更新周期的基本功能为: (1)刷新各个时标寄存器的内容,同时,秒时标寄存器内容 加1,并检查其他时标寄存器内容是否有溢出,如有溢出则相应 的日、月、年进位。 (2)检查时、分、秒报警时标寄存器的内容是否与对应时标 寄存器的内容相符。 避开更新周期内访问时标寄存器的方案: (1)利用更新周期结束发出的中断,提醒CPU将有998ms左 右的时间去获取有效的数据。 (2)利用寄存器A中的UIP位来指示芯片是否处于更新周期。 在UIP位从低变高到244μs后,芯片将开始其更新周期,到UIP位 为低电平时,则利用244μs的间隔时间去读取时标信息。 4.4.3DS12C887与MCS-51的接口由于DS12C887片内自带地址锁存器,故AD0~AD7与单片机 的P0口直接相连,将单片机的ALE信号连到DS12C887的AS引脚。 其他的引脚与单片机的连接如下图所示。DS12C887内部存储器 起始地址为7F00H,时间、日历及报警信息分别存储在7F00H~ 7F09H单元中,状态控制寄存器A~D的地址分别为:7F0AH, 7F0BH, 7F0CH, 7F0DH。硬件电路图 4.4.4DS12C887的应用举例1.DS12C887的初始化设置(1)禁止芯片内部的更新周期操作(寄存器B中的SET位Z1 ), (2)初始化时标参数寄存器(00H~09H单元)和状态寄存器A, (3)清除寄存器C中的PF、AF、UF标志位。 (4)判断DS12C887内部锂电池的状态,决定片内的RAM内容是否可用。 (5)状态寄存器B中的SET位Z0,芯片开始计时工作。2.DS12C887的闹钟设置DS12C887共有3个闹钟单元(时、分、秒),DS12C887根据用户对3 个单元设定的初值能够提供两种闹钟报警方式。 (1)每日一次报警。 (2)固定间隔时间报警。3.DS12C887的初始化编程 (见教材) 入口T0中断入口DS12C887初始化保护现场T0初始化读DS12C887当前计时 值,更新显示缓冲区显示子程序恢复现场中断返回 4.5系统监控芯片的扩展为了提高单片机应用系统的抗干扰性能,可外扩电源监控电路、看门 狗系统监控芯片等。 电源监控电路:利用监控芯片及少量的外围元件组成的各种有效复位电路, 能对电源异常情况进行监控。其特点是监控功能强,可靠性高,外围元件少, 监控电路简单,体积小。 “看门狗(Watchdog)”:在系统设计中通过软件或者硬件方式在一定的 周期内监控单片机或者其他处理器的运行状况,如果在规定的时间内没有收 到来自被监控单片机或者其他处理器的正确触发信号,则“看门狗”会强制 系统复位,以保证系统在受到干扰时仍能够维持正常的工作状态。 软件“看门狗”是利用单片机内部空闲的定时器/计数器实现的,其特点 是无需外加硬件电路,但占用片内定时器/计数器资源。 硬件“看门狗”是指集成在专用芯片或单片机内部的专用电路,该电路 实际上是一种特殊的定时器。 系统监控芯片(也称处理器监控芯片μP ):可实现实时监控电源电压、看 门狗定时输出、备份电池切换、系统复位等功能。 4.5.1概述1. MAX703~708/813/L系列MAX703~708/813/L系列是美国美信(Maxim)公司推出 的低价位微处理器监控芯片,具有看门狗定时器、自动和手动 复位以及电压门限监测等功能。引脚图如下图所示。 4.5.2MAX692A的工作原理特点:MAX692A是美国Maxim公司的系统监控芯片产品,具有 后备电池切换、电源失效和电池低电压报警,掉电判断(低于 4.4V将产生复位信号)、“看门狗”监控(定时时间为1.6s ) 等功能。工作电压:1.2V~5.5V,静态电流:200μA,备用电 池方式静态电流:50μA。 1.MAX692A引脚功能 DIP(双列直插式)或者SO (表面贴片)8引脚封装,引脚图 如右图所示。 各引脚含义如下: VOUT : 电 源 输 出 引 脚 , 在 正 常 情 况 下 , IOUT=50mA , VOUT= ( VCC?0.5 ) ~ ( VCC?0.25 ) V 之 间 ; 在 备 用 电 池 模 式 下 , IOUT=250μA,VOUT=(VBATT?0.5)~(VBATT?0.25)V。 VCC:电源引脚,电压范围1.2~5.5V。GND:地。PFI:电源失效输入。PFO :电源失效输出,当PFI低于1.25V时,引脚变低,其他情况 为高。WDI:“看门狗”输入。RESET :复位输出引脚。 VBATT:备用电池电源输入。 2.MAX692A工作原理 MAX692A由复位电路、看门狗电路、电压比较和备用电池 切换电路四部分组成。 复位电路:在微处理器上电、掉电及低压供电时,监控器发生复 位脉冲信号。 看门狗电路:定时时间为1.6s。若WDI脚输入一个脉冲,定时器 开始计数,若在1.6s内不能向WDI端输入脉冲,监视器将输出一 个复位信号。 电压比较器:用于低电压检测。电池切换电路:在VBATT端接上电池,MAX692A会在VCC掉电时, 自动切换到电池供电,为RAM提供电源。 4.5.3 MAX692A与MCS-51的接口MAX692A自动监控MCS-51微处理器的典型电路如下页图 所示。在电路设计中,应合理选择R1,R2的值,使得+5V电压跌 落到某个电压值(如本设计中的4.5V),PFI的输入电压低于 1.25V,导致 PFO 输出低电平,作为单片机中断的输入信号,使单 片机系统能够进行一些必要的处理(如保存某些重要数据等)。 R1,R2选取的计算方法如下: R1 1.25V 1 ? ? R1 ? R2 4.5V 3.6 可取R1=10k?,R2=26k?。最好选取精度较高的金属膜电 阻。当+5V电压跌落到4.5V时,VR=1.25V,电压如果继续跌落, PFO 便输出低电平,触发 INT0中断。 复位按钮是为手动复位而设Z的,在系统需要人为干预或者 测试时使用。 硬件电路图 4.5.4MAX692A的编程应用为保证CPU在正常工作时,Watchdog定时器不产生复位信号,必须在 1.6s内改变MAX692A的WDI引脚上输入电平,按照上页图的电路,WDI引 脚的电平变化由MCS-51处理器的P1.0引脚控制,与Watchdog定时器有关的 程序段如下:ORG 0000H LJMP MAIN ORG 0050H MAIN: … SETB P1.0 CLR P1.0 … SETB P1.0 CLR P1.0 … SETB P1.0 CLR P1.0 … LJMP MAIN END ; 转至主程序 ; 初始化 ; 在P1.0引脚上输出一个正脉冲,两个正脉冲之间 的时间间隔小于1.6 在P1.0引脚上输出一个正脉冲; 同上,与上个正脉冲间隔时间小于1.6s 当MCS-51系统受到干扰而使处理器出现“死机”时,单片 机将不能定期执行上述两条指令,则WDI引脚上也就不能定时 输入脉冲,看门狗定时器会在1.6s后产生一个复位信号,使单片 机复位。程序将会从0000H单元重新开始程序的执行,保证了系 统的正常运转。 4.6 总线接口扩展总线种类繁多,可分为局部总线、系统总线和通信总线。通 信总线是系统之间或CPU与外设之间进行通信的一组信号线。通 信总线接口按电气标准及协议来分包括RS-232, RS-422, RS-485, MODEM, USB, IEEE 1394, Internet网络芯片等,它们在不同的 领域得到了广泛的应用。这里主要介绍MCS-51单片机应用系统 中常用的通信总线标准及接口。4.6.1 EIA RS-232C总线标准与接口电路EIA RS-232C是异步串行通信中应用最广泛的标准总线,是 美国EIA(Electronic Industries Association,电子工业联合会) 开发公布的通信协议。适合于数据传输速率在0~20kb/s范围内 的通信,包括了按位串行传输的电气和机械方面的规定。在微机 通信接口中被广泛采用。 1. 电气特性 (1)采取不平衡传输方式,是为点对点(即只用一对收、发设 备)通信而设计的; (2)采用负逻辑。 (3)适用于传送距离不大于15m,速度不高于20kb/s的本地设 备之间通信的场合。 2. 连接器 (1)DB-25连接器 DB-25型连接器的外形及信号线分 配如图右所示。25芯RS-232C接口具有 20mA电流环接口功能,用9, 11, 18, 25 针来实现。 (2)DB-9连接器 DB-9连接器只提供异步通信的9个信 号,其外形及信号线分配如图右所示。 DB-25与DB-9型连接器的引脚分配信 号完全不同。 3. RS-232C的接口信号 RS-232C标准接口有25条线,其中常用的有如下几条:DSR:数据装Z准备好; DTR:数据终端准备好; RTS:请求发送; CTS:允许发送;DCD:接收线信号检出; RI:振铃指示; TXD:发送数据; RXD:接收数据;SGND、PGND:地线,SGND(信号地)、PGND(保护地)。 4.电平转换RS-232C采用负逻辑,为了能够同计算机接口或终端的 TTL器件连接,必须在RS-232C与TTL电路之间进行电平和逻 辑关系的变换。常用的转换器件有MC1488, SN75150(TTL电 平到EIA电平的转换),MC1489, SN75154( EIA电平到TTL 电平的转换),MAX232(完成TTL到EIA的双向电平转换)。MAX232芯片是Maxim公司 生产的低功耗、单电源、双RS232发送/接收器,可实现TTL到 EIA的双向电平转换。其引脚排 列如下图所示。 5. EIA RS-232C与单片机系统的接口RS-232C与单片机系统的接口电路如下图所示。MAX232外围的 4个电解电容Cl, C2, C3, C4,是内部电源转换所需电容,其取值均为 1?F/25V , C5 为 0.1?F 的 去 耦 电 容 。 MAX232 的 引 脚 T1IN, T2IN, R1OUT, R2OUT为接TTL/CMOS电平的引脚,引脚T1OUT, T2OUT, R1IN, R2IN为接RS-232C电平的引脚。 所以,T1IN, T2IN引脚应 与 MCS-51 的 串 行 发 送 引 脚 TXD 相 连 接 。 R1OUT, R2OUT应与MCS-51的串行接 收引脚RXD相连接。T1OUT, T2OUT应与PC机的接收端RD 相连接。R1IN, R2IN应与PC 的发送端TD相连接。硬件电路图 4.6.2 RS-422/RS-485总线标准与接口电路采用RS-232C标准进行通信,负载能力差,通信范围小,传 送距离不超过15m,难以满足远距离的数据传输和控制。当测量 与控制系统中需要长距离数据传输时,广泛采用的是RS-485总线 标准。 1. RS-422串行总线标准 RS-422由RS-232发展而来,是一种单机发送、多机接收的 单向、平衡的通信总线标准。传输速率可达10Mb/s,传输距离 延长到1220m(速率低于100kb/s时),并允许在一条平衡总线上 最多连接10个接收器。 2. RS-485串行总线标准 EIA在RS-422的基础上制定了RS-485标准,增加了多点、 双向通信能力。RS-485总线标准采用平衡发送和差分接收,能检 测低至200mV的电压,具有抑制共模干扰的能力,数据传输可达 千米以上。 3. 平衡传输 RS-422, RS-485的数据信号采用差分传输方式,也称做平 衡传输,它使用一对双绞线,将其中一条线定义为A,另一条线 定义为B。 接收器与发送端的规定相同,收、发端通过平衡双绞线将 AA与BB对应相连,当在接收端AB之间有大于+200mV的电平 时,输出逻辑1,小于?200mV时,输出逻辑0。接收器接收平衡 线上的电平范围通常在200mV至6V之间。 4. RS-485串行总线的特点 机械特性:采用RS-232/RS-485转换器(如ADAM4520)将PC 串行口RS-232信号转换成RS-485信号,或接入TTL/RS-485转换 器(如MAX485),将I/O接口芯片TTL电平信号转换成RS-485 信号,进行远距离高速双向串行通信。 电气特性:RS-485标准采用正逻辑,+1.5V~+6V表示“1”,?6V~?1.5V表示“0”,二线双端半双工差分电平发送与接收,传输距离 1.2km,最高数据传输速率可达10Mb/s,抗干扰能力较强。 功能与规程特性: 网络媒体采用双绞线、同轴电缆或光纤,安装简 易,电缆数量、连接器、中继器、滤波器使用数量较少(每个中继器 可延长线路1.2km),网络成本低廉。 数据帧格式:一般以异步通信为基础,相应的帧格式如下:帧起始地址域控制域帧长度数据帧校验节点数:节点数是指每个RS-485接口芯片的驱动器能驱动多少个标准RS-485负载,其范围为:32~256个。 通信方式:半双工、全双工两种通信方式。如下页图所示。
5. 终端匹配RS-422与RS-485总线网络一般要使用终接电阻进行匹配。但 在短距离与低速率下可以不用考虑终端匹配。一般终端匹配采用 终接电阻方法,RS-422在总线电缆的远端并接电阻,RS-485则应 在总线电缆的开始和末端都需并接终接电阻。终接电阻一般在 RS-422网络中取100?,在RS-485网络中取120?。相当于电缆特 性阻抗的电阻,因为大多数双绞线电缆特性阻抗大约在100~ 120?。电阻匹配的方法简单有效,其缺点是要消耗较大功率。 6.RS-485与单片机系统的接口 单 片 机 与 RS-485 总 线 标 准 之 间必须进行转换,常用的转换芯片 有MAX485, SN5176等。MAX485 芯片是MAXIM公司的电平转换芯 片,其引脚如右图所示。 各引脚含义如下:RO:接收器输出端。若A端高于B端200mV以上,RO为高;否则 RO为低。RE :接收器输出使能端。为低时,RO有效,否则RO为高阻态。 DE:驱动器输出使能端。若DE为高,驱动输出A和B有效,器件 作为线驱动器用(发送);若DE为低,它们呈高阻态,这时 RE 为 低,器件作接收器用(接收)。DI:驱动器输入。DI为低,将迫使输出为低,若DI为高,将迫使 输出为高。 B:反相接收器输入和反相驱动器输出。 A:同相接收器输入和同相驱动器输出。 GND:接地。 VCC:电源正极。 MAX485与单片机系统连接如下图所示。RO与DI是标准的 TTL电平,与MCS-51系统的TXD和RXD直接连接即可。由于 RS-485总线工作于半双工状态,P1.0引脚用于控制MAX485是 工作于收数据状态,还是工作于发数据状态,为低时是收数据。 A, B端为RS-485总线的数据传输线路。硬件电路图 4.6.3 I2C总线标准与接口电路I2C总线(Inter Integrated Circuit Bus):是Philips公司推出的串行总线标准(为二线制)。总线上扩展的外围器件及外设接口通过总线寻址, 是具备总线仲裁和高低速设备同步等功能的高性能多主机总线。1. I2C总线工作原理 组成: 串行数据线SDA和串行时钟线SCL构成的,可发送和接 收数据。 要求: 所有挂接在I2C总线上的器件和接口电路都应具有I2C总线接口,且所有的SDA/SCL同名端相连。总线上所有器件要依靠SDA发送的地址信号寻 址,不需要片选线。特点:组成系统结构简单,占用空间小,无需专门的母板和插座,芯片管脚的数量少,无需片选信号,价格低。允许若干兼容器件共享总线,应用比 较广泛。总线的长度可达7.6m,传送速度可达400kbps,标准速率为100kbps。 支持多个组件。支持多主控器件(某时刻只能有一个主控器件)。I2C总线 上所有设备的SDA, SCL引脚必须外接上拉电阻。 2.I2C总线系统结构一个典型的I2C总线结构如下图所示。系统中所有的器件均有I2C 总线接口,所有器件通过两根线SDA(串行数据线)和SCL(串行时 钟线)连接到I2C总线上,并通过寻址识别。 I2C总线中的器件既可以作为主控器,也可以作为被控器,系统 中每个器件均具有惟一的地址,各器件之间通过寻址确定数据交换方。 任何时刻总线只能有一个主控制器,数据的传输只能在主、从器件间 进行。 6. 单片机的I2C总线接口 如果单片机自带I2C总线接口,则所有I2C器件对应连接到该 总线上即可;若无I2C总线接口,则可以使用I/O口模拟I2C总线。 使用单片机I/O口模拟I2C总线时,硬件连接非常简单,只需 两条I/O口线即可,在软件中分别定义成SCL和SDA。MCS-51单 片机实现I2C总线接口电路如下图所示。 电路中单片机的P1.0引脚作 为串行时钟线SCL,P1.1引脚作 为串行数据线SDA,通过程序模 拟I2C串行总线的通信方式。I2C 总线适用于通信速度要求不高而 体积要求较高的应用系统。 硬件电路图 7. I2C总线的典型应用 X24C04是Xicor公司的CMOS 4096位串行E2PROM,内部组织为512×8位。16字节页面写,采用I2C总线结构。与MCS51单片机接口如下图所示。上拉电阻R1,R2的选择可参考 X24C04的手册。硬件电路图 8051通过I2C总线接口对X24C04进行单字节写操作。 子程序如下:ORG 1000H BSEND: MOV R2, #08H SENDA: CLR P3.2 RLC A MOV P3.3, C SETB P3.2 DJNZ R2, SENDA CLR P3.2 SETB P3.3 SETB P3.2 RET END ; 1字节8位 ; SCLZ低 ; 左移一位 ; 写一位 ; SCLZ高 ; 写完8个字节? ; 应答信号 ; SDAZ高 ; SCLZ高 4.6.4其他常用总线标准1. 通用串行总线USB通用串行总线USB(Universal Serial Bus)是在1994年底由康柏、IBM、 Microsoft等多家公司联合制定的。其特点是数据传输速率高(达480Mbps )、 传输可靠、传输距离不大于5米,可通过菊花链的形式同时挂接多个(可达 127个)USB设备,能为设备供电,可提供100mA~500mA的电流,支持热 插拔,具有实时性、联合性、多能性。USB接口主要应用于计算机周边外部 设备,如电话、MODEM、键盘、U盘、光驱、摇杆、磁带机、软驱、扫描 仪、打印机、数码相机/摄相机等。2. MODEM (Modulator Demodulator,调制解调器)通信原理:MODEM可实现数字信号到模拟信号及模拟信号到数字信号的转 换。来自发送端的数字信号被MODEM转换成模拟音频信号,利用公共电话 网传输到接收端的MODEM上。在接收端接收到的模拟音频信号被MODEM 转换为相应的数字信号,传送到接收数据终端。 通信系统操作模式:全双工模式和半双工模式。 适用于较远距离利用电话线或电力线进行远程数据传输的场合。 3.单总线单总线(1-Wire)是Dallas公司推出的外围串行扩展总线,它只有一根 数据输出线DQ,总线上所有器件都挂在DQ上。适用于单主机系统,能够控 制一个或多个从机设备。主机可以是微控制器,从机可以是单总线器件,它 们之间的数据交换只通过一条信号线。4.串行外设总线SPISPI(Serial Peripheral Interface)是Motorola公司推出的串行外设总线。 由时钟线SCK、数据线MOSI(主发从收)和MISO(主收从发)组成。单 片机与外围扩展器件在时钟线SCK、数据线MOSI, MSIO上都是同名端相连。 带SPI接口的外围器件都有片选端。其特点是数据传送速度较高(可达1.05 Mbps ),硬件扩展比较简单,软件实现方便。5. 高性能的串行总线标准IEEE 1394IEEE 1394串行总线标准适合视频数据传输,支持外设热插拔、同步数 据传输,同时可为外设提供电源。Apple公司称之为火线(Fire Wire), Sony公司称之为i.Link,Texas Instruments公司称之为Lynx。目前主要用于 计算机及外围设备。 其特点是高速(可达400Mbps )、实时,它无需集线器,每个总线最多 可 以 支 持 63 个 设 备 , 有 1023 个 总 线 进 行 互 连 。 它 是 一 个 对 等 标 准 。 IEEE1394标准定义了两种总线模式( Backplane和Cable模式 )。 作业:4.7 4.9 4.16
基于51单片机的4位数码管电子钟_电子/电路_工程科技_专业资料。用数码管显示时分的的电子钟 原理图 附:源程序 /*** 标题: 定时器中断 24 小时时钟程序 效果:...51单片机驱动4位数码管的实现方法_电子/电路_工程科技_专业资料。基于51单片机的基础应用,相当粗浅,不代表辽宁工业大学的水平,谢谢。但希望对辽工的单片机初学者有所...基于51单片机的数码管显示4位密码锁_电子/电路_工程科技_专业资料。基于51单片机的数码管显示4位密码锁 单片机原理课程设计论文 班级: 电气 1136 班学号: ...51 单片机控制四相步进电机 2009 年 07 月 21 日 星期二 12:44 51 单片机控制四相步进电机
18:53 接触单片机快两年了,不过只是非常业余的兴趣,...本次课程设计是设计一个简易的四则运算计算器,四则运算器设计要求: 用 AT89C51 单片机设计一个简易的一位四则运算器,扩展 4×4 个键,分别表示 为 0~9、...51单片机控制两相四线步进电机_电子/电路_工程科技_专业资料。51单片机控制两相四线步进电机关于步进电机的工作原理大家可以在网上查查,这里主要介绍的是两相四线的步进...51单片机矩阵按键程序4 4_电子/电路_工程科技_专业资料。//以下程序都是在 VC++6.0 上调试运行过的程序,没有错误,没有警告。 //单片机是 STC89C52RC,但是...51单片机 4路抢答器_电子/电路_工程科技_专业资料。51单片机 C语言 4路抢答器 protues仿真图 先说下我这个 4 路抢答器的功能: 5 个按键, 第五个是复位。 ...为什么 80C51 单片机存储器在物理结构上可分 4 个空间,在逻辑上只有 3 个
17:30 四比一 | 分类:物理学 | 浏览 2320 次 我来帮他解答 提问...4×4矩阵键盘51单片机识别实验与程序_电子/电路_工程科技_专业资料。4×4矩阵键盘51单片机识别实验与程序,用AT89S51的并行口P1接4×4矩阵键盘,以P1.0-P1.3...
All rights reserved Powered by
copyright &copyright 。文档资料库内容来自网络,如有侵犯请联系客服。

我要回帖

更多关于 单片机中断程序 的文章

 

随机推荐