串口通讯课程设计

成 绩:

南京信息工程大学

《微机技术综合实验》

设计报告

设计课题: 专业班级: 测控技术与仪器 2 班 学生姓名: 倪阳 学生学号: 指导教师: 杨常松

二O 一四 年 五 月二十 日

8251单机串口通讯

一、设计目的

1.掌握8086 实现串口通信的方法;

U3

2.了解串行通讯的协议,8251芯片的逻辑功能以及正确的使用方法;

3.使用微处理器芯片及其它典型的接口芯片,设计微处理器应用的典型接口电路,加深 对微处理器、典型接口芯片特性的理解,掌握微处理器接口电路设计的初步方法,并进行一定的编程训练,加强微机应用的工程实践能力;

二、设计要求

1、利用 8086 控制8251A 可编程串行通信控制器,实现向PC 机发送字符串“WELCOME TO 8086 SIMULATION”

2、要求实时显示传送或者接受的数据 3、CPU 和8251之间采用查询方式交换数据

三、设计电路原理图

1.电路原理图

U1

3 4 7 8 13 14 17 18 1 11

D0 D1 D2 D3 D4 D5 D6 D7 OE LE 74HC373

32 29

M/IO

8086

LOAD_SEG=0x0200 SRCFILE=1.asm

74154

Q0 Q1 Q2 Q3 Q4 Q5 Q6 Q7

2 5 6 9 12 15 16 19

A1

U4

23 22 21 20 M/IO 18

19

A B C D E1 E2

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

1 2 3 4 5 6 7 8 9 10 11 13 14 15 16 17

IO0 IO1 IO2 IO3 IO4 IO5 IO6 IO7 IO8 IO9 IO10 IO11 IO12 IO13 IO14 IO15

WR/LOCK

U12(1M)

P1

1 6 2 7 3 8 4 9

DCD DSR RXD RTS TXD CTS DTR RI

D C B A

ERROR COMPIM

四、软件流程图与程序清单

8251是用来作为CPU 与外设或者调制解调器之间的接口芯片。它的信号线可以分为4组:与CPU 连接的信号线,状态信号线,时钟信号线和与外设接口的信号线。与CPU 连接的信号线中,RESET 是芯片复位线,当该线为高电平时,芯片复位而处于空闲状态;C/D是地址线,若此线为高电平,则CPU 访问8251命令寄存器或状态寄存器,低电平则访问数据寄存器。状态信号线供CPU 查询或向CPU 申请中断用。TxRDY 发送准备好信号,高电平有效;RxRDY 接收准备好信号,高电平表示输入端接受了一个字符,通知CPU 取数据;TxE 发送空信号,高电平有效;SYNDET 为双功能引脚,同步方式时作为同步字符检出信号。时钟信号线包括发送器时钟信号(/TxC)、接收器时钟信号(/RxC)和内部工作时钟信号CLK 。 面向调制器的接口信号线包括:/DTR,数据终端准备好,是输出信号,低电平有效;/DSR,通信设备准备好,是输入信号,低电平有效;/RTS,请求发送,是输出信号,低电平有效;/CTS,允许发送,是输入信号,低电平有效;TxD ,发送数据线;RxD ,接收数据线。8251有两个8位的命令字,和一个8位状态字。方式命令字指定通信方式及数据格式,即指定8251为异步或同步,并按照其通信方式约定帧数据的格式。方式命令字的格式为8位,可以分为4组,每组2字,格式如下。

工作命令字指定8251进行某种操作,包括发送、接收、内部复位和检查同步字符等,或者处于某种工作状态,以便接收或发送数据。工作命令字的格式为8位,格式如下。

状态字报告8251何时才能开始接收或发送数据,以及接收数据是否有错。状态字为8位,其格式如下,所有状态位置“1”有效。

方式命令字、工作命令字和状态字之间的关系是:方式命令字只是约定了双方通信的方式及数据格式、传输速率等参数,但并没有规定数据传输的方向是接受还是发送,因此需要工作命令字来控制,而何时才能发送或者接收则由状态字控制。只有在8251进入发送或接受准备好状态才能真正开始数据的传送。

8251是可编程的串行通信接口,可以管理信号变化范围很大的串行数据通信。有下列基本性能:

(1)通过编程,可以工作在同步方式,也可以工作在异步方式。

(2)同步方式下,波特率为0~64K ,异步方式下,波特率为0~19.2K 。

(3)在同步方式时,可以用5~8位来代表字符,内部或外部同步,可自动插入同步字符。

(4)在异步方式时,也使用5~8位来代表字符,自动为每个数据增加1个启动位,并能够根据编程为每个数据增加1个、1.5个或2个停止位。 (5)具有奇偶、溢出和帧错误检测能力。 (6)全双工,双缓冲器发送和接收器。

①数据线D7~D0——双向、三态,用于与CPU 传送数据、命令、状态等信息。 ②片选CS ——用于芯片寻址。 ③读写控制RD ,WR 。

④控制/数据选择信号(输入)。 ⑤C/D(A0)RD WR 功能 0 0 1 CPU 从8251A 输入数据 0 1 0 CPU 向8251A 输出数据 1 0 1 CPU 读8251A 的状态 1 1 0 CPU 向8251A 写控制命令

因为8251A 使用前必须进行初始化,以确定工作方式、传送速率、字符格式以及停止位长度等;改变8251A 的工作方式时必须再次进行初始化编程。

程序设计流程图

系统RESET 初始化

8086CPU 与8251A 的硬件接线图

源程序:

ADD8251D EQU 30H ; 串行通信控制器数据口地址 ADD8251C EQU 32H ; 串行通信控制器控制口地址

CODE SEGMENT ;

ASSUME DS:DATA,CS:CODE

START:

MOV AX,DATA MOV DS,AX

INIT: XOR AL,AL ;AL 清零 MOV CX,03

MOV DX,ADD8251C

OUT1: OUT DX,AL ; 往8251A 的控制端口送3个0 LOOP OUT1

MOV AL,40H OUT DX,AL NOP

MOV DX, ADD8251C

MOV AL, 01001101b ; 写模式字 1停止位, 无校验,8数据位, x1 OUT DX, AL

MOV AL, 00010101b ; 控制字 清出错标志, 允许发送接收 OUT DX, AL

RE: MOV CX,25 LEA DI,STR1

Send: ; 串口发送 MOV DX, ADD8251C

MOV AL, 00010101b ; 清出错, 允许发送接收 OUT DX, AL NOP WTXD:

IN AL, DX

TEST AL, 1 ; 发送缓冲是否为空 NOP

JZ WTXD

MOV AL, [DI] ; 取要发送的 MOV DX, ADD8251D

OUT DX, AL ; 发送 PUSH CX

MOV CX,20h

SIM: LOOP SIM POP CX INC DI LOOP Send JMP RE

CODE ENDS DATA SEGMENT

STR1 DB 'THIS IS PROTEUS 8251 UART TEST ! ' DB 'WELCOME TO 8086 SIMULATION' DATA ENDS

END START

五、结论与心得

课程设计的几天里,我天天对着电脑,忙着接线,脑袋跟随者CPU 不停的转,中午也不回宿舍睡觉,但是仍然有一种愉悦感,我向这就是程序设计的魅力,遇到问题,解决问题的过程时快乐的。进步本身就时一件令人快乐的事情。

做这个设计题目,前前后后花了我一周的时间。其中前三天用于做前期的知识准备,还有一些时间用于和同学探讨,还有一些时间用于思维的转变,有时自己的思维方式相对有些死板而已。要敢于思考,要喜欢思考,要善于思考,这对我自己来说,都是一个启发。

在程序调试成功后,有不少同学问我,这个程序如何理解。我从头到尾给他们讲了,他们懂了,我自己对程序的理解就更深一步了,得到了一种成就感;当然在写程序的过程中,在其他的同学身上学到了很多东西,自己也取得了很大的进步。

有时当有一个没解决的问题困扰我的时候,在睡觉的时候,脑袋里出现的全是程序设计的代码,达到了一种“暮然回首,那人却在灯火阑珊处”的境界了。程序设计的感觉真好!真希望多开几门这样的课!

六、参考文献

[1]胡汉才. 单片机原理及其接口技术[M].北京:清华大学出版社,2010.3:299-319 [2]范立南, 张乐. 微型计算机原理及应用[M].北京:清华大学出版社,2012.1:12-54

[3]杨立, 邓振杰, 荆淑霞. 微型计算机原理与接口技术[M].北京:中国铁道出版社,2009.3:45-89 [4]方立友. 微机原理与汇编语言实用教程[M].北京:清华大学出版社,2008.5:159-189

附录:

- 10-


相关文章

  • 三自由度气动机械手实验指导书
  • 三自由度气动机械手实验指导书 目 录 实验1 气动机械手拆装实验 ...................................................................................................... 1 实验2 气动机械手的测绘 ...

  • 专有名词解释
  • 专有名词解释 关键字:专有名词 RS-232 RS-422 RS-485 串口 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z A ADDC(自动数据流向控制) 当使用2线RS-485的时候,最重要的事情之一就是要确认数据收发状态.由于RS-4 ...

  • PC与单片机的串口通信
  • PC与单片机的串口通信设计与实现 摘要 单片机经历TSCM.MCU.SOC三大阶段,以其超小型化.电路简单.功耗低等特点广泛应用于各个领域,本文提出了基于STC89C51单片机与PC串口通信的设计方案,从PC机对单片机数据的采集.显示,与PC机对单片机设备控制的两个方面分别论述.在介绍PC机与单片机 ...

  • 单片机课程设计大纲
  • 单片机原理及应用课程设计教学大纲 课程设计名称:单片机原理及应用 课程设计编号:E1010020 课程设计学分:2.0 课程设计周(时)数:2周 课程设计适用专业: 测控技术与仪器.自动化.电气工程及其自动化 课程设计教材及主要参考资料: <单片机原理及应用>, 张毅刚,高等教育出版社, ...

  • WZJ-22微机直流绝缘监测装置使用说明书
  • WZJ-22 微机直流绝缘监测装置 使 用 说 明 书 1. 概述 1.1 适用范围 直流绝缘监测装置在直流系统中起到了极其重要的作用.运行实践证明,直流系统接地的危害不仅使继电保护装置误动.拒动,甚至会造成采用直流控制的一次设备误动.拒动,严重危及电力系统安全稳定运行.所以,必须实时在线监测直流系 ...

  • 基于51单片机的直流电机转速测量与控制
  • 单片机原理与应用 课程设计 院 系 信息工程学院 班 级 自动化121 学生姓名 张晓峰 学 号 [1**********]2 日 期 2015/7/9 任务要求 基于51单片机的直流电机转速测量与控制 一.设计目的 1.通过本次课程设计加深对单片机课程的全面认识复习和掌握,对单片机课程的应用有进一 ...

  • RS232和RS485正确接线原理图
  • RS232和RS485接线的正确原理图 RS-232是串行数据接口标准,最初都是由电子工业协会(EIA )制订并发布的,RS-232在1962年发布,命名为EIA-232-E ,作为工业标准,以保证不同厂家产品之间的兼容.RS-422由RS-232发展而来,它是为弥补RS-232之不足而提出的.为改 ...

  • SIGMA通信服务器在变电站的应用
  • 摘要:随着农网的不断完善,县级电网对自动化的要求越来越高.文章介绍了一种通信管理机在变电站自动化改造中的应用及其配置方法.它可以提高变电站的自动化水平,对于县级电网的自动化改造具有重要的参考意义. 关键词:自动化通信:服务器:SIGMA 中图分类号:TM764 文献标识码:A 文章编号:1009-2 ...

  • C51单片机基础知识
  • 51单片机 51单片机是对目前所有兼容Intel 8031指令系统的单片机的统称.该系列单片机的始祖是Intel的8031单片机,后来随着Flash rom技术的发展,8031单片机取得了长足的进展,成为目前应用最广泛的8位单片机之一,其代表型号是ATMEL公司的AT89系列,它广泛应用于工业测控系 ...

© 2024 范文中心 | 联系我们 webmaster# onjobs.com.cn