- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实验八 串行接口应用实验 一、实验目的 1、熟悉8251的工作方式及应用编程 2、学习RS-232C标准的串行通信接口电路及串行通信收/发程序的设计原理与方法 二、实验内容 甲乙两台微机之间,按RS-232C标准协议进行零MODEM方式,半双工串行通信。甲机通过键盘向乙机发送字符,发送的字符在甲机的屏幕上显示。乙机接收甲机发来的字符,接收的字符在乙机的屏幕上显示。接收方按任意键,程序退出。发送方按ESC键,程序退出。通信数据格式为1位停止位,7位数据位,无校验位,波特率因子为16,波特率为1200bps。 三、实验原理 RS232-C标准串行通信接口电路原理如图1所示。接口电路以8251为核心,利用8253提供8251所需的发送/接收时钟, 8255的PC6控制8253的GATE2门。另外,还有MAX232作电平转换,MAX491作RS-232与RS-485的转换。 端口地址有: 8251:数据口=308H,命令/状态口=309H 8253:304H~307H 8255:300H~303H 图1 串行通信接口电路 原理图 1.19318MHz 四、实验要求 使用3芯屏蔽电缆线,直接将甲乙两机MFID平台板上的RS232-C串行接口插座J7连接起来,如图2所示。分别编写甲机的发送程序和乙机的接收程序,并进行调试,直至程序正常运行。 图2 RS232-C标准双机串行通信模块连接图 五、实验步骤 1、跳线设置: JP1 JP2 JP3 JP4 JP11 跳接 2-3 2-3 空/跳接(RXD-TXD) 跳接 1-2 说明 零MODEMN方式 选择RS232协议 双机通信/自发自收 收发时钟由OUT2提供 用PC6接Gate2 六、实验程序流程图 七、写出接收端源程序(加注释) 八、实验结果分析 2、使用3芯屏蔽电缆线直接将甲乙两机MFID平台板上的RS232-C串行接口插座J7连接起来 3、将平台的电源开关拨到“内”的位置上 4、MF2KP环境下输入汇编源程序,编译、连接、运行,在甲机运行发送程序发送字符,在乙机运行接收程序接收字符。 5、观察发送和接收现象 编程提示: 发送(接受)时钟频率 传输率(波特率) 波特率因子= 发送(接受)时钟频率= 波特率因子* 波特率 计数初始值n=输入脉冲时钟频率*t,t是定时时间 = 1.19318MHz 发送(接受)时钟频率 波特率因子* 波特率 = 1.19318MHz 检查有无键按下的DOS功能调用 功能号:AH=0BH 返回参数:AL=00 ;无键按下 AL=0FFH ; 有键按下 说明:若有键按下,该调用不断返回0FFH标志,直到有键盘输入的功能调用(如功能号01H)来实际取走该字符。 lop: mov ah,0bh ;检测有键按下? int 21h cmp al,00 je lop ;无,等待 mov ah,01h ;有,检测是否是Esc键 int 21h . . . 发送端程序流程图 接收端程序流程图 data51 equ 308h ;8251A数据口 ctrl51 equ 309h ;8251A命令/状态口 ctrl55 equ 303h ;8255命令口 timer2 equ 306h ;8253的2号计数器端口 timctl equ 307h ;8253的命令口 clk00 equ 12h ;8251输入时钟频率(十六进制表示) clk01 equ 34deh factor equ 16 ;波特率因子16 【发送段参考程序】: data segment bps00 dw (?) input_message db now enter the serial communication,0ah,0dh db end with esc,0ah,0dh db please input characters to
原创力文档


文档评论(0)