试验单机串行通信

上传人:Sc****h 文档编号:142382584 上传时间:2022-08-25 格式:DOC 页数:8 大小:426KB
收藏 版权申诉 举报 下载
试验单机串行通信_第1页
第1页 / 共8页
试验单机串行通信_第2页
第2页 / 共8页
试验单机串行通信_第3页
第3页 / 共8页
资源描述:

《试验单机串行通信》由会员分享,可在线阅读,更多相关《试验单机串行通信(8页珍藏版)》请在装配图网上搜索。

1、实验六、单机串行通信一、实验目的1 、熟悉微机接口实验装置的结构及使用方法2、掌握通信接口芯片8251 和 8250 的功能和使用方法3、学会串行通信程序的编制方法二、实验仪器1、 PC实验箱及连接线2、 9 针接头串行电缆三、芯片介绍本实验中用PC 机中的 8250 和实验装置上的8251 芯片作数据的传送和接收。8250 是一种通用的异步串行通信收发器( UART ),而 8251 同时支持同步通信( USART ),它们都是可编程的接口芯片。1、 UART-8250 简介PC 机自带两个串口,分为 COM1 和 COM2 ,地址分别在3F8-3FFH 和 2F8-2FFH ,接口芯片选用

2、8250。8250 片内有10 个寄存器, 其中有几个是共用地址的,其识别由线路控制寄存器( LCR )的最高位 DLAB来决定。各寄存器的地址和格式如下所示:.表 4.9 8250寄存器地址DLABA2A1A0I/O 口地址对应寄存器00003F8H( 2F8H)发送端数据寄存器00003F8H( 2F8H)接受端数据寄存器10003F8H( 2F8H)波特率因子寄存器(低8 位)10013F9H( 2F9H)波特率因子寄存器(高8 位)00013F9H( 2F9H)中断允许寄存器( IER )X0103FAH( 2FAH)中断识别寄存器( IIR )X0113FBH( 2FBH)线路控制寄

3、存器( LCR)X1003FCH( 2FCH)MODEM控制寄存器( MCR)X1013FDH( 2FDH)线路状态寄存器( LSR)X1103FEH( 2FEH)MODEM状态寄存器X1113FFH( 2FFH)保留IER: D7D000001111允许调制解调器状态中断为1允许接收器就绪中断允许接收字符代码错或接收中止状态中断允许发送器空中断IIR : D7D000000ID1ID0IP0:有中断中断识别1:无中断00:MODEM状态变化01:发送缓冲器空10: 接收器数据就绪11:接收字符错或接收中止状态LCR: D7D0DLABSBRKSPBEPSPENSTBWLS1WLS0校验类型奇

4、偶校验停止位字符代码长度中止位设置0:奇0:无0: 1位00:501 :60:该位无效校验时附加位1:偶1:有1: 2位10:711 :81:强迫 8250 连0:该位无效续输出低电平1:奇偶校验位恒为 0(对偶校验)或恒为1(对奇校验)LSR: D7D00TSRETHREBIFEPEOEDR帧错误接收数据有效发送器移位寄存器空中止检测溢出错发送器保持寄存器空奇偶错 注:上面在各位为1 时状态存在 MCR: D7D0000LOOPOUT2OUT1RTSDTR为 1: 8250 进行回送为 1:DTR信号有效要使用中断时须置1为 1:RTS信号有效该位为可由用户指定的输出信号MSR: D7D0R

5、LSDRIDSRCTSRLSDRI DSR CTS响铃指示允许发送出现 1 说明从上次CPU读 MSR数据装置就绪后,相应应答输入信号发生变化数据载波检测(DCD)8250 在正常通信之前,需要先设定波特率因子寄存器,它决定传输数据的速率。对使用 1.8432MHZ 的基准时钟输入时,波特率因子寄存器设置要求为:波特率因子 =184320( 16波特率)主要波特率因子取值和相应的波特率如表4.10 :表 4.10波特率因子取值表波特率波特率因子寄存器MSBLSB30001H80H60000HC0H120000H60H240000H30H480000H18H960000H0CH设置好波特率因子寄

6、存器后,要先恢复LCR的 DLAB为 0 才能正常通信。2 、 USART-8251 简介8251 是一种通用的同步/ 异步收发器,它的操作信号如下表4.11 所示。在开始发送数据和接收数据之前必须由CPU把一组控制字装入 8251A。控制字分两种格式:方式控制指令和命令指令,先装入的是方式控制指令。表 4.118251 的操作信号CSC/DRDWR功能0001CPU从 8251 中读数据0101CPU从 8251 中读状态字0010CPU写数据到82510110CPU写命令到82511XXX8251未被选中方式选择控制字:D7D6D5D4D3D2D1D0停止位、同步字符奇偶校验字符长度波特率

7、系数X0:无00:5位00:同步同步01:奇校验01:6位01:异步 1NY11:偶校验10:7位10:异步 16异步控制同步控制11:8位11:异步 6400:不用X0:内同步01:1 位X1:外同步10:1.5位0X:两个同步字符11:2 位1X :单个同步字符命令控制字:D7D0ENIRRTSERSBRKRxENDTRTxEN外部搜索方式错误标志复位接收允许发送允许1 :进行1:使所有错1:允许开RxRDY1:允许SYN搜索误标志复位0:禁止开RxRDY0:禁止内部复位发送终止字符1:使8251 返回方式指令1:迫使TxD输出00:正常工作请求发送数据终端准备好1:迫使RTS输出01:使

8、DTR输出0状态寄存器:(各位为1 时该状态存在)D7D0DSRSYNDETFEOEPETxERxRDYTxRDY数据装置准备好溢出错误发送器空在下一字符变为可接收器准备好同步检测信号用前CPU未取走字发送器准备好符,由ER复位帧错误在任一字符结尾没有检测奇偶错误:由ER复位到规定的停止位时发生3、编程方法:查询式: PC机可从 3FD端口读取线路状态寄存器的内容来判断能否向 8250 输出字符或从 8250 输入字符。中断式:在通信方式之前,对8250,需把MODEM控制寄存器的OUT2位置 1,使 8250产生的中断通过系统总线作为8259 的 IRQ4 端输入;对8251 ,其管脚 Rx

9、RDY和 TxRDY相与后接 8259 的空闲中断引脚,同时要设置命令控制寄存器允许开RxRDY和 TxRDY。四、实验内容实验原理图与接线分别如图4.12 和 4.13 所示,利用实验装置上的8251 通信接口和PC机本身串行口实现数据的发送和接收。当键盘有键按下时发送键值,所接收到的串行数据加一后在微机屏幕上显示;若所接收(发送)的数据为结束标志#,则退出程序返回DOS。8251 芯片所需接的CLK信号用实验装置上8253 芯片的计数器2 实现。波特率: 8251 和 8250 的波特率都设置为9600。图 4.12 单机串行通信串行电缆连接 8251 和 8250 的 RS 232 接口

10、Q0CS0CS4OUT0GATE0TXD( J4) CTSCLK0CS_51 CS_53CLK_51+5VRXDGND图 4.13单机串行通信接线五、预习要求1、熟悉 8250 和 8251 的工作原理2、熟悉实验原理3、编制实验要求的汇编语言源程序六、流程框图及程序清单开始8251、 8250 初始化显示提示信息按键输入是 ESC键YN8251允许发送NY发送键值8250允许接收NY接收字符加一送屏幕回到 DOS程序清单:;SY51-1.ASMTIMCTL EQU293HTIMER0 EQU290HCLKEQU3000BPSEQU9600FACTOR EQU16DATA51 EQU280HC

11、TRL51 EQU281HDATA50 EQU2F8HDRL50EQU2F8HDRH50EQU2F9HIER50EQU2F0HIIR50EQU2FAHLCR50EQU2FBHMCR50EQU2FCHLSR50EQU2FDHMSR50EQU2FEHDIVLEQU0CHDIVHEQU00HDATASEGMENTMESSDBNOW YOU CAN PRESS A KEY,IT WILL BE SENDED TO 8251,0AH,0DHDBAND RECEVED FROM 8250!,0AH,0DH,$DATAENDSSTACKSEGMENT PARASTACKDB128 DUP(?)STACKEN

12、DSCODESEGMENTASSUME CS:CODE,DS:DATA,SS:STACKSTART: MOVAX,DATAMOVDS,AXCALLSETTIM;初始化,设置波特率为 9600CALLINIT51CALLINIT50LEADX,MESS;显示提示信息MOVAH,09HINT21HLOP0: MOVAH,01HINT21HCMPAL,27JZEXIT;是 ESC键退出程序,否则MOVBL,AL;保存键值MOVDX,CTRL51LOP1: INAL,DXTESTAL,01H;判断 8251 是否允许发送JZLOP1MOVDX,DATA51;允许发送,发送键值MOVAL,BLOUTDX

13、,ALMOVDX,LSR50;判断 8250 是否允许接收LOP2: INAL,DXTESTAL,01HJZLOP2MOVDX,DATA50;允许接收,接收字符INAL,DXADDAL,1;加一显示MOVDL,ALMOVAH,2INT21HMOVDL,20HINT21HJMPLOP0EXIT: MOVAX,4C00HINT21HSETTIM PROC;8251 的时钟设定(由8253 产生)MOVDX,00H;波特率为 9600MOVAX,CLKMOVBX,1000MULBXMOVBX,BPSDIVBXMOVDX,00HMOVBX,FACTORDIVBXMOVBX,AXMOVDX,TIMCTL

14、MOVAL,00110110BOUTDX,ALMOVDX,TIMER0MOVAX,BXOUTDX,ALMOVAL,AHOUTDX,ALRETSETTIM ENDPINIT51 PROC;8251初始化MOVDX,CTRL51MOVAL,00HMOVCX,3S1: CALLRELOOPS1MOVAL,40HCALLREMOVAL,4EHCALLREMOVAL,37HCALLRECALLDELAYRETINIT51 ENDPINIT50 PROC;8250初始化,设置波特率为 9600MOVDX,LCR50MOVAL,80HCALLREMOVDX,DRL50MOVAL,DIVLCALLREMOVDX,DRH50MOVAL,DIVHCALLREMOVDX,LCR50MOVAL,03HCALLREMOVDX,IER50MOVAL,00HCALLRECALLDELAYRETINIT50 ENDPREPROCOUTDX,ALPUSHCXMOVCX,3REP1: LOOP REP1POPCXRETREENDPDELAY PROCMOVCX,0FFFFHDL1:LOOP DL1MOVCX,0FFFFHDL2:LOOP DL2RETDELAY ENDPCODEENDSENDSTART

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


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