微机实验_可编程串行通信(8250)

合集下载

南邮通达微机系统串行口的测试实验三

南邮通达微机系统串行口的测试实验三
一、实验目的和要求
学习串行接口8250的工作原理及编程和中断程序的设计,运用微机系统串行通信知识,进行微机系统串行口的测试。
预习相关知识点,给出设计方案和程序框图,提前编制源程序。要求字符发送采用查询方式,字符的接收采用中断方式。
二、实验环境
PC,Windows系统,TPC-486EM_32位微机原理及接口技术实验系统
实验报告
(2016/ 2017学年第一学期)
课程名称
微型计算机原理与接口技术
实验名称
微机系统串行口的测试
实验时间
2016

11

17

指导单位
南京邮电大学
指导教师
学生姓名
班级学号
学院(系)
通信工程
专业
信息工程
实验报告
实验名称
微机系统串行口的测试
指导教师
实验类型
综合
实验学时
2
实验时间
2016/11/17
JZSCANR
MOVDL,AL
MOVAH,2
INT21H
MOVDL,ODH
INT21H
INCBX
LOOPSCANS
MOVAH,4CH
INT21H
I8250PROC
MOVDX,3FBH
MOVAL,80H
OUTDX,ALMOVDX,3F9H
MOVAL,0
OUTDX,AL
MOVDX,3F8H
MOVAL,60H五、指导教师评分成绩批阅人日期
2016.12
BEG:MOVAX,DATA
MOVDS,AX
CALLI8250
MOVBX,OFFSETMESG
MOVCX,COUNT

9.2 可编程串行接口8250

9.2  可编程串行接口8250

常用的可编程串行接口芯片有Intel的8250、8251, 常用的可编程串行接口芯片有Intel的8250、8251, 美国国家半导体公司的16550等 8250与16550完全 美国国家半导体公司的16550等。8250与16550完全 兼容。 兼容。
电子科技大学
微机系统原理及接口技术应用
异步串行数ቤተ መጻሕፍቲ ባይዱ发送格式
电子科技大学
微机系统原理及接口技术应用
(2)发送部分
1.CPU送来的并行数据存放在发送保持寄存器中 1.CPU送来的并行数据存放在发送保持寄存器中 2.数据经过发送移位寄存器进行并串转换 2.数据经过发送移位寄存器进行并串转换 3.按规定格式加上起始位、奇偶校验位和停止位,构成完整 3.按规定格式加上起始位 奇偶校验位和停止位, 按规定格式加上起始位、 的串行数据帧 4.数据由Sout发出 4.数据由Sout发出 数据由Sout 另外,当数据进入到发送移位寄存器后,发送保持寄存器 另外,当数据进入到发送移位寄存器后, 自动变空,以接收下一个待发送的数据。 自动变空,以接收下一个待发送的数据。
状态时,若允许Modem状态中断,就会产生一次中断 状态中断, 状态时,若允许Modem状态中断 接收线路信号检测输入, =0,表明Modem已 . RLSD :接收线路信号检测输入, RLSD =0,表明Modem已 收到数据载波,8250/16550应立即开始接收解调 收到数据载波,8250/16550应立即开始接收解调 后的数据
电子科技大学
微机系统原理及接口技术应用
同步通信: 同步通信: 1.通信开始后,发送设备连续发送字符, 1.通信开始后 发送设备连续发送字符, 通信开始后, 接收设备首先搜索同步字符, 接收设备首先搜索同步字符,在得到同 步字符后开始接收数据。 步字符后开始接收数据。 2. 传送过程中,发送设备和接收设备必须 传送过程中, 要保持完全同步,即使用同一个时钟。 要保持完全同步,即使用同一个时钟。

微机原理课件 8250

微机原理课件 8250
第二节 可编程串行接口 8250
一、8250的组成及引脚 的组成及引脚
数 据 总 线 D0 ~ D7 冲 器 部 数 据
CS0 CS1 CS2 A2 A1 A0 ADS DISTR DISTR DOSTR DOSTR DDIS MR
数据发送寄存器 数据接收寄存器 缓 内 线路控制寄存器 线路状态寄存器 除数寄存器高位 总 线 除数寄存器 位
4、调制解调控制寄存器MCR(100B 3FCH) 、调制解调控制寄存器 ( )
D7 0 D6
0
D5
0
D4
D3
D2
D1
D0 DTR
LOOP OUT2 OUT1 RTS
其中D0 ~ D3位对应8250的四个引脚,当该位为1时,相应的引脚输出有效的低电平。 当D4 = 1时,8250工作循环回送状态。(此时8250发送的数据被自身接收。用于自检)
PC机串口端口地址表 机串口端口地址表
PC机串口硬件连接图 机串口硬件连接图
再写高分频值到DLH(3F9H) ( 再写高分频值到 )
2、设置通信数据格式(对通信控制寄存器写入命令字) 、设置通信数据格式(对通信控制寄存器写入命令字) 假定7个数据位 个停止位 偶校验。 个数据位, 个停止位, 假定 个数据位,1个停止位,偶校验。 MOV DX ,3FBH MOV AL ,1AH OUT DX ,AL
3、设置操作方式 (对MODEM控制寄存器写控制字) 、 控制寄存器写控制字) 控制寄存器写控制字
MOV DX ,3FCH MOV AL ,03 OUT DX ,AL 4、设置中断允许寄存器 、 MOV DX ,3F9H MOV AL ,0 OUT DX ,AL DTR = 0,RTS = 0,OUT2 = 0,不自检 , , ,

实验单机串行通信

实验单机串行通信

实验六、单机串行通信一、实验目的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,接口芯片选用8250。

8250片内有10个寄存器,其中有几个是共用地址的,其识别由线路控制寄存器(LCR)的最高位DLAB来决定。

各寄存器的地址和格式如下所示:.表 4.9 8250寄存器地址DLAB A2 A1 A0 I/O口地址对应寄存器0 0 0 0 3F8H(2F8H)发送端数据寄存器0 0 0 0 3F8H(2F8H)接受端数据寄存器1 0 0 0 3F8H(2F8H)波特率因子寄存器(低8位)1 0 0 1 3F9H(2F9H)波特率因子寄存器(高8位)0 0 0 1 3F9H(2F9H)中断允许寄存器(IER)X 0 1 0 3FAH(2FAH)中断识别寄存器(IIR)X 0 1 1 3FBH(2FBH)线路控制寄存器(LCR)X 1 0 0 3FCH(2FCH)MODEM控制寄存器(MCR)X 1 0 1 3FDH(2FDH)线路状态寄存器(LSR)X 1 1 0 3FEH(2FEH)MODEM状态寄存器X 1 1 1 3FFH(2FFH)保留IER: D7 D0IIR: D7 D00:有中断中断识别 1:无中断 00:MODEM状态变化 01:发送缓冲器空10:接收器数据就绪 11:接收字符错或接收中止状态LCR: D7 D00:该位无效校验时附加位 1:偶 1:有 1:2位 10:7 11:81:强迫8250连 0:该位无效续输出低电平 1:奇偶校验位恒为0(对偶校验)或恒为1(对奇校验)LSR: D7 D0发送器保持寄存器空奇偶错[注:上面在各位为1时状态存在]MCR: D7 D0该位为可由用户指定的输出信号MSR: D7 D08250在正常通信之前,需要先设定波特率因子寄存器,它决定传输数据的速率。

可编程串行通信接口芯片16550与8250

可编程串行通信接口芯片16550与8250
DSR CTS △RLSD △RI
D1
△DSR
D0
△CTS
△表示变化的状态
△允许发送(CTS) △ 数据装置就绪(DSR) △ 响铃指示 △ 数据载波检测(DCD)
2023年5月4日星期四
7.中断允许寄存器IER
反映了接收器和发送器以及Modem是否允许中 断的情况,通过设置可以指定其中的某些部件 允许中断。它是一个可读可写的寄存器。
其它引脚
1. 电源及时钟VCC,GND,XTLA1,XTLA2 2. 数据线:D7~D0 3. 片选信号:CS0,CS1和/CS2(输入) 4. 选通信号:
地址输入选通: /ADS 数据输入选通:DISTR和/DISTR(接/IOR) 数据输出选通:DOSTR和/DOSTR(接/IOW) 5. 主复位:MR 6. 接收时钟: =接收波特率的16倍 7. 清除发送: /CTS 8. 数据装置(MODEM)准备好: /DSR 9. 接收线路信号检测: /RLSD(有效时表示Modem检测数据载波 10.振铃指示:/RI 有效表示Modem已经接收到一个电话振铃信号
读/写操作 OUT (写) IN (读) IN(读)或 OUT(写) IN(读)或 OUT(写) IN(读)或 OUT(写) IN (读) IN(读)或 OUT(写) IN(读)或 OUT(写) IN(读) IN(读)
2023年5月4日星期四
2.串行接口初始化
串行接口初始化的任务: (1)设置波特率 (2)确定通信的具体格式 (3)设置操作方式 (4)设定是否使用中断、是否自测试操作等
D7 D6 D5 D4
IEE 0 0
0
0
1 允许中断 0 禁止中断 1 允许中断 0 禁止中断
Modem状态中断 接收字符代码错 或接收中止状态中断

可编程串行通信接口8250A自发自收实验

可编程串行通信接口8250A自发自收实验

可编程串行通信接口8250A自发自收实验一、实验目的和要求1.了解并行通信的工作原理;2.掌握8250的编程方法。

二、实验内容和原理1.实验内容:对8250编程,实现下列功能:(1)主机键盘输入一个字符,并将字符的ASCⅡ码加1,指向ASCⅡ表中的下一个字符,通过SOUT引脚发送出去;(2)通过SIN引脚接受字符;(3)在屏幕上显示键盘输入的字符和接收到的字符。

这样就实现了CPU自发自收的功能。

线路连接:8250的D7~D0、A2~A0和DISTR、DOSTR引脚与系统数据线、地址线和读写控制线对应连接;片选线CS2接地址译码器输出端;INTRPT引脚与中断请求输入IRQ2端相连;2MHz的时钟信号送到XTIL1;BAUDOUT与RCLK连接;8250数据接收线SIN 与输出线SOUT相连接,是先自发自收。

线路连接如图1所示。

编程提示:8250采用查询方式进行数据通信,一桢数据格式为7位数据位位数据位,一位停止位,奇校验,波特率为2400bps,输入的基准时钟频率为2MHz。

流程图程序:DA TA SEGMENTMES1 DB 'IT WILL DISPLAY ON THE TERMINAL_SCREEN!!',0AH,0DH DB 'PLAY Q KEY EXIT TO DOS',0AH,0DH,0AH,0DH,'$'IOPORT EQU 0D880H-0280HIO8250CS EQU IOPORT+290H ;8250地址IO8250ZD EQU IOPORT+291HIO8250ZS EQU IOPORT+292HIO8250XK EQU IOPORT+293HIO8250MO EQU IOPORT+294HIO8250XZ EQU IOPORT+295HDA TA ENDSCODE SEGMENTASSUME CS:CODE,DS:DA TASTART: MOV AX,DATAMOV DS,AXMOV DX,OFFSET MES1 ;显示提示信息MOV AH,09INT 21HMOV AL,80H ;使DLAB=1,允许写除数寄存器MOV DX,IO8250XK ;线路控制寄存器OUT DX,ALMOV AX,30H ;除数值MOV DX,IO8250CS ;除数寄存器低8位OUT DX,ALMOV AL,AHINC DX ;除数寄存器高8位OUT DX,ALMOV AL,0AH ;7位数据、1位停止位,奇校验MOV DX,IO8250XK ;线路控制寄存器OUT DX,ALMOV AL,10H ;使自检控制位LOOP=1,自检MOV DX,IO8250MO ;MODEM控制寄存器OUT DX,ALMOV AL,00H ;屏蔽中断MOV DX,IO8250ZD ;写中断允许寄存器OUT DX,ALWA T: MOV DX,IO8250XZ ;读线路状态寄存器IN AL,DXTEST AL,00011110B ;出错否?JNZ ERROR ;转到ERRORTEST AL,00000001B ;接受数据就绪否?JNZ RCEVE ;转接收TEST AL,00100000B ;发送寄存器空否?JZ WAT ;不空,返回等待MOV AH,01H ;读键盘INT 21HMOV DX,IO8250CS ;发送下一个字符INC ALOUT DX,ALJMP WAT ;返回RCEVE: MOV DX,IO8250CS ;读接收数据IN AL,DXAND AL,01111111B ;保留7位CHAR: MOV DL,AL ;显示MOV AH,02HINT 21HDEC DLCMP DL,51H ;键入字符是吗‘Q’?JZ QUITCMP DL,71HJZ QUIT ;是,退出JMP WAT ;不是,继续QUIT: MOV AX,4C00H ;退出INT 21HERROR: MOV DX,IO8250XZ ;清除线路状态寄存器IN AL,DXMOV DL,'?' ;显示字符'?'MOV AH,02HINT 21HJMP WAT ;返回继续CODE ENDSEND START2.实验原理8250内部有三种寄存器,8250初始化编程为:a、将80H写入通信线路控制寄存器使最高位为1,建立寄存器和中断允许寄存器的标志。

8250串行接口

8250串行接口
mov dx,bx
add dx,0ah
in ax,dx ;读入线路状态寄存器(LSR)内容
test ax,20h ;检测发送保持寄存器状态
jnz recv2
pop ax
jmp send
recv2: pop ax
mov dx,bx
out dx,ax
ret
recv: mov bx,0480h
mov dx,bx
三、实验原理介绍
实验原理图见8250串行接口电路。由MAX232完成RS232电平和TTL电平的转换,由8250完成数据的收发。8250内部有10个寄存器,分别对应着不同的IO口地址。对不同的寄存器进行初始化或读出写入操作就可以完成与计算机的通信。由于不能同时收发数据,所以8250又称为通用串行异步收发器,简写为:UART。8250实验电路的所有信号均已连好。
六、程序框图
上位机程序框图下位机程序框图
程序框图
七、实验程序
code segment ;define data segment
assume cs:code
org 0100h
start: md dx,6;信线路控制寄存器端口地址PORT+6
mov ax,80h ; DLAB=1
8250串行接口电路
四、实验步骤
1、实验接线
利用串口电缆连接实验箱的串口和计算机的串口(COM1或COM2)
2、编写程序。
3、在实验箱上运行86编译系统,下载实验程序8250.asm,并全速运行。
4、实验箱退出86编译系统,启动实验六的上位机驱动程序T6UP.EXE,首先选择串行端口(COM1或COM2),端口与步骤1一致,键入串口号即可,然后从键盘上输入字符,看返回字符是否正确。欲退出T6UP.EXE,按回车键。

微机实验_可编程串行通信(8250)

微机实验_可编程串行通信(8250)
三、实验步骤
微型计算机本身配置了两个串行通信接口,分别为串行口1(COM1)和串行口2(COM2),I/O端口地址分别为3F8H~3FFH和2F8H~2FFH,对外接口采用9针插座。串行通信接口采用8250。
8250寄存器的端口地址如表10-1所示。
表10-1
I/O端口
IN/OUT
DLAB
寄存器名称
60H
1200
00H
30H
2400
00H
18H
4800
00H
0CH
9600
3.中断允许寄存器IER(3F9H)如图10-2所示。
图10-2
4.MODEM控制寄存器MCR(3FCH)如图10-3所示。
图10-3
5.9针串口插座(DB-9)外形如图10-4所示,引脚说明如表10-3所示。
图10-4
表10-3
EXIT:MOVAH,4CH;返回DOS
INT21H
STARTENDP
CODEENDS
ENDSTART
五、实验结论与心得
成绩
教师签名
批改时间
年月日
;内部输出输入反接,中断禁止
MOVAL,13H
OUTDX,AL
MOVDX,3F9H;设中断允许寄存器为0,使4种中断被屏蔽
MOVAL,0H
OUTDX,AL;把接收到的字符显示出来,把键盘输入的字符发
;送出去
FOREVER:MOVDX,3FDH;输入线状态寄存器内容,测试接收是否出错
INAL,DX
TESTAL,1EH
3F8H
OUT
0
数据发送寄存器
3F8H
IN
0
数据接收寄存器
3F8H
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

学生实验报告
3FFH ×不用1.传输线路控制寄存器LCR(3FBH)如图10-1所示。

图10-1
2.除数寄存器DLL、DLH(3F8H,3F9H)
常用波特率及除数对照表如表10-2所示。

表10-2
除数寄存器
波特率(BIT/S)
高字节低字节
04H 17H 110
03H 00H 150
01H 80H 300
00H C0H 600
00H 60H 1200
00H 30H 2400
00H 18H 4800
00H 0CH 9600 3.中断允许寄存器IER(3F9H)如图10-2所示。

图10-2
4.MODEM控制寄存器MCR(3FCH)如图10-3所示。

图10-3
5.9针串口插座(DB-9)外形如图10-4所示,引脚说明如表10-3所示。

图10-4
表10-3
RS-232C信号说
9芯引脚号引脚名称

1 空
2 RXD 接收数据
3 TXD 发送数据
4 DTR 数据终端就绪
5 GND 信号地
6 DSR 数据装置就绪
7 RTS 发送请求
8 CTS 发送允许
9 保护地6.编程提示
(1)程序流程图如图10-5所示。

图10-5 程序流程图
四、实验参考程序
STACK SEGMENT PARA STACK 'STACK'
DB 256 DUP(?)
STACK ENDS
CODE SEGMENT PARA PUBLIC 'CODE'
ASSUME CS:CODE
START PROC FAR
PUSH DS ;保存PSP 地址
XOR AX,AX
PUSH AX ;初始化8250为7位数据位,1位停止位,奇校
;验,波特率1200,并设定为内部连接方式MOV DX,3FBH
MOV AL,80H
OUT DX,AL ;设传输线控制寄存器D7为1
MOV DX,3F8H ;设波特率为1200
MOV AL,60H
OUT DX,AL
MOV DX,3F9H
MOV AL,0
OUT DX,AL
MOV DX,3FBH ;设奇校验,1位停止位,7位数据位
MOV AL,0AH
OUT DX,AL
MOV DX,3FCH ;设MODEM控制寄存器发DTR和RTS信号,
MOV AH,14 ;显示“?”
INT 10H
JMP FOREVER
EXIT:MOV AH,4CH ;返回DOS
INT 21H
START ENDP
CODE ENDS
END START
五、实验结论与心得
成绩教师签名批改时间年月日。

相关文档
最新文档