串口通讯课程设计.docx

上传人:b****3 文档编号:4866021 上传时间:2022-12-11 格式:DOCX 页数:14 大小:119.72KB
下载 相关 举报
串口通讯课程设计.docx_第1页
第1页 / 共14页
串口通讯课程设计.docx_第2页
第2页 / 共14页
串口通讯课程设计.docx_第3页
第3页 / 共14页
串口通讯课程设计.docx_第4页
第4页 / 共14页
串口通讯课程设计.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

串口通讯课程设计.docx

《串口通讯课程设计.docx》由会员分享,可在线阅读,更多相关《串口通讯课程设计.docx(14页珍藏版)》请在冰豆网上搜索。

串口通讯课程设计.docx

串口通讯课程设计

成绩:

 

南京信息工程大学

 

《微机技术综合实验》

设计报告

 

设计课题:

8251串口通讯课程设计

专业班级:

测控技术与仪器2班

学生姓名:

倪阳

学生学号:

20112341905

指导教师:

杨常松

 

二O一四年五月二十日

8251单机串口通讯

一、设计目的

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

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

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

二、设计要求

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

2、要求实时显示传送或者接受的数据

3、CPU和8251之间采用查询方式交换数据

三、设计电路原理图

1.电路原理图

 

U3

3

4

7

2

5

6

9

12

15

16

19

D0

D1

D2

D3

D4

D5

D6

D7

Q0

Q1

Q2

Q3

Q4

Q5

Q6

Q7

A1

U4

8

13

14

17

18

23

22

21

20

1

2

3

4

5

6

7

8

A

B

C

D

0

1

2

3

4

5

6

7

8

IO0

IO1

IO2

IO3

IO4

IO5

IO6

IO7

U1

M/IO

1

11

18

19

OE

LE

E1

E2

74HC373

9

IO8

10

11

13

14

15

16

17

9

IO9

32

29

10

11

12

13

14

15

IO10

IO11

IO12

IO13

IO14

IO15

WR/LOCK

M/IO

8086

LOAD_SEG=0x0200

SRCFILE=1.asm

74154

U12(1M)

P1

1

DCD

6

2

7

3

8

4

9

DSR

RXD

RTS

TXD

CTS

DTR

RI

ERROR

COMPIM

D

C

B

A

 

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

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)RDWR功能

001CPU从8251A输入数据

010CPU向8251A输出数据

101CPU读8251A的状态

110CPU向8251A写控制命令

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

 

程序设计流程图

 

8086CPU与8251A的硬件接线图

 

源程序:

ADD8251DEQU30H;串行通信控制器数据口地址

ADD8251CEQU32H;串行通信控制器控制口地址

CODESEGMENT;

ASSUMEDS:

DATA,CS:

CODE

START:

MOVAX,DATA

MOVDS,AX

INIT:

XORAL,AL;AL清零

MOVCX,03

MOVDX,ADD8251C

OUT1:

OUTDX,AL;往8251A的控制端口送3个0

LOOPOUT1

MOVAL,40H

OUTDX,AL

NOP

MOVDX,ADD8251C

MOVAL,01001101b;写模式字1停止位,无校验,8数据位,x1

OUTDX,AL

MOVAL,00010101b;控制字清出错标志,允许发送接收

OUTDX,AL

 

RE:

MOVCX,25

LEADI,STR1

Send:

;串口发送

MOVDX,ADD8251C

MOVAL,00010101b;清出错,允许发送接收

OUTDX,AL

NOP

WTXD:

INAL,DX

TESTAL,1;发送缓冲是否为空

NOP

JZWTXD

MOVAL,[DI];取要发送的

MOVDX,ADD8251D

OUTDX,AL;发送

PUSHCX

MOVCX,20h

SIM:

LOOPSIM

POPCX

INCDI

LOOPSend

JMPRE

CODEENDS

DATASEGMENT

STR1DB'THISISPROTEUS8251UARTTEST!

'

DB'WELCOMETO8086SIMULATION'

DATAENDS

ENDSTART

 

五、结论与心得

课程设计的几天里,我天天对着电脑,忙着接线,脑袋跟随者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 

附录:

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工程科技 > 材料科学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1