第7章并行IO接口课件.pptx
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《第7章并行IO接口课件.pptx》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 并行 IO 接口 课件
- 资源描述:
-
1、7.1 概述概述7.2 MCS-51内部并行接口及应用内部并行接口及应用7.3 MCS-51并行并行I/O接口芯片接口芯片7.4 MCS-51内部定时内部定时/计数器计数器1 1、输入、输入/输出设备输出设备 1 1)输入设备)输入设备功能是将计算程序、原始数据和各种现场采集的资料和信息输功能是将计算程序、原始数据和各种现场采集的资料和信息输入到计算机。入到计算机。2 2)输出设备)输出设备功能是将运算的结果以人们容易识别的形式呈现给人们或将各功能是将运算的结果以人们容易识别的形式呈现给人们或将各种控制信号送给外界,以实现各种控制动作。种控制信号送给外界,以实现各种控制动作。3 3)外存储器)
2、外存储器功能是存储主存储器暂时不用的系统软件和应用软件。功能是存储主存储器暂时不用的系统软件和应用软件。7.1 概述概述一一、I/O接口接口 接口接口“桥梁桥梁”,主机与外设进行数据传输,必须经过接,主机与外设进行数据传输,必须经过接口。口。2 2、输入、输入/输出传送的信息输出传送的信息 数据信息数据信息 1 1)数字量)数字量 2 2)模拟量)模拟量 3 3)开关量)开关量 状态信息状态信息 控制信息控制信息3 3、I/OI/O接口的作用接口的作用 实现与不同外设的速度匹配实现与不同外设的速度匹配 实现与外设的隔离实现与外设的隔离 改变信号的性质改变信号的性质 实现数据传输方式和电平的变换
3、实现数据传输方式和电平的变换数据数据状态状态控制控制数据数据状态状态控制控制端口端口1 1端口端口2 2端口端口4 4端口端口3 3端口端口用于存放信息的、用于存放信息的、CPU可直接访问的可直接访问的 锁存器、缓冲器等。锁存器、缓冲器等。在在PC机中通常为机中通常为8位。位。端口是构成端口是构成I/O接口的基本单元,端口有自己的地址(称为接口的基本单元,端口有自己的地址(称为端口地址),端口地址),CPU用地址对每个端口进行读写操作用地址对每个端口进行读写操作。1 1、统一编址、统一编址I/OI/O与存储器与存储器(RAM)(RAM)的的地址不重复地址不重复,读写指令一致,只是根据地址来区读
4、写指令一致,只是根据地址来区分操作对象是分操作对象是RAMRAM还是还是I/OI/O。优点:优点:无需专门的无需专门的I/OI/O指令,对指令,对I/OI/O操作指令丰富,可进行算术和逻辑操作指令丰富,可进行算术和逻辑运算;运算;缺点:缺点:占用存储器地址,因外设功占用存储器地址,因外设功能各不相同,需要复杂的电路进行能各不相同,需要复杂的电路进行时序配合。时序配合。RD/WR0000H1FFFH2000H2FFFH存存储储器器I/O二、二、I/O端口的编址方式端口的编址方式2、独立编址独立编址 I/OI/O与存储器与存储器(RAM)(RAM)的的地址重复地址重复,用不同的读写信,用不同的读写
5、信号和指令区分。存储器读写:号和指令区分。存储器读写:MEMWMEMW,MEMRMEMR,I/OI/O读写:读写:IORIOR,IOW(PC/XT)IOW(PC/XT)优点:优点:电路简单,不占用电路简单,不占用MEMMEM空间;空间;缺点:缺点:I/OI/O指令单一。指令单一。IN AL,10HOUT 10H,AL1 1、无条件传送方式、无条件传送方式 无条件传送也称为同步程序传送无条件传送也称为同步程序传送,类似于类似于CPUCPU和存储器之间的数据传送。只有那些一直为数据和存储器之间的数据传送。只有那些一直为数据I/OI/O传送作好准备的外部设备传送作好准备的外部设备,才能使用无条件传才
6、能使用无条件传送方式。这种传送方式不需要测试外部设备的状送方式。这种传送方式不需要测试外部设备的状态态,可以根据需要随时进行数据传送操作。无条件可以根据需要随时进行数据传送操作。无条件传送方式适用于以下两类外部设备的输入输出:传送方式适用于以下两类外部设备的输入输出:(1)(1)外设的工作速度非常快外设的工作速度非常快,足以和足以和CPUCPU同步工作。同步工作。(2)(2)具有常驻的或变化缓慢的数据信号的外设。具有常驻的或变化缓慢的数据信号的外设。三、三、I/O数据的传送方式数据的传送方式2 2、查询传送方式、查询传送方式 查询传送又称为条件传送查询传送又称为条件传送,即数据的传送是有即数据
7、的传送是有条件的。在输入条件的。在输入/输出之前输出之前,先要检测外设的状态先要检测外设的状态,以了解外设是否已为数据输入输出作好了准备,以了解外设是否已为数据输入输出作好了准备,只有在确认外设已只有在确认外设已“准备好准备好”的情况下的情况下,CPU,CPU才才能执行数据输入能执行数据输入/输出操作。通常把通过程序对输出操作。通常把通过程序对外设状态的检测称之为外设状态的检测称之为“查询查询”,”,所以这种有条所以这种有条件的传送方式又叫做程序查询方式。件的传送方式又叫做程序查询方式。3、中断传送方式中断传送方式 由于查询传送方式为由于查询传送方式为CPUCPU主动要求传送数据主动要求传送数
8、据,而它又不能控制外设的工作速度而它又不能控制外设的工作速度,因此只能用等因此只能用等待的方式来解决配合的问题。中断方式则是在外待的方式来解决配合的问题。中断方式则是在外设为数据传送作好准备之后设为数据传送作好准备之后,就向就向CPUCPU发出中断请发出中断请求信号求信号(相当于通知相当于通知CPU)CPU),CPUCPU接收到中断请求信接收到中断请求信号之后立即作出响应号之后立即作出响应,暂停正在执行的原程序暂停正在执行的原程序(主主程序程序),),而转去为外设的数据输入输出服务,待服而转去为外设的数据输入输出服务,待服务完之后务完之后,程序返回程序返回,CPU,CPU再继续执行被中断的原再
9、继续执行被中断的原程序。程序。由于由于CPUCPU的工作速度很快的工作速度很快,传送传送1 1次数据次数据(包括转包括转入中断和退出中断入中断和退出中断)所需的时间很短。对外设来讲所需的时间很短。对外设来讲,似乎是对似乎是对CPUCPU发出数据传送请求的瞬间发出数据传送请求的瞬间,CPU,CPU就实现就实现了;对主程序来讲了;对主程序来讲,虽然中断了虽然中断了1 1个瞬间个瞬间,但由于时但由于时间很短间很短,也不会有什么影响。也不会有什么影响。4 4、DMADMA传送方式传送方式直接存储器存取,利用直接存储器存取,利用DMACDMAC实现。实现。四、四、I/O接口的类型接口的类型串行串行I/O
10、I/O接口:接口:串行串行I/OI/O接口可以从发送数据线上接口可以从发送数据线上一位一位地连续发送数据和在发送完一位一位地连续发送数据和在发送完8 8位数据后自位数据后自动(通过中断)从动(通过中断)从CPUCPU并行接收下一个要送的字节。并行接收下一个要送的字节。从接收数据线上连续接收串行数据和在收到从接收数据线上连续接收串行数据和在收到一个字节后自动向一个字节后自动向CPUCPU发出中断请求,发出中断请求,CPUCPU响应该响应该中断请求后便可通过中断服务并行提取这个接收中断请求后便可通过中断服务并行提取这个接收到的数据。到的数据。接口(接口(interfaceinterface),具有
11、界面、相互联系等含义。接具有界面、相互联系等含义。接口特指计算机与外设之间在数据传送方面的联系口特指计算机与外设之间在数据传送方面的联系,其功能其功能主要是通过电路实现的主要是通过电路实现的,因此称之为接口电路因此称之为接口电路,简称接口简称接口。并行并行I/OI/O接口:接口:一方面以并行方式和一方面以并行方式和CPUCPU传送传送I/OI/O数据,另一方面又可以以并行方式和外设交换数据。数据,另一方面又可以以并行方式和外设交换数据。一一、定时器、定时器/计数器的组成计数器的组成 MCS-51 MCS-51单片机内部有单片机内部有2 2个个1616位的可编程的定位的可编程的定时器时器/计数器
12、计数器,即定时器,即定时器/计数器计数器0 0(T/C0T/C0)和定)和定时器时器/计数器计数器1 1(T/C1T/C1),它们都有),它们都有定时和对外部定时和对外部事件计数事件计数的功能。的功能。T/C0T/C0是由两个是由两个8 8位的特殊功能位的特殊功能寄存器寄存器TH0TH0(8CH8CH)和)和TL0TL0(8AH8AH)组成的,)组成的,T/C1T/C1是是由由TH1TH1(8DH8DH)和)和TL1TL1(8BH8BH)组成。通过对)组成。通过对TH1TH1、TL1TL1、TH0TH0和和TL0TL0的初始化编程来控制的初始化编程来控制T/C0T/C0和和T/C1T/C1的计
13、数初值。的计数初值。7.2 MCS-51的内部定时器的内部定时器/计数器计数器 定时器定时器/计数器结构框图计数器结构框图 加法计数器是计满溢出时才申请中断加法计数器是计满溢出时才申请中断,所以在所以在给计数器赋初值时给计数器赋初值时,不能直接输入所需的计数值不能直接输入所需的计数值,而应输入的是计数器计数的最大值与这一计数值的而应输入的是计数器计数的最大值与这一计数值的差值。设最大值为差值。设最大值为M,M,计数值为计数值为N,N,初值为初值为X,X,则则X X的计的计算方法如下算方法如下:计数状态计数状态:X=MN定时状态定时状态:X=M定时时间定时时间/T而而 T=12晶振频率晶振频率
14、二、定时二、定时/计数器的控制计数器的控制 1 1、定时器、定时器/计数器的方式寄存器计数器的方式寄存器TMOD TMOD TMOD各位定义:各位定义:1)C/T 定时器方式或计数器方式选择位定时器方式或计数器方式选择位 若若C/T=1时时,为计数器方式为计数器方式;C/T=0时时,为定时器方式。为定时器方式。2)M1M0工作方式控制位工作方式控制位 M1 M0 方式方式说说 明明0 0013位定时器位定时器(TH的的8位和位和TL的低的低5位)位)0 1116位定时器位定时器/计数器计数器 1 02自动重装入初值的自动重装入初值的8位计数器位计数器 1 13T0分成两个独立的分成两个独立的8
15、位计数器位计数器,T1在方式在方式3时停止工作时停止工作 3)GATE 定时器定时器/计数器运行门控标志位计数器运行门控标志位 当当GATE=1时时,只有只有INT0(或或INT1)引脚为高电平且引脚为高电平且TR0(或或TR1)置置1时时,相应的定时器相应的定时器/计数器才被选通工作计数器才被选通工作,这这时可用于测量在时可用于测量在INTx端出现的正脉冲的宽度。若端出现的正脉冲的宽度。若GATE=0,则只要则只要TR0(或或 TR1)置置1,定时器定时器/计数器就被选通计数器就被选通,而不管而不管 INT0(或或 INT1)的电平是高还是低。的电平是高还是低。TF0TF0、TF1TF1分别
16、是定时器分别是定时器/计数器计数器T0T0、T1T1的溢出标的溢出标志位志位,加法计数器计满溢出时置加法计数器计满溢出时置1,1,申请中断申请中断,在中断在中断响应后自动复响应后自动复0 0。TFTF产生的中断申请是否被接受产生的中断申请是否被接受,还需要由中断是否开放来决定。还需要由中断是否开放来决定。TR1TR1、TR0TR0分别是定时器分别是定时器/计数器计数器T1T1、T0T0的运行控的运行控制位制位,通过软件置通过软件置1 1后后,定时器定时器/计数器才开始工作计数器才开始工作,在系统复位时被清在系统复位时被清0 0。2 2、定时器、定时器/计数器控制寄存器计数器控制寄存器TCONT
17、CON三、定时三、定时/计数器的工作方式计数器的工作方式 1 1、方式、方式0 0 图图 方式方式0 0(1313位计数器)位计数器)方式方式0 0:是选择是选择T/C1T/C1或或T/C0T/C0高高8 8位和低位和低5 5位的一个位的一个1313位计数位计数器的运行方式。在这种方式中,器的运行方式。在这种方式中,1616位寄存器只用位寄存器只用1313位,位,其中其中TL1TL1(TL0TL0)的高)的高3 3位未用,其余位占整个位未用,其余位占整个1313位的位的低低5 5位,位,TH1TH1(TH0TH0)占高)占高8 8位。当位。当TL1TL1(TL0TL0)的低)的低5 5位位溢出
18、时,向溢出时,向TH1TH1(TH0TH0)进位,而)进位,而TH1TH1(TH0TH0)溢出时向)溢出时向TF1TF1(TF0TF0)标志进位。)标志进位。方式方式1 1(1616位计数器)位计数器)2 2、方式、方式1 1:是一个是一个1616位定时器位定时器/计数器,计数器,TH1TH1(TH0TH0)和)和TL1TL1(TL0TL0)均是)均是8 8位的,构成位的,构成1616位计数器。位计数器。3 3、方式、方式2 2图图 方式方式2 2(初始常数自动重装载)(初始常数自动重装载)方式方式2 2:T/C T/C被拆成一个被拆成一个8 8位的寄存器位的寄存器TH1TH1(TH0TH0)
19、和一个)和一个8 8位计数器位计数器TL1TL1(TL0TL0),),两者构成可以两者构成可以自动装载的自动装载的8 8位位T/CT/C。编程时必须。编程时必须TH1TH1(TH0TH0)和)和TL1TL1(TL0TL0)置入)置入相同的初值。当相同的初值。当T/C1T/C1(T/C0T/C0)启动后,)启动后,TL1TL1(TL0TL0)按按8 8位加位加1 1计数器计数。每当它计满回零时,一方面计数器计数。每当它计满回零时,一方面向向CPUCPU发出溢出中断申请,另一方面从发出溢出中断申请,另一方面从TH1TH1(TH0TH0)中重新获得初值并启动计数。中重新获得初值并启动计数。4 4、方
20、式、方式3 3 图图 方式方式3 3(两个(两个8 8位独立计数器)位独立计数器)增加一个附加的增加一个附加的8 8位定时器位定时器/计数器计数器,从而具有,从而具有3 3个定时器个定时器/计数器。计数器。工作方式工作方式3 3下的下的T0T0:T0 T0分为分为两个独立的两个独立的8 8位计数器位计数器:TL0:TL0和和TH0TH0。TL0TL0使用使用T0T0的状态控制位的状态控制位C/TC/T*、GATEGATE、TR0TR0。而而TH0TH0被固定被固定为一个为一个8 8位定时器(不能作外部计数模式),位定时器(不能作外部计数模式),并使并使用定时器用定时器T1T1的状态控制位的状态
21、控制位TR1TR1和和TF1TF1,同时占用定,同时占用定时器时器T1T1的中断请求源的中断请求源TF1TF1。方式方式3 3只适用于定时器只适用于定时器/计数器计数器T0T0。T1T1不能工不能工作在方式作在方式3 3,T1T1方式方式3 3时相当于时相当于TR1=0TR1=0,停止计数,停止计数(此时(此时T1T1可用来作串行口波特率产生器)。可用来作串行口波特率产生器)。四、四、T/C的初始化的初始化1 1、初始化的步骤、初始化的步骤 确定工作方式,给确定工作方式,给TMODTMOD送一个方式控制字;送一个方式控制字;计算计数初值,并写入计算计数初值,并写入TH0TH0、TL0TL0或或
22、TH1TH1、TL1TL1;根据需要置位根据需要置位EAEA使使CPUCPU开放中断,同时置位开放中断,同时置位EXTEXT,允许允许T/CT/C中断;中断;给给TCONTCON送命令控制字,即置位送命令控制字,即置位TRXTRX启动启动T/CT/C计数。计数。2 2、计数器初值的计算、计数器初值的计算设需要计数器计数的个数为设需要计数器计数的个数为N N,计数初值为,计数初值为X X,则,则 X=M-N X=M-N例:利用例:利用T0T0方式方式0 0产生产生1ms1ms定时,在定时,在P1.0P1.0引脚上输出周引脚上输出周期为期为2ms2ms的方波。设单片机晶振频率的方波。设单片机晶振频
23、率fosc=12MHZfosc=12MHZ。(1)(1)计算初值计算初值X X则有则有:2:21313-X=1-X=11010-3-3/(1/(11010-6-6)X=8192-1000=7192,X=8192-1000=7192,即即X=0001 1100 0001 1000BX=0001 1100 0001 1000B。所以,所以,T0T0的初值为:的初值为:TH0=0E0H TL0=18H TH0=0E0H TL0=18H(2)(2)初始化程序设计初始化程序设计 方波的周期用方波的周期用T0T0来确定,让来确定,让T0T0每隔每隔1ms1ms计数溢出计数溢出1 1次次(每每1ms1ms产
24、生产生一次中断一次中断),CPUCPU响应中断后,在响应中断后,在中断服务程序中对中断服务程序中对P1.0P1.0取反。取反。ORG 0000H ORG 0000H AJMP MAIN AJMP MAIN ORG 000BH ORG 000BH AJMP TCOSAJMP TCOS ORG 1000H ORG 1000H MAINMAIN:MOV SPMOV SP,#6FH#6FH;MOV TMOD MOV TMOD,#00H#00H;MOV TH0 MOV TH0,#0E0H#0E0H;MOV TL0 MOV TL0,#18H#18H;SETB EA SETB EA;SETB ET0 SET
25、B ET0;SETB TR0 SETB TR0;HEREHERE:SJMP HERESJMP HERE;ORG 1200H ORG 1200HTCOSTCOS:MOV TH0MOV TH0,#0E0H#0E0H;MOV TL0 MOV TL0,#18H#18H;CPL P1.0 CPL P1.0;RETI RETI END END查询方式的参考程序查询方式的参考程序:MOV TMOD,#00H MOV TMOD,#00H;置计数器的方式控制字;置计数器的方式控制字 SETB EA SETB EA SETB ET0 SETB ET0 SETB TR0SETB TR0 ;接通;接通T0T0LOOP
展开阅读全文