《片机系统扩展》PPT课件.ppt

上传人:wuy****n92 文档编号:70495234 上传时间:2023-01-21 格式:PPT 页数:67 大小:709KB
返回 下载 相关 举报
《片机系统扩展》PPT课件.ppt_第1页
第1页 / 共67页
《片机系统扩展》PPT课件.ppt_第2页
第2页 / 共67页
点击查看更多>>
资源描述

《《片机系统扩展》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《片机系统扩展》PPT课件.ppt(67页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、单片机系统扩展单片机系统扩展7.1 扩展使用的三总线扩展使用的三总线地址总线:地址总线:P0低8位P2高8位数据总线:数据总线:P0控制总线控制总线:RD、WR、ALE、PSEN(读、读、写、写、地址锁存允许、地址锁存允许、外部外部ROM读选通读选通)程序存储器的扩展程序存储器的扩展 在在8051单片机外部扩展单片机外部扩展8K字节程序存储器字节程序存储器2764的连接图的连接图数据存储器扩展数据存储器扩展在在8051单片机外部扩展一片单片机外部扩展一片8K字节数据存储器字节数据存储器6264的连接图的连接图7.2系统扩展选址方法系统扩展选址方法1 1、线选法:、线选法:利用单片机的一根空闲高

2、位地址线(通常采用P2的某根口线)选中一个外部扩展I/O端口芯片,若要选中某个芯片工作,将对应芯片的片选信号端设为低电平,其它未被选中芯片的片选信号端设为高电平,从而保证只选中指定的芯片工作。优点:不需要地址译码器,可以节省器件,减小 体积,降低成本 缺点:可寻址的器件数目受到很大限制,而且地 址空间不连续,这些都会给系统设计带来 不便。线选法进行外部扩展举例线选法进行外部扩展举例 6264的地址范围:的地址范围:高高8位位地址变化范围地址变化范围 P2.7 P2.6 P2.5 P2.4 P2.3 P2.2 P2.1 P2.0 1 1 0 低低8位位地址变化范围:地址变化范围:P0.7 P0.

3、6 P0.5 P0.4 P0.3 P0.2 P0.1 P0.0 由此可得由此可得6264的地址范围为:的地址范围为:C000HDFFFH。8255的地址范围:的地址范围:高高8位地址变化范围位地址变化范围:P2.7 P2.6 P2.5 P2.4 P2.3 P2.2 P2.1 P2.0 1 0 1 1 1 1 1 1低低8位地址变化范围:位地址变化范围:P0.7 P0.6 P0.5 P0.4 P0.3 P0.2 P0.1 P0.0 1 1 1 1 1 1 由此可得由此可得8255的地址范围为:的地址范围为:BFFCHBFFFH。0832的地址:的地址:高高8位地址位地址变变化范化范围围:P2.7

4、 P2.6 P2.5 P2.4 P2.3 P2.2 P2.1 P2.0 0 1 1 1 1 1 1 1 低低8位地址位地址变变化范化范围围:P0.7 P0.6 P0.5 P0.4 P0.3 P0.2 P0.1 P0.0 1 1 1 1 1 1 1 1由此可得由此可得0832的地址的地址为为:7FFFH。2 2、地址译码法地址译码法 对于容量较大的存储器或I/O端口较多的单片机应用系统进行外部扩展,当芯片所需要的片选信号多于可利用的高位地址线时,就需要采用地址译码法。地址译码法必须采用地址译码器,常用的地址译码器有3-8译码器74LS138、双2-4译码器74LS139等。扩扩 展展 器器 件件

5、片内字片内字节节地址数地址数地址地址编码编码626462648K8K0000H0000H1FFFH1FFFH825582554 43FFCH3FFCH3FFFH3FFFH083208321 17FFFH7FFFH825582554 49FFCH9FFCH9FFFH9FFFH地址译码地址译码进行外部扩展举例进行外部扩展举例 7.3并行并行I/OI/O端口扩展芯片端口扩展芯片一.8255可编程并行I/O接口扩展芯片二.8155可编程并行I/O接口扩展芯片7.3.1 I/O数据的传送方式数据的传送方式为实现和不同外设的速度匹配速度匹配,须根据不同外设选择恰当的I/O数据传送方式数据传送方式。I/O数

6、据传送方式有:同步传送、异步传送和中断传送。1同步传送同步传送又称无条件传送。当外设速度和单片机的速度相比拟时,常采用同步传送方式,典型的同步传送是单片机和外部数据单片机和外部数据存储器之间存储器之间的数据传送数据传送。2查询传送查询传送又称有条件传送(也称异步式传送)。通过查询外设“准备好”后,再进行数据传送。优点是通用性好,硬件连线和查询程序简单,但工作效率不高。113中断传送中断传送为提高提高单片机对外设的工作效率工作效率,常采用中断传送方式,来实现I/O数据的传送。单片机只有在外设准备好后,才中断只有在外设准备好后,才中断主程序的执行主程序的执行,从而进入与外设数据传送的中断服务子程序

7、,进行数据传送。中断服务完成后又返回主程序断点处继续执行。采用中断方式可大大提高工作效率提高工作效率。7.3.2 I/O接口电路接口电路常用的外围I/O接口芯片:(1)82C55:可编程通用并行接口(3个8位I/O口);12 (2)81C55:可编程的IO/RAM扩展接口电路(2个8位I/O口,1个6位I/O口,256RAM单元,1个14位的减法计数器)。都可以和AT89S51直接连接,接口逻辑简单。7.3.4 AT89S51扩展扩展I/O接口芯片接口芯片82C55的设计的设计先介绍可编程并行I/O接口芯片82C55的应用特性应用特性,然后介绍AT89S51与82C55的接口电路接口电路以及软

8、件设计软件设计。一、一、82C55芯片简介芯片简介Intel公司的可编程并行I/O接口芯片,3个个8位并行位并行I/O口,口,3种工作方式,种工作方式,单片机与多种外设连接时的中间接口电路。中间接口电路。引脚及内部结构如图图9-1和图图9-2。1382C55的引脚图82C55的内部结构14(1)引脚说明引脚说明共40个引脚个引脚,引脚功能如下引脚功能如下:D7D0:三态双向数据线,与单片机的P0口连接,用来与单片机之间传送数据信息。CS*:片选信号线,低有效,表示本芯片被选中。RD*:读信号线,低有效,读82C55端口数据的控制信号。WR*:写信号线,低电平有效,用来向82C55写入端口数据的

9、控制信号。Vcc:+5V电源。15 PA7PA0:端口A输入/输出线。PB7PB0:端口B输入/输出线。PC7PC0:端口C输入/输出线。A1、A0:地址线,用来选择82C55内部的4个端口。RESET:复位引脚,高电平有效。(2)内部结构内部结构如图图,3个并行数据输入个并行数据输入/输出端口输出端口,两种工作方式两种工作方式的控制电路,一个读/写控制逻辑电路和一个8位数据总线缓冲器。各部件的功能如下:16端口端口PA、PB、PC3个8位并行口PA、PB和PC,都可选为输入/输出工作模式,功能和结构上有差异。PA口:口:一个8位数据输出锁存器和缓冲器输出锁存器和缓冲器;一个8位数据输入锁存输

10、入锁存器。PB口:口:一个8位数据输出锁存器和缓冲器输出锁存器和缓冲器;一个8位数据输入缓冲器输入缓冲器。PC口:口:一个8位的输出锁存器输出锁存器;一个8位数据输入缓冲器输入缓冲器。通常PA口、口、PB口口作为输入/输出口,PC口口既可作为输入/输出口,也可在软件控制下,分为两个4位端口,作为端口PA、PB选通方式操作时的状态控制信号。17A组和组和B组控制电路组控制电路是两组根据AT89S51写入的“命令字命令字”控制82C55工作方式的控制电路。A组组控制PA口和PC口的上半部上半部(PC7PC4);B组组控制PB口和PC口的下半部下半部(PC3PC0),并可用“命令字”来对端口PC的每

11、一位实现按位置“1”或清“0”。数据总线缓冲器数据总线缓冲器数据总线缓冲器是一个三态双向8位缓冲器,作为82C55与系统总线之间的接口,用来传送用来传送数据、指令、控制命令以及外部状态信息。18读读/写控制逻辑电路写控制逻辑电路接收接收AT89S51单片机发来单片机发来的控制信号控制信号RD*、WR*、RESET、地址信号地址信号A1、A0等,然后根据控制信号的要求,端口数据被AT89S51单片机读出,或者将AT89S51单片机送来的数据写入端口。各端口工作状态与控制信号的关系如表表9-1。1920二、二、工作方式选择控制字及端口工作方式选择控制字及端口PC置位置位/复位控制字复位控制字可向向

12、82C55控制寄存器写入两种控制寄存器写入两种不同的控制字不同的控制字。1工作方式选择控制字工作方式选择控制字82C55有3种种基本工作方式:(1)方式)方式0基本输入/输出;(2)方式)方式1选通输入/输出;(3)方式)方式2双向传送(仅PA口有此工作方式)。3种工作方式方式控制字来决定。格式格式如图图。最高位D7=1,为本方式控制字的标志标志,以便与另一控制字相区别(最高位D7=0)。212282C55的方式控制字格式PCPC口分两部分口分两部分,随,随PAPA口口称为称为A A组组,随,随PBPB口口称为称为B B组组。其中。其中PAPA口口可工作于方式可工作于方式0 0、1 1和和2

13、2,而,而PBPB口口只能工作在只能工作在方式方式0 0和和1 1。【例【例7-57-5】AT89S51单片机向单片机向82C55的控制字寄存器的控制字寄存器(假设假设端口地址为端口地址为FF7FH)写入工作方式控制字写入工作方式控制字95H,根据图,根据图9-3所所示,可将示,可将82C55编程设置为:编程设置为:PA口方式口方式0输入,输入,PB口方式口方式1输出,输出,PC口的上半部分(口的上半部分(PC7PC4)输出,)输出,PC口的下半口的下半部分(部分(PC3PC0)输入。)输入。#include#define COM8255 XBYTE0 xff7f/*0 xff7f为为82C5

14、5的控制寄存器地址的控制寄存器地址*/#define uchar unsigned charvoid init8255(void)23COM 8255=0 x95;/*工作方式选择控制字写入工作方式选择控制字写入82C55的控制的控制寄存器寄存器*/2PC口按位置位口按位置位/复位控制字复位控制字 82C55的另一个控制字为的另一个控制字为PC口按位置位口按位置位/复位控制字。即复位控制字。即PC口口8位中的任何一位,可用一个写入位中的任何一位,可用一个写入82C55控制口的置位控制口的置位/复位复位控制字来对控制字来对PC口按位置口按位置“1”或清或清“0”。该功能主要用于位。该功能主要用于

15、位控。控。PC口按位置位口按位置位/复位控制字的格式如复位控制字的格式如图图所示。所示。【例【例7-6】AT89S51单片机向单片机向82C55的控制字寄存器写入工的控制字寄存器写入工作方式控制字作方式控制字07H,则,则PC3置置1;08H写入控制口,则写入控制口,则PC4清清0。假设假设82C55的端口寄存器的地址为的端口寄存器的地址为FF7FH,程序段如,程序段如下:下:#include#define COM 8255 XBYTE0 xff7f /*0 xff7f为为82C55的控制寄存器地址的控制寄存器地址*/void init8255(void)COM 8255=0 x07;/*PC

16、置置/复位控制字写控制寄存器,复位控制字写控制寄存器,PC3=1*/COM 8255=0 x08;/*PC置置/复位控制字写入控制寄存器,复位控制字写入控制寄存器,PC4=0*/25图图PC口按位置位/复位控制字格式三三 82C55的的3种工作方式种工作方式1方式方式0基本输入基本输入/输出方式输出方式。T89S51可对82C55进行I/O数据的无条件传送无条件传送。例如,例如,AT89S51单片机从82C55的某一输入口读入一组开关状态,从82C55输出控制一组指示灯的亮、灭。并不需并不需要任何条件,要任何条件,外设I/O数据可在82C55的各端口得到锁存和缓冲。因此,方式方式0称为基本输入

17、基本输入/输出方式输出方式。方式0下,3个端口都可以由软件设置为输入或输出,不需要应答联络信号。方式0基本功能基本功能:27 (1)具有两个8位端口(PA、PB)和两个4位端口(PC的上半部分和下半部分);(2)任何端口都可以设定为输入或输出,各端口的输入、输出共有16种组合。PA口、口、PB口和口和PC口口均可设定为均可设定为方式方式0,并可根据需要,向控制寄存器写入工作方式控制字,规定各端口为输入或输出方式。【例【例7-7】假设假设82C55的控制字寄存器端口地址为的控制字寄存器端口地址为FF7FH,则令,则令PA口和口和PC口的高口的高4位工作在方式位工作在方式0输出,输出,PB口和口和

18、PC口的低口的低4位工作于方式位工作于方式0输入,初始化程序如下:输入,初始化程序如下:ucharxdataCOM8255_at_0 xff7f/*0 xff7f为82C55的控制寄存器地址*/voidinit8255(void)COM8255=0 x83;/*工作方式选择控制字写入控制寄存器*/292 2方式方式1 1应答联络应答联络的输入的输入/输出工作方式输出工作方式。PA口、PB口皆可设成这种工作方式。方式1下,82C55的PA口和口和PB口口通常用于I/O数据的传送,PC口口用作PA口和PB口的应答联络信号线应答联络信号线,以实现采用中断方式来传送I/O数据。PC口的PC7PC0的应

19、答联络线是规定好的应答联络线是规定好的,其各位分配如图如图所示,图中,标有I/O的各位仍可用作基本输入/输出,不作应答联络用。介绍方式1输入/输出时的应答联络信号应答联络信号与工作原理工作原理。30图图 方式方式1输入应答联络信号输入应答联络信号(1)方式)方式1输入输入方式1输入应答联络信号如图图。其中STB*与IBF为一对一对应答联络信号。各应答联络信号应答联络信号的功能功能如下。STB*:是由输入外设输入外设发给82C55的选通输入信号选通输入信号,低有效。IBF:输入缓冲器满,应答信号。82C55通知外设已收到外设发来的且已进入输入缓冲器的数据,高有效。INTR:由82C55向AT89

20、S51单片机发出的中断请求信号,高有效。INTEA:控制PA口是否允许中断口是否允许中断的控制信号,由PC4的置位/复位来控制。32INTEB:控制PB口是否允许中断的控制信号,由PC2的置位/复位来控制。方式1输入如图图。下面以PA口的方式1输入为例,介绍方方式式1输入的工作过程。输入的工作过程。当外设向82C55输入一个数据并送到PA7PA0时,外设自动在STB*上向82C55发送一个低电平选通信号。82C55收到STB*后,先把PA7PA0输入的数据存入存入PA口的输入数据缓冲/锁存器,然后使输出应答线IBF变为高,通知输入外设,PA口已收到它送来的数据。82C55检测到STB*由低电平

21、变为高电平、IBFA(PC5)为“1”状态和中断允许INTEA(PC4)=1时,使INTRA(PC3)33图图PA口方式1输入工作过程示意图变为高电平变为高电平,向单片机发出中断请求。INTEA的状态可由用户通过指令对PC4的单一置位/复位控制字来控制。单片机响应中断后,进入中断服务子程序进入中断服务子程序来读取读取PA口口的外设发来的输入数据的外设发来的输入数据。当输入数据被单片机读走后,82C55撤销撤销INTRA上的中断请求上的中断请求,并使IBFA变低低,通知输入通知输入外设外设可传送下一个输入数据。35(2)方式)方式1输出输出方式1输出时,应答联络信号如图图。OBF*与与ACK*构

22、成一一对对应答联络信号应答联络信号,应答联络信号功能如下。OBF*:端口输出缓冲器满信号,低有效,它是82C55发给外设的联络信号,表示外设可以将数据取走。ACK*:外设应答信号,低有效。表示外设已把82C55发出的数据取走。INTR:中断请求信号,高有效。表示该数据已被外设取走,向单片机单片机发中断请求,如果AT89S51响应该中断,在中断服务子程序中向82C55写入要输出的下一数据。36图图方式1输出应答联络信号INTEA控制PA口是否允许中断,由PC6控制。INTEB控制PB口是否允许中断,由PC2控制。方式1输出工作示意如图图。以PB口的方式口的方式1输出输出为例,介绍工作过程。AT8

23、9S51可以通过“MOVX Ri,A”指令把输出数据送到B口的输出数据锁存器,82C55收到后便令输出缓冲器满引脚OBF*(PC1)变低,以通知输出设备输出的数据已在PB口的PB7PB0上。输出外设收到OBF*上低电平后,先从PB7PB0上取走输出数据,然后使ACKB*变低电平,以通知82C55输出外设已收到82C55输出的数据。38图图PB口方式1输出工作过程示意图39 82C55从应答输入线从应答输入线ACKB*收到低电平后就对收到低电平后就对OBF*和和中断允许控制位中断允许控制位INTEB状态进行检测,若皆为高电平,则状态进行检测,若皆为高电平,则INTRB变为高电平变为高电平而向单片

24、机请求中断。而向单片机请求中断。AT89S51单片机单片机响应响应INTRB上中断请求后便可通过中断上中断请求后便可通过中断服务程序把服务程序把下一个输出数据下一个输出数据送到送到PB口的输出数据锁存器。重口的输出数据锁存器。重复上述过程,完成数据的输出。复上述过程,完成数据的输出。【例例7-8】设置设置PA口为应答方式输入,口为应答方式输入,PB口为应答方式输口为应答方式输出。假设出。假设82C55的端口寄存器的地址为的端口寄存器的地址为FF7FH,程序如下:,程序如下:uchar xdata COM8255 _at_0 xff7f/*0 xff7f为为82C55的控制寄存器地址的控制寄存器

25、地址*/40voidinit8255(void)COM8255=0 xb4;/*工作方式选择控制字写入控制寄存器*/3方式方式2只有PA口有方式2。图图 为工作示意图。方式方式2是是方式方式1输入输入和和输出输出组合组合。PA7PA0为双向I/O总线。当作为输入口使用,PA7PA0受STBA 和IBFA控制;当作输出端口输出端口使用,PA7PA0受OBFA*、ACKA*控制。图图9-9PA口在方式2下的工作示意图方式方式2 2特别适用于像键盘、显示器一类的外部设备特别适用于像键盘、显示器一类的外部设备,因为,因为有时需要把键盘上输入的编码信号通过有时需要把键盘上输入的编码信号通过PAPA口送给

26、单片机,有口送给单片机,有时又需把单片机发出的数据通过时又需把单片机发出的数据通过PAPA口送给显示器显示。口送给显示器显示。7.3.4 AT89S51单片机与单片机与82C55的接口设计的接口设计1硬件接口电路硬件接口电路如图为AT89S51扩展一片82C55的电路。P0.1、P0.0经经74LS373与与82C55的的A1、A0连接连接;P0.7经74LS373与片选端CS*相连,其它地址线悬空;82C55的控制线RD*、WR*直接与单片机RD*和和 WR*端相连;单片机数据总线P0.0P0.7与82C55数据线D0D7连接。442确定确定82C55端口地址端口地址图图中中82C5582C

27、55只有只有3 3条线与条线与AT89S51AT89S51地址线相接,片选端地址线相接,片选端 CS*CS*、端口地址选择端端口地址选择端A1A1、A0A0,分别接于,分别接于P0.7P0.7、P0.1P0.1和和P0.0P0.0,其他,其他地址线全悬空。显然只要保证地址线全悬空。显然只要保证P0.7P0.7为低为低电平时,电平时,即可选中即可选中82C5582C55;若;若P0.1P0.1、P0.0P0.0再为再为“00”“00”,则选中,则选中82C5582C55的的PAPA口。同口。同理理P0.1P0.1、P0.0P0.0为为“01”“01”、“10”“10”、“11”“11”分别选中分

28、别选中PBPB口、口、PCPC口及控制口。口及控制口。若端口地址用若端口地址用1616位表示,其他无用端全设为位表示,其他无用端全设为“1”“1”(也可(也可把无用端全设为把无用端全设为“0”“0”),则),则82C5582C55的的A A、B B、C C及控制口及控制口地址地址分别为分别为FF7CHFF7CH、FF7DHFF7DH、FF7EHFF7EH、FF7FHFF7FH。45 图图AT89S51单片机扩展一片82C55的接口电路46如果没有用到的位取如果没有用到的位取“0”“0”,则,则4 4个端口地址分别为个端口地址分别为0000H0000H、0001H0001H、0002H0002H

29、、0003H0003H,只要保证只要保证 、A1A1、A0A0的状态,无用位的状态,无用位设为设为“0”“0”或或“1”“1”均可。均可。3软件编程软件编程在实际设计中,须根据外设的类型选择82C55的操作方式,并在初始化程序中把相应控制字写入控制口在初始化程序中把相应控制字写入控制口。下面根据图图9-10,介绍对82C55进行操作的编程。【例【例7-9】根据上例根据上例图图,要求,要求82C55的的PC口工作在方式口工作在方式0,并从,并从PC5脚输出连续的方波信号,频率为脚输出连续的方波信号,频率为500Hz,参考程,参考程序如下:序如下:47#include#include#define

30、PA8255XBYTE0 xff7c/*0 xff7c为82C55PA端口地址*/#definePB8255XBYTE0 xff7d/*0 xff7d为82C55PB端口地址*/#definePC8255XBYTE0 xff7e/*0 xff7e为82C55PC端口地址*/#defineCOM8255XBYTE0 xff7f/*0 xff7f为82C55控制寄存器地址*/#defineucharunsignedcharexternvoiddelay_1000us();48voidinit8255(void)COM8255=0 x85;/*工作方式选择控制字写入控制寄存器*/voidmain(v

31、oid)init8255(void)for(;)COM8255=0 x0b;/*PC5脚为高电平*/delay_1000us();/*高电平持续1000微秒*/COM8255=0 x0a;/*PC5脚为低电平*/delay_1000us();/*低电平持续1000微秒*/8155 8155可编程并行可编程并行I/OI/O接口扩展芯片接口扩展芯片(1 1)81558155内部结构及引脚功能内部结构及引脚功能(2 2)81558155的控制字格式的控制字格式(3 3)81558155的状态字格式的状态字格式 8155片内可编程定时/计数器由两个8位寄存器组成,低8位和高6位存放计数初值,最高2位控

32、制定时器的工作方式(4 4)81558155的定时器使用的定时器使用(5 5)81558155的端口地址分配的端口地址分配AD7 AD6 AD5 AD4 AD3 AD2 AD1 AD0AD7 AD6 AD5 AD4 AD3 AD2 AD1 AD0选选 中中 的的 寄寄 存存 器器 0 0 0 0 0 0命令命令/状状态态寄存器寄存器 0 0 1 0 0 1PAPA口口 0 1 0 0 1 0PBPB口口 0 1 1 0 1 1PCPC口口 1 0 0 1 0 0定定时计时计数器的低数器的低8 8位寄存器位寄存器 1 0 1 1 0 1定定时计时计数器的高数器的高6 6位寄存器及位寄存器及工作方

33、式字工作方式字(2(2位位)81558155接口扩展举例接口扩展举例(1 1)82558255与单片机连接图与单片机连接图 81558155的端口地址编码为:的端口地址编码为:命令/状态寄存器地址:7F00H,片内RAM字节地址:7E00H7EFFH,PA口地址:7F01H,PB口地址:7F02H,PC口地址:7F03H,定时计数器低位地址:7F04H,定时计数器高位地址:7F05H。若要求若要求81558155的的PAPA、PBPB作为基本输出口,作为基本输出口,PCPC作为基本输作为基本输入口,不允许中断,不启动定时计数器,则命令字为入口,不允许中断,不启动定时计数器,则命令字为03H03

34、H,初始化编程下:,初始化编程下:MOV DPTR,#7F00H MOV DPTR,#7F00H ;81558155命令口地址命令口地址 MOV A,#03H MOV A,#03H MOVX DPTR,A MOVX DPTR,A ;写入命令字;写入命令字(2 2)8155 8155初始化初始化 I2C总线是PHILIPS公司开发的一种简单、双向二线制同步串行总线,它只需要两根线(串行时钟线和串行数据线)即可在连接于总线上的器件之间传送信息。主要特性如下:总线只有两根线:串行时钟线和串行数据线;每个连到总线上的器件都可由软件以唯一的地址寻址,并建立简单的主/从关系,主器件既可作为发送器,也可作为

35、接收器;它是一个真正的多主总线,带有竞争检测和仲裁电路,可使多主机任意同时发送而不破坏总线上的数据;同步时钟允许器件通过总线以不同的波特率进行通信;同步时钟可以作为停止和重新启动串行口发送的握手方式;连接到同一总线的集成电路数只受400PF的最大总线电容的限制。利用利用I2CI2C总线进行系统扩展总线进行系统扩展 I2C总线接口的电气结构如图所示,组成I2C总线的串行数据线SDA和串行时钟线SCL必须经过上拉电阻Rp接到正电源上,连接到总线上的器件的输出级必须为“开漏”或“开集”的形式,以便完成“线与”功能。SDA和SCL都为双向I/O口线,总线空闲时皆为高电平。总线上数据传送最高速率可达10

36、0Kbit/s。I2CI2C总线的电气结构总线的电气结构 I2C总线可以构成多主数据传送系统,但只有带CPU的器件可以成为主器件。主器件发送时钟、启动位、数据工作方式,从器件则接收时钟及数据工作方式。接收或发送则根据数据的传送方向决定。I2C总线上数据传送时的启动、结束和有效状态都由SDA、SCL的电平状态决定,在I2C总线规程中启动和停止条件规定如下:启动条件:在SCL为高电平时,SDA出现一个下降沿则启动I2C总线。停止条件:在SCL为高电平时,SDA出现一个上升沿则停止使用I2C总线。在启动和停止条件之间可转送的数据不受限制,但每个字节必须为8位,先传送最高位,在每个字节之后必须跟一个响

37、应位。主器件收发每个字节后产生一个时钟应答脉冲,在这期间,发送器必须保证 SDA为高,由接收器将SDA拉低,称为应答信号(ACK)。主器件为接收器时,在接收了最后一个字节之后不发应答信号,也称为非应答信号(NOT ACK)。I2CI2C总线的数据传输总线的数据传输总线中每个器件都有自己唯一确定的地址,启动条件后主机发送的第一个字节就是被读写的从器件地址,其中第8位为方向位,“0”(W)表示主器件发送,“1”(R)表示主器件接收。总线上每个器件在启动条件后都把自己的地址与前7位相比较,如相同则器件被选中,产生应答,并根据读写位决定在数据传送中是接收还是发送。在主发送方式下,由主器件先发出启动信号

38、(S),接着发从器件的7位地址(SLA)和表明主器件发送的方向位“0”(W),即这个字节为SLA+W。被寻址的从器件在收到这个字节后,返回一个应答信号(A),在确定主从握手应答正常后,主器件向从器件发送字节数据,从器件每收到一个字节数据后都要返回一个应答信号,直到全部数据都发送完为止。在主接收方式下,主器件先发出启动信号(S),接着发从器件的7位地址(SLA)和表明主器件接收的方向位“1”(R),即这个字节为SLA+R。在发送完这个字节后,P1.6(SCL)继续输出时钟,通过P1.7(SDA)接收从器件发来的串行数据。主器件每接收到一个字节后都要发送一个应答信号(A)。当全部数据都发送或接收完

39、毕后,主器件应发出停止信号(P)。I2C总线是一种串行通信总线,它与并行总线不同,并行总线中有地址总线,CPU可通过地址总线来选择所需要器件的地址。I2C总线只有一根数据线和一根时钟线,没有专门的地址线,而是利用数据传送中的头几个字节来传送地址信息。I2C总线的寻址方式有主器件的节点寻址和通用呼叫寻址两种,具体实现方法是由主器件在发出启动位S后紧接着发送从器件的7位地址码,即S+SLA,在节点地址寻址中SLA为被寻址的从节点地址,当SLA为全“0”时,即为通用呼叫地址。通用呼叫地址用于寻址接到I2C总线上的每个器件的地址,不需要从通用呼叫地址命令中获取数据的器件可以不响应通用呼叫地址。单片机的

40、节电工作方式单片机的节电工作方式 对于8051单片机来说,有待机方式和掉电保护方式两种低功耗方式。通过设置电源控制寄存器PCON的相关位可以确定当前的低功耗方式。PCON寄存器格式如下:其中SMOD:波特率倍增位 GF0,GF1:通用标志位 PD:掉电方式位,PD1为掉电方式 IDL:待机方式位,IDL1为待机方式位序B7B6B5B4B3B2B1B0位符号SMOD/GF1GF0PDIDL(1)(1).待机方式待机方式 将PCON寄存器的IDL位置“1”,单片机则进入待机方式。通常在待机方式下,单片机的中断仍然可以使用,这样可以通过中断触发方式退出待机模式。(2)(2).掉电保护方式掉电保护方式

41、 将PCON寄存器的PD位置“1”,单片机则进入掉电保护方式。如果单片机检测到电源电压过低,此时除进行信息保护外,还需将PD位被置“1”,使单片机进入掉电保护方式。节电工作方式应用节电工作方式应用 如图所示,当交流供电正常时,CPU以断续方式采样测量数据。发生停电时,依靠备用电池向8051单片机和外部RAM供电,以维持外部RAM中的数据不发生丢失。用8051的P1.0来监测系统的供电是否正常,P1.0为低电平说明交流供电正常;P1.0为高电平则说明交流供电即将停电或已经停电。电阻R和电容C组成上电复位电路,当交流电源恢复时,电容C的充电过程向8051RST引脚提供一个复位脉冲,使单片机退出掉电方式。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 大学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁