单片机与pc机通讯课程设计_第1页
单片机与pc机通讯课程设计_第2页
单片机与pc机通讯课程设计_第3页
单片机与pc机通讯课程设计_第4页
单片机与pc机通讯课程设计_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

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

文档简介

1、课程设计 IV设设计计说说明明书书8251A 可编程通讯接口与 PC 机通讯学生姓名周勇学号1018014086班级计本 103 班成绩指导教师冯永政 数学与计算机科学学院数学与计算机科学学院2013 年 9 月 10 日 课程设计任务书20132014 学年第一学期学年第一学期专业: 计算机科学与技术 学号: 1018014086 姓名: 周勇 课程设计名称: 课程设计 IV 设计题目: 8251A 可编程通讯接口与 PC 机通讯 完成期限:自 2013 年 9 月 2 日至 2013 年 9 月 14 日共 2 周设计依据要求及主要内容一、目的任务:依据实验器材提供的功能,利用可编程串行接

2、口 8251 芯片,实现与 PC 机通讯。二、设计内容:1. 复习相关课程内容:微机原理及应用课程相关内容;汇编语言程序设计的相关内容;熟悉模拟电路、数字电路的相关知识;2. 熟悉实验相关器材的主要功能。3. 在上述基础上,根据课程设计的基本要求,完成以下各项任务(反映在设计说明书中):(1)题目要求涉及的硬件电路图及摘要说明。(2)题目的工作原理及相应描述。(3)程序流程框图。(4)程序文本输入及实验完成。三、设计要求:1.软件程序文档 ;2.硬件电路图(用专用软件);3.完成实验;4.完成设计说明书。课程设计评阅评语: 指导教师签名: 年 月 日摘 要设计了一个 8251 可编程通讯接口与

3、 PC 机通信,8251 是一种可编程的通用同步/异步接收发送器,被广泛应用于 Intel80X86 为 CPU 的 微型计算机中。本设计采用 8253 芯片的分频作为 8251 的收发时钟频率,实现 8251 可编程通信接口与 PC 机的通讯。 关键词:异步;串行通信;8251目 录1 课题描述12 课题分析2 2.1 8251 基本功能2 2.2 8251 的内部结构2 2.3 8251 编程字23.设计过程4 3.1 电路图设计4 3.2 硬件设计4 3.3 软件设计44 验证测试125 总结13参考文献1401 课题描述 利用 8253 芯片的分频作为 8251 的收发时钟频率,825

4、1 异步串行通信,实现 8251 可编程通信接口与 PC 机的通讯。采用查询 I/O 方式,故收/发程序中只需检查发/收准备好的状态是否置位,即可收发 l 个字节,每按动一次任一数字键,就把该键值通过 8251 发送给 PC 机接收,并在 PC 机屏幕上显示出该键值。12 课题分析2.1 8251 基本功能 8251A 是一种可编程的通用同步/异步接收发送器,通常作为串行通信接口使用,被广泛应用Intel80X86 为 CPU 的 微型计算机中。其基本功能为:(1)它是全双工、双缓冲器的接收/发送器。(2)可工作在同步或异步工作方式。同步方式工作时,波特率在 064K 范围内;异步方式时,波特

5、率在 0 92K 范围内。(3)同步方式时,字符可选择为 58bit,可加奇偶校验位,可自动检测同步字符。(4)异步方式时,字符可选择为 58bit,可加奇偶校验位,自动为每个字符添加一个启动位,并允许通过编程选择 1、25、或 2 位停止位。2.2 8251 内部结构本设计采用异步方式,则由发送控制电路在其首尾加上起始位和停止位,然后从起始位开始,经移位寄存器从数据输出线 TXD 逐位串行输出。 图 2.1 8251 内部结构2.3 8251 编程字(1)工作方式控制字 D1D0 确定是工作于同步方式还是异步方式。D1D0=00 为同步方式,当方式设为同步时,方式控制字后必须装入 同步字符,

6、并由同一个方式控制字规定装入单同步字符还是双同步字符;D1D000 为异步方式,且有 3 种组合来 选择输入的时钟频率与波特率之间的系数。D3D2 确定每个字符的数据位(不包括奇偶校验位) 。2D5D4 确定是否校验和奇偶校验的性质。D7D6 含义因同步方式或异步方式而异。异步方式(D1D000)时用来确定停止位个数。同步方式时 D6用来确定 是内同步(SYNDET 脚为输出)还是外同步(SYNDET 为输入) ,D7 用来确定同步字符个数。外同步方式时,同步字 符只用于发送,接收时不作用。例:某异步通讯,数据位为 8 位,1 位起始位、2 位停止位、奇校验、波特率系数为 16。则有:1101

7、1110B=0DEH MOV DX,309H ;8251A 命令口 MOV AL,0DEH OUT DX,AL(2)工作命令控制字 D0 设置为 1 允许 8251A 开始发送操作。只有命令字的 D0=1,引脚 TXDRY(通知 CPU:发送器准备好)才可能有效(为 1) 。可作为发送中断屏蔽位。D1 设置为 1 强制引脚 DTR 有效,表示数据终端准备好,通知调制解调器:8251A 已准备好。 D2 设置为 1 允许 8251A 开始接收数据。只有命令字 D2=1,RXRDY 才有可能为 1。允许接收时必须使错误标志复位(见 D4) 。在同步方式时还必须指定进入同步搜索操作(见 D7) 。D

8、3 设置为 1 迫使 TXD 端发送低电平,以此作断点字符。D4 设置为 1 则对状态字中的所有操作出错标志(FE,OE,PE)复位。D5 设置为 1 强制 RTS 引脚(请求发送)有效,向调制解调器提出发送请求。D6 设置为 1 强制 8251A 内部复位,使之回到准备接收方式字的状态。D7 只用于同步方式。为使 8251A 进入同步搜索操作,将输入的信息和同步字符比较。(3)状态字 状态字的作用是 8251A 向 CPU 送去数据传送操作中的各种状态信息。方式字,同步字符,命令字都是 CPU 写入 8251A 的,以控制 8251A 的工作方式和操作。那么,8251A 在发送,接收数据的过

9、程中实际工作状态如何呢?如一个字符接收全了 没有?接收的数据有没有错误?有什么类型的错 误?发送缓冲器空了没有?发送移位寄存器空了没有?等等,这些在发送/接收数据操作过程中的状态信息随 时寄存在 8251A 内部的状态冲寄存器内,CPU 可以通过 I/O 读操作(=1)把状态字读入加以分析,控制 CPU 和 8251A 之间的数据交换。状态位 D0(TXRDY)发送器准备好。状态位 D1(RXRDY)接收准备好。状态位 D2(TxE)发送器空。状态位 D3(PE)奇偶校验错标志状态位 D4(OE)溢出(覆盖)错误标志。状态位 D5(FE)帧格式错误标志状态位 D6(SYNDET)同步检测。状态

10、位 D7(DSR)数据装置准备好。33 设计过程3.1 电路设计本次设计利用实验机内的 8253 芯片的分频作为 8251 的收发时钟频率。利用实验机内小键盘,每按动一次任一数字键 ,就把该键值通过 8251 发送给 PC 机接收,并在 PC 机屏幕上显示出该键值。图 3.1 8251 与 CPU 的连接3.2 硬件设计采用最简单的发送线 TxD、接收线 RxD 和 地线 GND 三 根线连接就能进行通信。采用 8251A 作为接口的主芯片再配置少量附加电路,如波特率发生器、 RS232C 与 TTL 电平转换电路、地址译码电路等就可构成一个串行通信接口。3.3 软件设计(1) 程序流程图 4

11、 开始8253初始化写8253定时器初值设置0AH号中断向量8251初始化显示提示信息CPU接受键入字符8251TxRDY8251串行发送字符开放IRQ2中断开中断等中断是结束符“!”/禁止IRQ2中断返回DOS结束 Y YN N主程序流程图开始保护现场串行接受字符并保存显示接受字符恢复现场发中断结束命令中断返回结束中断服务程序流程图 图 3.2 主程序流程图 图 3.3 中断服务程序流程图(2)程序清单CODE SEGMENT ;PC8251.ASM,8251TXD-PCRXD ASSUME CS:CODESECOPORT EQU 03F9HSEDAPORT EQU 03F8HPA EQU

12、0FF21H ;字位口PB EQU 0FF22H ;字形口PC EQU 0FF23H ;键入口 ORG 1A00HSTART: JMP START0BUF DB KZ DB LCNTKZ DW ;LKEY DB 5ZP DW DATA1: DB0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H,88H,83H,0C6H,0A1HDB86H,8EH,0FFH,0CH,89H,0DEH,0C7H,8CH,0F3H,0BFH,8FHSTART0: CALL FOR8251 MOV ZP,OFFSET BUF CALL BUF1 ;DISP:8251-1REDIK

13、EY: CALL DISPKEY CMP KZ,10H JC WATTXD JMP FUNCKEYWATTXD: MOV DX,SECOPORT IN AL,DX TEST AL,01H JZ WATTXD MOV AL,KZ MOV DX,SEDAPORT OUT DX,AL MOV BX,ZP MOV BX,AL CMP BX,OFFSET BUF+5 JZ ZP1 INC BX MOV ZP,BX JMP REDIKEYZP1: MOV ZP,OFFSET BUF JMP REDIKEYFUNCKEY: CMP KZ,1FH JNZ REDIKEY CALL BUF2 ;GOODMONI

14、T: CALL DISP JMP MONIT DISPKEY: CALL DISP CALL KEYXD: MOV BX,LCNTKZ6 MOV CX,BX MOV AH,AL CMP AL,CH JE XD1 MOV CL,88HXD1: DEC CL CMP CL,82H JE XD3 CMP CL,0EH JE XD3 CMP CL,00H JE XD2 MOV AL,20H JMP XD3XD2: MOV CL,0FHXD3: MOV BX,LCNTKZ MOV CH,AH MOV BX,CX MOV KZ,AL RET KEY: MOV AL,0FFH MOV DX,0FF22H O

15、UT DX,AL MOV BL,00H MOV AH,0FEH MOV CX,08HKEY1: MOV AL,AH MOV DX,0FF21H OUT DX,AL ROL AL,01H MOV AH,AL NOP NOP NOP NOP7 NOP NOP MOV DX,0FF23H IN AL,DX NOT AL NOP NOP AND AL,0FH JNZ KEY2 INC BL LOOP KEY1 JMP NKEYKEY2: TEST AL,01H JE KEY3 MOV AL,00H JMP KEY6KEY3: TEST AL,02H JE KEY4 MOV AL,08H JMP KEY

16、6KEY4: TEST AL,04H JE KEY5 MOV AL,10H JMP KEY6KEY5: TEST AL,08H JE NKEY MOV AL,18HKEY6: ADD AL,BL CMP AL,10H JNC FKEY MOV BL,AL MOV BH,0H MOV SI,OFFSET DATA2 MOV AL,BX+SI RET8NKEY: MOV AL,20HFKEY: RETDATA2:DB 07H,04H,08H,05H,09H,06H,0AH,0BH,DB 01H,00H,02H,0FH,03H,0EH,0CH,0DHFOR8251: CALL T8253 MOV A

17、L,65H OUT DX,AL MOV DX,03F9H MOV AL,25H OUT DX,AL MOV DX,03F9H MOV DX,65H OUT DX,AL MOV DX,03F9H MOV AL,4EH OUT DX,AL MOV DX,03F9H MOV AL,25H OUT DX,AL RETT8253: MOV DX,43H ;9600 MOV AL,76H OUT DX,AL MOV DX,41H MOV AL,0CH OUT DX,AL MOV DX,41H MOV AL,00H OUT DX,AL MOV DX,03F9H MOV DX,03F9H RET DISP:

18、MOV AL,0FFH ;00H MOV DX,PA OUT DX,AL MOV CL,0DFH ;20H ;显示子程序 ,5MS 9 MOV BX,OFFSET BUFDIS1: MOV AL,BX MOV AH,00H PUSH BX MOV BX,OFFSET DATA1 ADD BX,AX MOV AL,BX POP BX MOV DX,PB OUT DX,AL MOV AL,CL MOV DX,PA OUT DX,AL PUSH CXDIS2: MOV CX,00A0H INC BX ROR CL,1 ;SHR CL,1 JMP DIS1 LX1: MOV AL,0FFH MOV D

19、X,PB OUT DX,AL RETBUF1: MOV BUF,08H MOV BUF+1,02H MOV BUF+2,05H MOV BUF+3,01H MOV BUF+4,17H MOV BUF+5,01H RETBUF2: MOV BUF,09H MOV BUF+1,00H MOV BUF+2,00H MOV BUF+3,0DH MOV BUF+4,10H MOV BUF+5,10H10 RETBUF3: MOV BUF,0EH MOV BUF+1,18H MOV BUF+2,18H MOV BUF+3,10H MOV BUF+4,10H MOV BUF+5,10H RETCODE ENDS END START114 验证测试 采用 DICE-8086 对本设计进行验证。在 P.态下,运行实验程序,如在 PC 机和实验系统联机状态下,可用鼠标左键单击菜单栏“文件”或工具栏“新建图标” , 建立以“.ASM”为后缀的文件,输入源文件并保存,再单击工具栏中编译,即可完成源文件自动编译、装载目标代码功能,再单击“调试”中“R 运行”或工具图标运行,运行后的结果如图 4.1,此时数码

温馨提示

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

评论

0/150

提交评论