第8章(8251)教材_第1页
第8章(8251)教材_第2页
第8章(8251)教材_第3页
第8章(8251)教材_第4页
第8章(8251)教材_第5页
已阅读5页,还剩62页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 一次传送多位,速度较快一次传送多位,速度较快 占用线路多,成本较高占用线路多,成本较高 传送距离小(传送距离小(3m以内)以内) 应用范围有限应用范围有限 逐位顺序传送,速度较慢逐位顺序传送,速度较慢 占用线路少,成本较低占用线路少,成本较低 传送距离较远(传送距离较远(15m) 应用范围很广应用范围很广n 异步方式异步方式n 同步方式同步方式特特 点点起始位起始位数据位数据位奇偶校验位奇偶校验位停止位停止位帧帧 格格 式式1位,低电平位,低电平“0” 58位,由低至高位,由低至高 0/1位,无位,无/奇奇/偶偶 1/1.5/2位,高电平位,高电平“1” 110/300/600/1200/1

2、800/2400/4800/9600/19200/38400/57600/115200等。等。 特特 点点单工单工半双工半双工全双工全双工点对点点对点主从式点对多点主从式点对多点幅幅移键控移键控法法ASK 相相移键控移键控法法PSK 频频移键控移键控法法FSK UART始终监视着始终监视着RxD线,一旦发现低电平,便开始一个字符数据的同步过程。线,一旦发现低电平,便开始一个字符数据的同步过程。UART使用外部时钟(使用外部时钟(RxC及及TxC统称时钟,通常统称时钟,通常RxC=TxC)来同步接收的字符。)来同步接收的字符。外部时钟的频率可以是波特率的外部时钟的频率可以是波特率的16倍、倍、3

3、2倍或倍或64倍,这个倍数称为倍,这个倍数称为波特率因子波特率因子。设位周期为设位周期为Td,外部时钟周期为,外部时钟周期为Tc,则存在等式:,则存在等式: 其中其中K即为波特率因子,常见的波特率因子有即为波特率因子,常见的波特率因子有1、16、64。 dcTTK9:16判别法判别法 ;【例例】设设8251A的控制口地址为的控制口地址为201H,数据口地址为,数据口地址为200H,根据下列要求编写初始,根据下列要求编写初始化程序:化程序: 异步方式,波特率因子为异步方式,波特率因子为64,偶校验,偶校验,1位起始位,位起始位,8位数据位,位数据位,1位停止位。位停止位。 允许接收和发送,使错误

4、位全部复位。允许接收和发送,使错误位全部复位。 查询查询8251A状态字,当接收准备就绪时,则从状态字,当接收准备就绪时,则从8251A输入数据,否则等待。输入数据,否则等待。 【例例】设设8251A的控制口地址为的控制口地址为201H,数据口地址为,数据口地址为200H。若。若8251A工作在异步方工作在异步方式,波特率因子为式,波特率因子为64,偶校验、,偶校验、7位数据位、位数据位、1位停止位。试编写位停止位。试编写8251A采用查采用查询方式发送数据的程序。询方式发送数据的程序。 课后作业 软件定时。无需硬件,占用软件定时。无需硬件,占用CPU,不准确。,不准确。 不可编程的硬件定时。

5、不占用不可编程的硬件定时。不占用CPU,不灵活。,不灵活。 可编程的硬件定时可编程的硬件定时 。软、硬结合。软、硬结合。CSWRRDCLKOUT 43210N=4WRCW=10GATE=1OUTGATE N=443210N=4WRCW=10启动计数后启动计数后GATE=0GATE=0N=5WRCW=10N=3OUT N=554321GATE=1GATE=1计数中改计数中改变计数值变计数值32u 一次一次写入计数值只有一次有效计数。写入计数值只有一次有效计数。u 计数过程中计数过程中GATE=0,暂停计数,暂停计数,GATE=1连续计数。连续计数。u 计数过程中改变计数值,立刻按新的计数值计数计

6、数过程中改变计数值,立刻按新的计数值计数 u 计数值为计数值为N,计数,计数N+1次次CLKOUT 32103N=3WRCW=12GATE启动计数启动计数GATEOUTGATE32321GATEGATE计数中计数中重复触发重复触发1N=2WRCW=12OUT21321计数中改计数中改变计数值变计数值00GATEN=3u 一次写入计数值多次计数。一次写入计数值多次计数。u GATE=1启动启动计数,重复启动重复计数。计数,重复启动重复计数。u 计数过程中改变计数值,下次启动按新的计数值计数计数过程中改变计数值,下次启动按新的计数值计数 u 计数值为计数值为N N,计数,计数N N次次CLKOUT

7、 32132N=3WRCW=14GATE=113OUTGATEN=3WRCW=14启动计数后启动计数后GATE=0GATE=0323213N=4WRCW=14N=3OUTGATE=1GATE=1计数中改计数中改变计数值变计数值4313212u 写入计数值开始计数,周期性计数。写入计数值开始计数,周期性计数。u 计数过程中计数过程中GATE=0,暂停计数,暂停计数,GATE=1重新计数。重新计数。u 计数过程中改变计数值,下一周期按新的计数值计数。计数过程中改变计数值,下一周期按新的计数值计数。CLKOUT 42424N=4WRCW=16GATE=1偶计数值偶计数值24N=5WRCW=16GAT

8、E=1奇计数值奇计数值OUT 5314532N=4WRCW=16N=3OUTGATE=1计数中改计数中改变计数值变计数值4223412u 写入计数值开始计数,周期性计数。写入计数值开始计数,周期性计数。u N=偶数,正负半周偶数,正负半周=N/2;N=奇数,正半周奇数,正半周=(N1)/2,负半周,负半周=(N1)/2。u 计数过程中计数过程中GATE=0,暂停计数;,暂停计数;GATE=1,重新计数。重新计数。u 计数过程中改变计数值,下一周期按新的计数值计数。计数过程中改变计数值,下一周期按新的计数值计数。 CLKOUT 32100N=3WRCW=18GATE=1启动计数启动计数00GAT

9、E=0暂停计数暂停计数OUT 3332031GATEN=4WRCW=16N=2OUTGATE=1GATE=1计数中改计数中改变计数值变计数值4321200u 一次写入计数值只有一次有效计数。一次写入计数值只有一次有效计数。u 计数过程中计数过程中GATE=0,暂停计数;,暂停计数;GATE=1,连续计数。连续计数。u 计数过程中改变计数值,立刻按新的计数值计数。计数过程中改变计数值,立刻按新的计数值计数。 u 计数值为计数值为N,计数,计数N+1次。次。CLKOUT 33321N=3WRCW=16GATE启动计数启动计数00GATEGATE重复重复启动计数启动计数OUT 323210GATEN

10、=4WRCW=16N=2OUT计数中改计数中改变计数值变计数值431021GATEGATE2u 一次写入计数值多次计数。一次写入计数值多次计数。u GATE上升沿启动计数,重复启动重新计数。上升沿启动计数,重复启动重新计数。u 计数过程中改变计数值,下次启动按新的计数值重新计数。计数过程中改变计数值,下次启动按新的计数值重新计数。 u 计数值为计数值为N,计数,计数N+1次。次。工作方式小结工作方式小结GATE信号对工作方式的影响信号对工作方式的影响 初始化编程初始化编程 写入计数器的控制字,规定其工作方式。写入计数器的控制字,规定其工作方式。 写入计数初值。写入计数初值。当计数初值为当计数初

11、值为8位,则控制字中位,则控制字中RL1RL0应取应取01,初值只写,初值只写入入CR的低的低8位(高位(高8位会自动置位会自动置0););若是若是16位初值,而低位初值,而低8位是位是0,则,则RL1RL0应取应取10,初值高,初值高8位只写入到位只写入到CR的高的高8位,低位,低8位会自动置位会自动置0;若是若是16位初值,则位初值,则RL1RL0应取应取11,且分两次写入初值,且分两次写入初值,先写低先写低8位,再写高位,再写高8位。位。由于由于CE计数器采用减计数器采用减1计数,故当初值为计数,故当初值为0000H时,是最时,是最大的计数初值。大的计数初值。由于由于8253中中3个计数

12、器是独立的,故对个计数器是独立的,故对3个计数器的初始个计数器的初始化编程不必一定按照计数器化编程不必一定按照计数器0、1、2的顺序进行,而是可以的顺序进行,而是可以按照任意顺序。但对某一个计数器来说,则必须按照先写按照任意顺序。但对某一个计数器来说,则必须按照先写控制字、再写计数初值的顺序进行,不得颠倒。控制字、再写计数初值的顺序进行,不得颠倒。【例例】设设0#计数器,工作于方式计数器,工作于方式3,计数初值为,计数初值为2000H,采用,采用BCD计数方式;计数方式;1#计数计数器,工作于方式器,工作于方式2,计数初值为,计数初值为64H(单字节),采用二进制计数方式。设(单字节),采用二

13、进制计数方式。设8253的端的端口地址为口地址为80H83H。试编写其初始化程序。试编写其初始化程序。MOVAL,00110111B;对;对0#计数器送工作方式字计数器送工作方式字OUT83H,ALMOVAX,2000H;送计数初值;送计数初值OUT80H,AL;选送低;选送低8位位MOVAL,AH;再送高;再送高8位位OUT80H,ALMOVAL,01010100B;对;对1#计数器送工作方式字计数器送工作方式字OUT83H,ALMOVAL,64H;送计数初值;送计数初值OUT81H,ALMOVAL,00100111B;对;对0#计数器送工作方式字计数器送工作方式字OUT83H,ALMOVA

14、L,20H;送计数初值;送计数初值OUT80H,AL;直接直接送送高高8位位MOVAL,01010100B;对;对1#计数器送工作方式字计数器送工作方式字OUT83H,ALMOVAL,64H;送计数初值;送计数初值OUT81H,ALD0D78253D0D7A0A1A0A1CSRDWRRDWRGATE0GATE1GATE20FFAHCLK0OUT0CLK1OUT1CLK2OUT2外部计数外部计数INTR2.5MHz1KHz秒秒【例例】8086系统中系统中8253芯片的地址为芯片的地址为0FFAH0FFDH,编写初始化程序完成如下功能。,编写初始化程序完成如下功能。 1) 计数器计数器0完成对外部

15、事件计数功能,计满完成对外部事件计数功能,计满100次向次向CPU发出中断。发出中断。 2) 计数器计数器1输入为输入为2.5MHz方波脉冲,产生频率为方波脉冲,产生频率为1KHz的方波。的方波。 3) 计数器计数器2输出标准秒脉冲时钟。输出标准秒脉冲时钟。#0:方式字:方式方式字:方式0,00010000B=10H计数值:计数值:100D1=63H#1: 方式字:方式方式字:方式3,01110110B=76H计数值:计数值: 2.5M/1000=2500D #2: 方式字:方式方式字:方式2,10110101B=B5H 计数值:计数值: 1000/1=1000DMOV DX,0FFDHMOV

16、 AL,10HOUT DX,AL;初始化通道;初始化通道0MOV DX,0FFAHMOV AL,63H;计数值;计数值100OUT DX,ALMOV DX,0FFDHMOV AL,76HOUT DX,AL ;初始化通道;初始化通道1为方式为方式3MOV DX,0FFBHMOV AX,2500DOUT DX,AL;计数值低位;计数值低位MOV AL,AHOUT DX,AL;计数值高位;计数值高位MOV DX,0FFDHMOV AL,0B5HOUT DX,AL ;初始化通道;初始化通道2为方式为方式2MOV DX,0FFCHMOV AL,00HOUT DX,AL ;计数值低位;计数值低位MOV A

17、L,10HOUT DX,AL;计数值高位;计数值高位【例例】根据图根据图示编写示编写8253的初始化程序。其中:的初始化程序。其中: 0#计数器工作于方式计数器工作于方式0,计数初值,计数初值2000H,二进制计数;,二进制计数; 1#计数器工作于方式计数器工作于方式2,计数初值,计数初值1234H,BCD 计数;计数; 2#计数器工作于方式计数器工作于方式4,计数初值,计数初值7FFFH,二进制计数。,二进制计数。从图中片选信号的译码电路可知:从图中片选信号的译码电路可知:A15A14A7A6A5A4=00 0100B=0000 0000 0100B0#计数器的片内计数器的片内A1A0=00

18、,故,故CPU地址线地址线A3A2=00,因而:,因而:0#计数器的口地址计数器的口地址=0000 0000 0100 0000B=40H;1#计数器的口地址计数器的口地址=0000 0000 0100 0100B=44H;2#计数器的口地址计数器的口地址=0000 0000 0100 1000B=48H;控制寄存器口地址控制寄存器口地址=0000 0000 0100 1100B=4CH。MOVAL,00110000B;0#计数器,方式计数器,方式0,二进制计数,二进制计数OUT4CH,ALMOVAL,00H;送;送0#计数器计数初值低字节计数器计数初值低字节OUT40H,ALMOVAL,20

19、H;送;送0#计数器计数初值高字节计数器计数初值高字节OUT40H,ALMOVAL,01110101B;1#计数器,方式计数器,方式2,BCD计数计数OUT4CH,ALMOVAL,34H;送;送1#计数器计数初值低字节计数器计数初值低字节OUT44H,ALMOVAL,12H;送;送1#计数器计数初值高字节计数器计数初值高字节OUT44H,ALMOVAL,10111000B;送;送2#计数器、方式计数器、方式4、二进制计数、二进制计数OUT4CH,ALMOVAL,0FFH;送;送2#计数器初值低字节计数器初值低字节OUT48H,ALMOVAL,7FH;送;送2#计数器初值高字节计数器初值高字节O

20、UT48H,AL课后作业工作方式工作方式A口口B口口C口口0基本输入基本输入/输出端口,输出端口,输输入不锁存入不锁存,输出锁存输出锁存同同A口口同同A口口1应答式输入应答式输入/输出端口,输出端口,输入输入/输出均可锁存输出均可锁存同同A口口上上C口作为应答式口作为应答式A口的应答线;口的应答线;下下C口作为应答式口作为应答式B口的应答线口的应答线2应答式双向输入应答式双向输入/输出端输出端口,均可锁存口,均可锁存不用不用用作用作A口的应答控制线口的应答控制线A口口B口口C口口控制口控制口方式方式0方式方式1方式方式2基本输入基本输入/输出输出选通(应答)输入选通(应答)输入/输出输出双向(

21、应答)输入输出双向(应答)输入输出由控制字决定由控制字决定【例例】设某设某8255A的的控制寄存器控制寄存器口口地址地址为为B6H,各端口工作方式如下:,各端口工作方式如下:A口方式口方式0、输入端口;输入端口;B口方式口方式0、输出端口;、输出端口;C口高口高4位为输出口,低位为输出口,低4位为输入口。试编写该位为输入口。试编写该8255A接口的接口的初始化程序初始化程序。对可编程接口芯片送入控制字,从而设定接口功能的程序对可编程接口芯片送入控制字,从而设定接口功能的程序称为称为“接口(功能)初始化程序接口(功能)初始化程序”01001010MOVAL,91H;CPU控制字控制字91H经经A

22、L输出输出OUT0B6H,AL;送到;送到8255A控制寄存器中控制寄存器中MOVDX,303HMOVAL,00001110B;置;置PC7=0的控制字的控制字OUTDX,AL;控制字送;控制字送8255A控制寄存器中控制寄存器中MOVAL,00001101B;置;置PC6=1的控制字的控制字OUTDX,AL;控制字送;控制字送8255A控制寄存器中控制寄存器中【例例】利用利用8255A作为打印机接口。作为打印机接口。此时此时8255A一般一般设置成工作方式设置成工作方式0。设设8255A端口地址为端口地址为0380H0383H,待打印字符的存放首地址,待打印字符的存放首地址为为DS:0300H,字符数为,字符数为100个个 。;8255A初始化程序初始化程序BEGIN:MOVDX,0383H;控制寄存器地址;控制寄存器地址DXMOVAL,10000001B ;送方式;送方式0控制字控制字(A口方式口方式0输出,输出,PC7PC4输出输出PC3

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论