实验13_串口通信8251

合集下载

8251串行通讯实验

8251串行通讯实验

8251串行通讯实验一.基本实验内容:实现二台PC机之间的双机通讯。

即甲机输入的键值发送到乙机CRT上显示,反之亦然。

二原理图及连线:1.8251CS连208~20FH (波特率2400)2.9芯电缆对接二机的RS-232口三.参考程序D8251 EQU 208HZ8251 EQU 20aHDATA SEGMENTMESS DB '按下!后返回DOS.',0DH,0AH,'$'DATA ENDSSTACK SEGMENTSTA DW 32 DUP()TOP DWSTACK ENDSCODE SEGMENTMAIN PROC FARASSUME CS:CODE,DS:DATA,SS:STACKSTART:MOV DX,Z8251 ;初始化8251MOV AL,40HOUT DX,ALMOV CX,1000hLOOP $MOV AL,0CEH ;设置为8个数据位,两个停止位波特率因子为16 OUT DX,AL ;无奇偶校验位MOV CX,1000hLOOP $MOV AL,25H ;设为请求发送,允许发送,允许接收状态OUT DX,ALMOV CX,1000hLOOP $;NIT 8251 ENDREC: MOV DX,Z8251MOV AH,02HWAIT9: IN AL,DX ;有数据送到吗AND AL,AHJZ SEND ;没有数据送到则跳转至发送MOV DX,D8251 ;有数据送到则从数据缓冲区读入IN AL,DXMOV DL,ALMOV AH,02H ;显示在屏幕上INT 21HCMP AL,'!'JE ED ;接收到结束符则返回DOSJMP REC ;不是结束符则继续接收ED: MOV AX,4C00HINT 21HSEND: MOV CX,1000hLOOP $MOV DX,Z8251MOV AH,01HWAIT8: IN AL,DXAND AL,AHJZ WAIT8 ;发送缓冲器不空则等待MOV DL,0FFHMOV AH,06HINT 21HJZ REC ;无键按下则跳回"接收"处MOV DX,D8251 ;有键按下则发送相应字符OUT DX,ALCMP AL,'!' ;是结束字符则返回DOSJE ED1JMP REC ;不是结束字符则跳回"接收"处ED1: MOV AX,4C00HINT 21HMAIN ENDPCODE ENDSEND START四.思考内容:如何用8253产生串行通讯所需的波特率。

接口实验报告8251

接口实验报告8251

实验报告实验名称__8251A串行口实验____课程名称__微机原理与接口技术__院系部: 专业班级:学生姓名:学号:同组人: 实验台号:指导教师: 成绩:实验日期:华北电力大学一、实验目的及要求:(1)了解串行通信的一般原理和8251A的工作原理。

(2)掌握8251A的编程方法。

二、仪器用具:三、实验原理:1.串行通信的原理串行通信是通过一位一位地进行数据传输来实现通信。

具有传输线少,成本低等优点,适合远距离传送;缺点是速度慢。

完成串行通信任务的接口称为串行通信接口,简称串行接口。

串行接口作为输入时,完成串行到并行格式转换,作为输出时,完成并行到串行格式转换。

图1是串行通信的一般模型。

图1 串行通信的一般模型2.8251A的工作原理825lA是可编程的串行通信接口芯片,是Intel公司生产的一种通用同步/异步数据收发器(USART),可工作在同步方式,也可工作在异步方式,且能进行出错检测。

其内部结构框图如图2所示。

图2 8251A内部结构框图由图可知,8251A由数据总线缓冲器、读/写控制逻辑、调制/解调器控制逻辑、发送缓冲器、发送控制器、接收缓冲器、接收控制器等组成。

(1)在同步方式时,每个字符可定义为5、6、7或8位。

两种方法实现同步,由内部自动检测同步字符或由外部给出同步信号。

允许同步方式下增加奇/偶校验位进行校验。

(2)在异步方式下,每个字符可定义为5、6、7或8位,用1位作奇偶校验。

时钟速率可用软件定义为波特率的l、16或64倍。

另外,8251A在异步方式下能自动为每个被输出的数据增加1个起始位,并能根据软件编程为每个输出数据设置1位、1.5位或2位停止位。

(3)能进行出错检测。

带有奇偶、溢出和帧错误等检测电路,用户可通过输入状态寄存器的内容进行查询。

3.8251A的编程(1)8251A的编程地址:8251A只需要两个端口地址,一个用于数据端口,一个用于控制端口。

数据输入输出用读信号RD和写WR信号区分;状态端口只能读不能写,控制端口只能写不能读。

实验十8251实验

实验十8251实验

实验十8251实验实验十8251串口实验一、实验目的1.了解串行通讯的基本原理。

2.掌握串行接口芯片8251的工作原理和编程方法。

二、实验内容双机通讯实验,使用两台实验装置,一台为发送机,一台为接收机,进行两机间的串行通讯,实验步骤如下:1.按图1连接好电路,其中8254计数器如图2,用于产生8251的发送和接收时钟,TXD 和RXD连在一起。

图1 双机通讯连接图图2 发送、接收时钟连接图波特率因子若选16,计数器2初值为12。

则波特率=1.8432MHZ/12/16=9600bps2.编程:在发送机3000H~3009H 内存单元写入ASCII 值:30,31,32,33,34,35,36,37,38,39 共10 个数。

将这10个数发送给接收机后显示在屏幕上,收发采用查询方式。

三、程序流程8251的初始化流程图四、程序代接收机的代码:M8251_DATA E QU 0600HM8251_CON EQU 0602HM8254_2 EQU 06C4HM8254_CON EQU 06C6HSSTACK SEGMENT STACKDW 64 DUP(?)SSTACK ENDSCODE SEGMENTASSUME CS:CODESTART: MOV AL, 0B6H ;初始化8254 MOV DX, M8254_CONOUT DX, ALMOV AL, 0CHMOV DX, M8254_2OUT DX, ALMOV AL, 00HOUT DX, ALCLIMOV AL, 00H ;复位8251子程序MOV DX, M8251_CONOUT DX, ALMOV AL, 40HOUT DX, ALMOV AL, 7EH ;方式字MOV DX, M8251_CONOUT DX, ALMOV AL, 34HOUT DX, ALMOV AX, 0152H ;输出显示字符'R' INT 10HMOV DI, 3000HMOV CX, 000AHA1: IN AL, DXAND AL, 02HJZ A1MOV DX, M8251_DA TAIN AL, DXAND AL, 7FH ;数据是否出错MOV [DI],ALINC DILOOP A1MOV AL, 00HMOV SI, 300AHMOV [SI], ALMOV AH, 06HMOV BX, 3000HINT 10H ;输出显示接收到的数据STIA2: JMP A2A3: PUSH AXPOP AXLOOP A3POP CXRETCODE ENDSEND START发送机的代码:;发送机M8251_DATA E QU 0600HM8251_CON EQU 0602HM8254_2 EQU 06C4HM8254_CON EQU 06C6H SSTACK SEGMENT STACK DW 64 DUP(?)SSTACK ENDSCODE SEGMENTASSUME CS:CODESTART: MOV AL, 0B6H ;初始化8254, 得到收发时钟MOV DX, M8254_CONOUT DX, ALMOV AL, 0CHMOV DX, M8254_2OUT DX, ALMOV AL, 00H ;复位8251子程序MOV DX, M8251_CONOUT DX, ALMOV AL, 40HOUT DX, ALMOV AL, 07EH ;01111110 (波特率x16)MOV DX, M8251_CONOUT DX, AL ;8251方式字MOV AL, 34H ;31HOUT DX, AL ;8251控制字MOV DI, 3000HMOV CX, 000AHA1: MOV AL, [DI] ;给地址PUSH DXPUSH AXMOV AL, 31H ;操作MOV DX, M8251_CONOUT DX, AL ;发送MOV DX, M8251_DA TAPOP AXOUT DX, ALMOV DX, M8251_CONINC DILOOP A1A2: JMP A2A4: PUSH AXPOP AXLOOP A4POP CXRETA3: IN AL, DXAND AL, 01H ;测试TxE TxRDYJZ A3 ;等待POP DXRETCODE ENDSEND START在此次实验中,实验箱的连线经反复检查后并没有出现问题,后排除可能是远距离连线的接触不良造成了实验中,接收机已知在等待,发送机的数据一直无法传送的问题。

8251串行通讯实验

8251串行通讯实验

师大学数计学院实验报告专业名称 11计科课程微机原理实验名称串行通信实验姓名学号 1107040128251 可编程串行口与PC 机通讯实验一、实验目的(1) 掌握8251 芯片的结构和编程,掌握微机通讯的编制。

(2) 学习有关串行通讯的知识。

(3) 学习 PC 机串口的操作方法。

二、实验说明1、8251 信号线8251 是CPU 与外设或Mode 之间的接口芯片,所以它的信号线分为两组:一组是用于与CPU 接口的信号线,另一组用于与外设或Mode 接口。

(1)与CPU 相连的信号线:除了双向三态数据总线(D7~D0)、读(RD)、写(WR)、片选(CS)之外,还有:RESET:复位。

通常与系统复位相连。

CLK:时钟。

由外部时钟发生器提供。

C/D:控制/数据引脚。

TxRDY:发送器准备好,高电平有效。

TxE:发送器空,高电平有效。

RxRDY:接收器准备好,高电平有效。

SYNDET/BRKDET:同步/中止检测,双功能引脚。

(2)与外设或Mode 相连的信号线:DTR:数据终端准备好,输出,低电平有效。

DSR:数据装置准备好,输入,低电平有效。

RTS:请求发送,输出,低电平有效。

CTS:准许传送,输入,低电平有效。

TxD:发送数据线。

RxD:接收数据线。

TxC:发送时钟,控制发送数据的速率。

RxC:接收时钟,控制接收数据的速率。

2、8251 的初始化编程和状态字8251 是一个可编程的多功能串行通信接口芯片,在使用前必须对它进行初始化编程。

初始化编程包括CPU 写方式控制字和操作命令字到8251 同一控制口,在初始化编程时必须按一定的顺序。

如下面的流程图:三、实验原理图四、实验容本实验由实验器发送一串字符0~9,PC 机串口接收并在超级终端上显示。

五、实验步骤与PC 机通讯应用实验(1)实验连线:a.用串口线把实验机 8251 模块的RS232 通讯口与PC 机相连,把串口旁边的短路块SW1 短路在2-2/3-3 上,SW2 短路在RS232 上。

串行通信接口8251(详细)

串行通信接口8251(详细)

②DB-9型 9针,9针全用, 如下图。
DCD 1
RXD TXD DTR GND
2 3 4 5
6 DSR
7 8 9
RTS CTS RI
DB-9型连接器
DCD信号(数据载波检出),通知其DTE准备接收 RI(振铃信号)有效,通知DTE,已被呼叫
2.电缆长度 RS-232直接连接的最大物理距离15M,通信速率<20Kbps。
因此需要对二进制信号进行调制,以适合在电话网上传输 相应的音频信号,在接收时,需要进行解调,还原成数字信号。
数字信号
10 10 10 10
计算机
MODEM
模拟信号 1010
数字信号
MODEM
CRT
图3 调制电话线
(四)信息的检错与纠错 串行数据在传输过程中,由于干扰而引起误 码是难免的,这直
接影响通信系统的可靠性,对通信中的检/纠错能力是衡是 一个通信系统的重要内容。
时发送和接收的传输线进行传送,通信双方都能在同一时刻
进行发送和接收操作,选择的传送方式称为全双工制。
A站
B站
发送器
接收器
接收器
特点:①每一端都有发送器和接收器 ②有二条传送线
应用:交互式应用,远程监测控制
发送器
(三)信号的调制和解调(远程通讯)
计算机的通信是要求传送数字信号,而在进行远程数据通 信时,线路往往是借用现有的公用电话网,但是,电话网是为 音频模拟信号的设计的。一般为300~3400Hz,不适合于数据 信号。
2.接收、发送数据线 脚2:发送数据(TXD),由DTE发至DCE的
信号。
脚3:接收数据(RXD),由DCE发至DTE的 信号。
3. 与 调 制 解 调 器 有 关 的 信 号

试验一8251串行通信试验一自发自收

试验一8251串行通信试验一自发自收

实验一8251串行通信实验㈠:自发自收一、实验目的了解串行通信的实现原理,掌握8251的工作方式和编程方法。

二、实验内容利用本实验系统内的8251接口芯片,采用自发自收的方法,实现数据收发通信实验。

发送的数据为4000H开始的16个源RAM区单元内容,接收到的数据放在5000H开始的RAM单元中,核对接收的数据是否和发送的数据一致。

三、编程提示⑴数据发送与接收字节均采用查询方式;⑵8251接口芯片的端口地址:命令状态口=FFE1h,数据口=FFE0h;⑶设置方式字:异步方式,8个数据位,1位起始位,1个停止位,波特率因子为16。

⑷TXC、RXC时钟速率一致,可选速率F:38.4KHz、76.8KHz、153.6KHz、307.2KHz,波特率bps=TXC÷16,相应可选bps:2400、4800、9600、19200。

四、程序流程五、实验电路六、实验步骤1、实验连线⑴连接138译码输入端A.B.C,其中A连A2,B连A3,C连A4,138使能控制输入端G与总线单元上方的GS相连。

⑵将8251串行通信单元的T/RXC与分频单元的T6相连,CLK与分频单元的T0相连,8251CS与译码单元的Y0相连,将8251串行通信单元RXD与TXD相连。

⑶用8芯扁平电缆将8251串行通信单元的数据总线插座与数据总线单元任一插座相连。

2、LED环境⑴在“P.”状态下按“0→EV/UN”,装载实验所需的代码程序。

⑵在4000~400Fh内存单元中填入16个数据。

⑶在“P.”状态下键入35C0,然后按“EXEC”进入实验项目的运行。

3、PC环境在与PC联机状态下,编译、连接、下载PH88\he11.asm,用连续方式运行程序。

4、观察运行结果在连续运行下,8251开始将4000~400Fh内存单元的数据发送串行口,再从串行口接收数据并存到5000~500Fh内存单元,当LED显示“P.”则表示操作完成。

用复位命令结束程序,检查5000~500Fh内存单元的数据,应与4000~400Fh一致。

微机接口 8251串口实验报告

微机接口 8251串口实验报告

浙江工业大学计算机学院实验报告实验名称 8251串行接口姓名学号班级教师日期一、实验内容与要求1.1 实验内容了解串行通信接口的工作原理和工作过程,掌握编写初始化程序和通信程序的方法。

设计实验电路,编写实验程序,使实现从键盘输入“a”到“z”范围的字母,将其ASCII码加四后串行发送出去,再从串行口接收回来在屏幕上显示(若输入“w”、“x”、“y”、“z”,则分别显示“a”、“b”、“c”、“d”),实现自发自收。

1.2 实验要求(1)具有一定的汇编编程的基础,实验前能根据实验要求画出实验流程图,同时写出其所对应代码;(2)要了解8251A中断控制器的内部结构和外部引脚,理解芯片的工作原理和工作过程。

熟悉8251A芯片的命令字,能对其进行编程;(3)了解8253A定时/计数器,知道如何通过其计数器产生发送和接收时钟;(4)熟悉实验平台TPC-USB了解各个接口的名称与功能,进行实验时能快速并正确地连接好实验电路;(5)连接PC与TPC-USB平台,用微机实验软件运行程序。

在屏幕上显示提示信息“Pleaseinput a letter!”,从键盘输入“a”到“z”范围的字母,将其ASCII码加四后串行发送出去,再从串行口接收回来在屏幕上显示。

若输入“w”“x”、“y”、“z”,则分别显示“a”、“b”、“c”、“d”;若输入Esc,则退出程序。

二、实验原理与硬件连线2.1 实验原理(1)8251A的内部结构:图1 8251的内部结构图发送器:▲发送缓冲器+ 发送移位寄存器+ 发送控制电路。

发送控制电路用来控制和管理发送过程。

在其控制下,发送缓冲器将来自CPU的并行数据串行化,通过TxD发送出去。

▲异步方式:控制电路在数据帧中加上起始、校验和停止位。

▲同步方式:控制电路在数据帧中插入同步字符和校验位。

同步方式发送过程中,两字符间不允许有间隔。

若CPU未及时提供新字符,则控制电路自动补上同步字符。

接收器:▲接收缓冲器+ 接收移位寄存器+ 接收控制电路。

8251串行通信实验

8251串行通信实验

8251 串行通信实验一、实验目的1.掌握 8251 串行通讯方式的硬件接口电路及软件编程设计二、实验设备PC机器一台, TDN86/88+教学实验系统一台。

三、实验原理 :本实验需用两台 TDN-86/51(TDN86/88)教学实验系统,并通过排线将两台仪器相连,其中 1 号机用做接收机, 2 号机用做发送机。

实验目的是将 2 号机中的3000-3009H 十个单元中的代码传送到 1 号机的 3000-3009H 单元中。

硬件连接线路图1.8251 的基本性能8251 是可编程的串行通信接口,可以管理信号变化范围很大的串行数据通信。

有下列基本性能 :(1)通过编程,可以工作在同步方式,也可以工作在异步方式。

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

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

(4) 在异步方式时,也使用5,8位来代表字符,自动为每个数据增加 1 个启动位,并能够根据编程为每个数据增加 1 个、 1.5个或2 个停止位。

(5)具有奇偶、溢出和帧错误检测能力。

(6)全双工,双缓冲器发送和接收器。

2.8251 的内部结构及外部引脚8251 的内部结构图如图1-1 所示,可以看出, 8251 有 7 个主要部分,即数据总线缓冲器、读 / 写控制逻辑电路、调制 / 解调控制电路、发送缓冲器、发送控制电路、接收缓冲器和接收控制电路,图中还标识出了每个部分对外的引脚。

8251 的外部引脚如图1-2 所示,共 28 个引脚,每个引脚信号的输入输出方式如图中的箭头方向所示。

D7,D0 数据总线发送并 ?串 TxD缓冲器缓冲器转换TxRDRESETY发送控制电路 TxECLK读/ 写控制 TxCC/D#逻辑电路 RD#WR#接收串 ?并 RxD内部总线缓冲器转换CS#DSR#RxRDYDTR#调制 / 解调 RxC接收控制电路控制电路CTS#SYNDETRTS#图 1-1 8251 内部结构图D2128D0D3D1RxDVccGNDRxC#D4DTR#D5RTS#8251D6DSR#D7RESETTxC#CLKWR#TxDCS #TxEC/D#CTS#RD#SYNDET/BD1RxRDY14TxRDY5图 1-2 8251 外部引脚图3.8251 在异步方式下的 TXD信号上的数据传输格式图 1-3 示意了 8251 工作在异步方式下的 TXD信号上的数据传输格式。

硬件实验报告 串行通信 8251A

硬件实验报告 串行通信 8251A

串行通信18027412 杨滢齐一、实验目的1.了解串行通信的基本原理;2.掌握串行接口芯片8251 或8250 的工作原理和编程方法。

二、实验仪器与材料1.Proteus 仿真软件2.PC 微机1 台三、实验内容根据上面提供的实验电路,补画U6,U8 两片电路缺少的连线。

然后根据自己画的连线图,为8086 编写汇编程序,实现利用8251 向超级终端(标号为GET)发送字符串,实现串行通讯。

字符串不少于20 个字符,内容自定。

四、实验提示1.8251初始化为异步通讯方式,1位停止位,无校验,8位数据,波特率因子为1。

2.超级终端也要设置的与8251相同(在超级终端图标上右击鼠标,选Edit……),其中的波特率可以自己设定,比如9600。

3.图上的时钟发生器用来为8251 提供发送/接收时钟,根据波特率,波特率因子,发送/接收时钟三者之间的关系,当波特率因子为1时,发送/接收时钟与波特率是相同的,因此,如果在第2步,你设置波特率为9600,那么时钟也要设定为9600Hz(图标上右击鼠标,选Edit……)。

4.U6(74HC138)和U8(8251A )的连线决定了8251占用的地址,请自己设定。

5.建议的程序流程图如下: 异步,1位停止位i ,无校验,8位数据,波特率因子为18251操作字 清除错误,能收能发 N五、实验预习要求 1.复习串行通信的特点和 8251 或 8250 的编程方法。

2.根据实验内容和实验提示编写实验程序。

六、实验习题与思考1. 若发送的字符进行偶校验,程序如何编写?;====================================================================; Main.asm file generated by New Project wizard;; Created: 周日 5月 24 2020; Processor: 8086; Compiler: MASM32;; Before starting simulation set Internal Memory Size; in the 8086 model properties to 0x10000;====================================================================开始 发完结束设定字符串指针设定计数初值 读 8251 状态字8251 控制字计数减一循环发送一个字符是否能发送YDATA SEGMENTDA1 DW 20HTABEL1 DB 'beijing university of technology' PTCON EQU 26HPTDATA EQU 24HDATA ENDSCODE SEGMENT PUBLIC 'CODE'ASSUME CS:CODE, DS:DATASTART:MOV AL, 00HMOV DX, PTCONOUT DX, ALOUT DX, ALOUT DX, ALMOV AL, 40HOUT DX, ALMOV AL, 7DH ; 模式控制字MOV DX, PTCONOUT DX, ALMOV AL, 37H ; 操作控制字OUT DX, ALMOV AX, DATAMOV DS, AXMOV DI, OFFSET TABEL1MOV CX, DA1NEXT:MOV DX, PTCON ; 查询TxRDY是否有效IN AL, DXAND AL, 01HJZ NEXT ; TXRDY=0,发送没准备好MOV DX, PTDATAMOV AL, [DI]OUT DX, ALINC DILOOP NEXTENDLESS:JMP ENDLESSCODE ENDSEND START2.若从超级终端接收一个字符(在超级终端的窗口键入一个字符),将接收到的字符的ASCII码加1,再发送回超级终端显示。

8251可编程通讯接口与PC机通讯

8251可编程通讯接口与PC机通讯

8251可编程通讯接口与PC机通讯一、实验目的利用实验机内的8251芯片,实现与PC机通讯。

二、实验内容(1)利用实验机内的8253芯片的分频作为8251的收发时钟频率。

(2)利用实验机内小键盘,每按动一次任一数字键,就把该键值通过8251发送给PC机接收,并在PC机屏幕上显示出该键值。

三、实验接线图图6-13四、编程指南(1)8251状态口地址:03F9H,8251数据口地址:03F8H;(2)8253命令口地址:43H,8253计数器#1口地址:41H;(3)8255命令口地址:0FF23H,键扫口/字位口:0FF20H,键入口PC:0FF22H,字形口PB:0FF21H;(4)通讯约定:异步方式,字符8位,一个起始位,一个停止位,波特率因子为16,波特率为9600;(5)计算T/RXC,收发时钟fc,fc=16*9600=153.6K;(6)8253分频系数:1843.2K / 153.6K=12。

五、实验步骤(1)8251单元:T/RXC→OUT1,TXD→EX-TXD,RXD→EX-RXD,JX20→JX17;(2)8253单元:GATE1→+5V,CLK1→1.8432MHZ;(3)CZ11用户通信口→PC机串口;(4)在P.态下,按SCAL键,输入1A00,按EXEC键;(5)数码管显示8251—1,等待按键,发送键值;(6)运行“串口调试助手”,按动小键盘数字键,在PC机屏幕上显示相应的数字,按MON键发送结束,按RST键,返回P.态。

六、实验程序清单CODE SEGMENT ;PC8251.ASM,8251TXD-->PCRXDASSUME CS: CODESECOPORT EQU 03F9HSEDAPORT EQU 03F8HPA EQU 0FF20H ;字位口PB EQU 0FF21H ;字形口PC EQU 0FF22H ;键入口ORG 1A00HSTART: JMP START0BUF DB ?,?,?,?,?,?KZ DB ?lcntkz dw ?zp dw ?data1:db0c0h,0f9h,0a4h,0b0h,99h,92h,82h,0f8h,80h,90h,88h,83h,0c6h,0a1hdb 86h,8eh,0ffh,0ch,89h,0deh,0c7h,8ch,0f3h,0bfh,8FH START0: call for8251mov zp,offset bufCALL BUF1 ;DISP:8251-1redikey: call dispkeycmp KZ,10hjc wattxdjmp funckeyWATTXD: MOV DX,SECOPORTIN AL,DXTEST AL,01HJZ WATTXDMOV AL,KZMOV DX,SEDAPORTOUT DX,ALmov bx,zpmov [bx],alcmp bx,offset buf+5jz zp1inc bxmov zp,bxjmp redikeyzp1: mov zp,offset bufjmp redikeyfunckey: CMP KZ,1FHJNZ REDIKEYcall buf2 ;good monit: CALL DISPJMP monitdispkey: call dispcall keyXD: MOV BX,lcntkzMOV CX,[BX]MOV AH,ALCMP AL,CHJE XD1MOV CL,88HXD1: DEC CLCMP CL,82HJE XD3CMP CL,0EHJE XD3CMP CL,00HJE XD2MOV AL,20HJMP XD3XD2: MOV CL,0FHXD3: MOV BX,lcntkzMOV CH,AHMOV [BX],CXmov kz,alRETkey: mov al,0ffhmov dx,PBout dx,almov bl,00hmov ah,0fehmov cx,08h key1: mov al,ahmov dx,PAout dx,alrol al,01hmov ah,alnopnopnopnopnopnopmov dx,PCin al,dxnot alnopnopand al,0fhjnz key2inc blloop key1jmp nkeykey2: test al,01hje key3mov al,00hjmp key6key3: test al,02hje key4mov al,08hjmp key6key4: test al,04hje key5mov al,10hjmp key6key5: test al,08hje nkeymov al,18h key6: add al,blcmp al,10hjnc fkeymov bl,almov bh,0hmov si,offset data2mov al,[bx+si]retnkey: mov al,20hfkey: retdata2: db 07h,04h,08h,05h,09h,06h,0ah,0bhDB 01h,00h,02h,0fh,03h,0eh,0ch,0dhfor8251: call t8253mov al,65hout dx,almov dx,03f9hmov al,25hout dx,almov dx,03f9hmov al,65hout dx,almov dx,03f9hmov al,4ehout dx,almov dx,03f9hmov al,25hout dx,alretT8253: MOV DX,43H ;9600MOV AL,76Hout dx,alMOV DX,41HMOV AL,0CHout dx,alMOV DX,41HMOV AL,00Hout dx,almov dx,03F9Hmov dx,03f9hRETDISP: MOV AL,0FFH ;00HMOV DX,PAOUT DX,ALMOV CL,0DFH ;20H ;显示子程序 ,5msMOV BX,OFFSET BUFDIS1: MOV AL,[BX]MOV AH,00HPUSH BXMOV BX,OFFSET DATA1ADD BX,AXMOV AL,[BX]POP BXMOV DX,PBOUT DX,ALMOV AL,CLMOV DX,PAOUT DX,ALPUSH CXDIS2: MOV CX,00A0HLOOP $POP CXCMP CL,0FEH ;01HJZ LX1INC BXROR CL,1 ;SHR CL,1JMP DIS1LX1: MOV AL,0FFHMOV DX,PBOUT DX,ALRETBUF1: MOV BUF,08HMOV BUF+1,02HMOV BUF+2,05HMOV BUF+3,01HMOV BUF+4,17HMOV BUF+5,01HRETBUF2: MOV BUF,09HMOV BUF+1,00HMOV BUF+2,00HMOV BUF+3,0dHMOV BUF+4,10HMOV BUF+5,10HRETBUF3: MOV BUF,0eHMOV BUF+1,18HMOV BUF+2,18HMOV BUF+3,10HMOV BUF+4,10HMOV BUF+5,10HRETCODE ENDSEND START(注:可编辑下载,若有不当之处,请指正,谢谢!)。

微机原理_8251

微机原理_8251

8251 串行接口应用实验PB07210249 马运聪PB07210267 李嘉浩实验目的1.掌握8251 的工作方式及应用;2.了解有关串口通讯的知识。

实验设备1. PC机两台2. TD-PITE 实验装置两套实验内容1.数据信号的串行传输实验,循环向串口发送一个数,使用示波器测量TXD 引脚上的波形,以了解串行传输的数据格式。

2.自收自发实验,将3000H 起始的10 个单元中的初始数据发送到串口,然后自接收并保存到4000H 起始的内存单元中。

实验原理1.8251 的基本性能8251 是可编程的串行通信接口,可以管理信号变化范围很大的串行数据通信。

有下列基本性能:1)通过编程,可以工作在同步方式,也可以工作在异步方式;2)同步方式下,波特率为0~64K,异步方式下,波特率为0~19.2K;3)在同步方式时,可以用5~8位来代表字符,内部或外部同步,可自动插入同步字符;4)在异步方式时,也使用5~8位来代表字符,自动为每个数据增加1个启动位,并能够根据编程为每个数据增加1 个、1.5 个或2 个停止位;5)具有奇偶、溢出和帧错误检测能力;6)全双工,双缓冲器发送和接收器。

注意:8251 尽管通过了RS-232 规定的基本控制信号,但并没有提供规定的全部信号。

2.8251的编程对8251 的编程就是对8251 的寄存器的操作,下面分别给出8251 的几个寄存器的格式。

(1)方式控制字方式控制字用来指定通信方式及其方式下的数据格式,具体各位的定义如下图所示:(2)命令控制字命令控制字用于指定8251 进行某种操作(如发送、接收、内部复位和检测同步字符等)或处于某种工作状态,以便接收或发送数据。

下图所示的是8251 命令控制字各位的定义。

(3)状态字CPU 通过状态字来了解8251 当前的工作状态,以决定下一步的操作,8251 的状态字如下图:实验步骤1.数据信号的串行传输发送往串口的数据会以串行格式从TXD 引脚输出,编写程序,观察串行输出的格式。

8251串行接口应用实验

8251串行接口应用实验
8251A是Intel公司的产品,具有同步、异步接受或发送 的功能,使用单+5V电源的单相时钟,其功能是:
① 同步或异步方式下,字符位数5-8个; ② 同步传输率0-64K,异步传输率为0-19.2K; ③ 异步传输时,自动产生1个起始位,编程可产生1个或1个半
或2个停止位; ④ 具有奇偶错、数据丢失和帧错误检测能力; ⑤ 同步方式时,可自动检测,插入同步字符。
1、硬件连线设计 2、分析源程序
注意模式字和控制字的书写流程。
3、波形图各控制位和数据位(波形图1、波形图2)
注意数据位的低位在前,高位在后。
18
六、思考题
1. 8251有几种工作方式,其数据格式如何? 2. 8251对收发时钟有何特殊要求?
19
+5V

统 总 OPCLK 线 (1.19MHZ)
5
图1 8251A的内部工作原理 6
图2 8251A 模式寄存器的格式
7
图3 8251A 控制寄存器的格式
8
图4 8251A 状态寄存器的格式
9
图5 8251A 初始化流程
10
三、实验原理介绍
2、系统中的8251芯片介绍 系统中装有一片8251芯片,并和标准RS-232C接
口相连好。在系统中该电路用来完成同PC微机的 联机以及串行监控操作的实现。 端口地址为:
四、实验要求及实验步骤
2、 8251串行接口应用实验步骤:
1)按照实验要求自行设计硬件电路并连线,将8251的输出接 到模拟示波器上;
2)编写实验程序并检查无误,经汇编、连接后装入系统; 3)运行程序,在示波器上观察数据波形并进行分析; 4)改变发送的数据,运行程序,观察相应的波形。

8251可编程串行接口实验

8251可编程串行接口实验

集美大学计算机工程学院实验报告课程名称微机系统与接口技术实验名称实验四8251可编程串行接口实验实验类型设计型姓名学号日期地点成绩教师第1页共8页1. 实验目的及内容 1.1实验目的1、了解8251的内部结构、工作原理及与8086的接口逻辑;2、掌握8251的初始化编程方法,学会使用8251实现设备之间的串行通信。

1.2实验内容1)设计8251与8086CPU 的硬件连接图,分配8251的基地址为0FF00H 。

8251的CLK 引脚需接4MHZ 的时钟。

2)设计8251的硬件连接及编写程序,实现自发自收。

把内存中的字符串,依次传送出去,并接收回来,然后把接收回来的字符显示在LED 上。

使用8253作分频器提供8251的收发时钟,并给出程序流程图。

3)计算你所设计的串行通信的波特率为多少?本次设计实验中,我所设计的通信的波特率为19200,波特率因子为16。

4)设计8251的硬件连接及编写程序,实现从PC 机的串行通信测试软件向8251发送一批数据,8251接收完数据之后,再将数据依次发送回去。

使用8253作分频器提供8251的收发时钟,并给出程序流程图。

2. 实验环境星研电子软件,STAR 系列实验仪一套、PC 机一台、导线若干3. 实验方法8251是通用同步/异步接收发送器,可用作CPU 和串行外设的接口电路,它的工作各种工作方式及工作进程都是用初始化及实时控制实现的,编程时,方式指令紧接在复位后由CPU 写入,用来定义8251A 的一般工作特性;在写入方式指令的前提下由CPU 写入同步字符和命令指令用来指定芯片的实际操作。

根据实验要求,需完成一下两个方面的问题:(1)8253对收发时钟的分频。

8253的CLK 接频率发生器的2MHZ ,初值赋给104,得到收发时钟为19200HZ 。

(2)利用8251实现自发自收。

8251的方式命令字:停止位为1,产生偶校验,字符长度为8位,波特率因子为16位;命令指令字:出错标志复位,允许发送,允许接收。

实验13_串行通信实验8251

实验13_串行通信实验8251

实验报告课程名称微机原理与接口技术实验名称串行通讯及AT命令实验类型综合(验证、综合、设计、创新)学院名称电子与信息工程学院专业电子信息工程年级班级2011级电信1班开出学期2013-2014下期学生姓名彭程学号201107014144 指导教师魏祖雪成绩2014 年05 月23 日实验七串行通讯及AT命令一、实验目的1、了解串行通讯的基本原理。

2、掌握串行接口芯片8251的工作原理和编程方法。

3、GTM900-C提供的AT命令的含义、语法以及回应内容。

二、实验内容内容一1、按图13-1连接好电路,(8251插通用插座)其中8253计数器用于产生8251的发送和接收时钟,TXD和RXD连在一起。

2、编程: 从键盘输入一个字符,将其ASCII码加1 后发送出去,再接收回来在屏幕上显示,实现自发自收。

内容二GSM模块包括移动设备ME(Mobile Equipment)、移动台MS(Mobile Station)、终端适配器TA(Terminal Adapter)、数据通信设备DCE(Data Communication Equipment)和传真DCE(包括传真Modem和传真板)。

通过串口发送AT命令,即可使用GSM模块。

串行线对端的应用设备包括终端设备TE nt)、数据终端设备DTE(Data Terminal Equipment)或其他应用设所示。

系统结构图三、实验程序一1、图示电路8251的控制口地址为2B9H,数据口地址为2B8H。

2、8253计数器的计数初值=时钟频率/(波特率×波特率因子),这里的时钟频率接1MHz,波特率若选1200,波特率因子若选16,则计数器初值为52。

3、收发采用查询方式。

;************************;;*8251串行通讯(自发自收)*;;************************;data segmentio8253a equ 280hio8253b equ 283hio8251a equ 2b8hio8251b equ 2b9hmes1 db 'you can play a key on the keybord!',0dh,0ah,24hmes2 dd mes1data endscode segmentassume cs:code,ds:datastart: mov ax,datamov ds,axmov dx,io8253b ;设置计数器工作方式mov al,16hout dx,almov dx,io8253amov al,52 ;给计数器送初值out dx,almov dx,io8251b ;初始化xor al,almov cx,03 ;向控制端口送个delay: call out1loop delaymov al,40h ;向控制端口送H,使其复位call out1mov al,4eh ;设置为个停止位,8个数据位,波特率因子为 call out1mov al,27h ;向送控制字允许其发送和接收call out1lds dx,mes2 ;显示提示信息mov ah,09int 21hwaiti: mov dx,io8251bin al,dxtest al,01 ;发送是否准备好jz waitimov ah,01 ;是,从键盘上读一字符int 21hcmp al,27 ;若为ESC,结束jz exitmov dx,io8251ainc alout dx,al ;发送mov cx,40hs51: loop s51 ;延时next: mov dx,io8251bin al,dxtest al,02 ;检查接收是否准备好jz next ;没有,等待mov dx,io8251ain al,dx ;准备好,接收mov dl,almov ah,02 ;将接收到的字符显示在屏幕上int 21hjmp waitiexit: mov ah,4ch ;退出int 21hout1 proc near ;向外发送一字节的子程序out dx,alpush cxmov cx,40hgg: loop gg ;延时pop cxretout1 endpcode endsend start二呼叫控制命令表2-12 AT+CSTA操作命令语法AT+CSTA=145 NOTE:拨号字符串包含国际接入代码字符“+”OKATD+86139********; NOTE:能拨通电话OKOKATD139********; NOTE:不能拨通电话OKNO CARRIER移动台呼叫某一号码:ATD执行命令用于建立语音、数据或传真的主叫,还可以用于控制补充业务。

串口通信实验报告

串口通信实验报告

串口通信实验报告摘要本实验旨在通过串口通信实现两个设备之间的数据传输。

通过使用串口通信协议,我们能够在不同设备之间进行双向数据传输,实现设备之间的数据交互。

本文将介绍串口通信的基本原理、实验设备和步骤、实验结果以及讨论与总结。

一、引言串口通信是一种常用的通信方式,它被广泛应用于计算机、嵌入式系统、智能设备等领域。

串口通信通过连接计算机或其他设备的串口接口,实现设备之间的数据交换。

串口通信具有传输速度快、稳定可靠、易于实现等优点,因此在实际应用中得到了广泛的应用。

二、实验设备和步骤1. 实验设备本实验使用以下设备进行串口通信实验:- 一台计算机- 一块开发板或者单片机- 两根串口线- 软件串口调试助手2. 实验步骤(1)连接串口线首先,将一根串口线的一个端口连接到计算机的串口接口,另一个端口连接到开发板或者单片机的串口接口。

然后,将另一根串口线的一个端口连接到计算机的另一个串口接口,另一个端口连接到开发板或者单片机的另一个串口接口。

(2)设置串口参数打开软件串口调试助手,在设置界面中选择正确的串口号和波特率,并设置其他参数,如数据位、停止位、奇偶校验等。

(3)发送和接收数据在软件串口调试助手的发送界面中输入要发送的数据,并点击发送按钮。

然后,在接收界面中即可看到接收到的数据。

三、实验结果本实验通过串口通信成功地实现了数据的发送和接收。

在软件串口调试助手的发送界面中,我们输入了一段文本,并成功发送到开发板或者单片机。

在接收界面中,我们成功接收到了从开发板或者单片机发送过来的数据,并正确显示在接收界面上。

四、讨论与总结通过本次实验,我们深入了解了串口通信的基本原理和实验步骤。

串口通信具有不同的参数设置,需要根据实际情况进行调整。

同时,在实际应用中,应注意串口接口的连接问题,确保连接正确、稳定。

另外,在数据传输过程中,也需要注意数据的格式和校验问题,以保证数据的准确性。

在今后的学习和实践中,我们可以进一步探索串口通信的应用领域。

8251串口实验:自发自收

8251串口实验:自发自收

(三) 串口自发自收实验一、实验目的掌握8251串行通讯方式的硬件接口电路以及软件编程。

二、实验设备TDN88教学实验系统一台三、实验内容及步骤实验规定串行通讯的数据格式如下:一个字有一个逻辑“0”起始位,8位ASCII码数据位,一位逻辑“1”停止位,传输波特率为9600baut。

实验接线如图所示:实验用8251 TxD_______RxD实验程序如下:见14-3.ASMSTACK SEGMENT STACKDW 64 DUP(?)STACK ENDSCODE SEGMENTASSUME CS:CODESTART: MOV AL,76HOUT 43H,ALMOV AL,0CHOUT 41H,ALMOV AL,00HOUT 41H,ALCALL INITCALL DALLYMOV AL,7EHOUT 81H,ALCALL DALLYMOV AL,34HOUT 81H,ALCALL DALLYMOV DI,3000HMOV SI,4000HMOV CX,000AHA1: MOV AL,[SI]PUSH AXMOV AL,37HOUT 81H,ALPOP AXOUT 80H,ALA2: IN AL,81HAND AL,01HJZ A2CALL DALLYA3: IN AL,81HAND AL,02HJZ A3IN AL,80HMOV [DI],ALINC DIINC SILOOP A1A4: JMP A4INIT: MOV AL,00HOUT 81H,ALCALL DALLYOUT 81H,ALCALL DALLYOUT 81H,ALCALL DALLYOUT 81H,ALCALL DALLYOUT 80H,ALCALL DALLYMOV AL,40HOUT 81H,ALRETDALLY: PUSH CXMOV CX,3000HA5: PUSH AXPOP AXLOOP A5POP CXRETCODE ENDSEND START四、实验步骤(1)按图将TxD和RxD短接。

串口通讯课程设计

串口通讯课程设计

串口通讯课程设计成绩:《微机技术综合实验》设计报告设计课题:8251串口通讯课程设计专业班级:测控技术与仪器 2 班二O 一四年五月二十日8251单机串口通讯一、设计目的1.掌握8086 实现串口通信的方法;2.了解串行通讯的协议,8251芯片的逻辑功能以及正确的使用方法;3.使用微处理器芯片及其它典型的接口芯片,设计微处理器应用的典型接口电路,加深对微处理器、典型接口芯片特性的理解,掌握微处理器接口电路设计的初步方法,并进行一定的编程训练,加强微机应用的工程实践能力;二、设计要求1、利用 8086 控制8251A 可编程串行通信控制器,实现向PC 机发送字符串“WELCOME TO 8086 SIMULATION”2、要求实时显示传送或者接受的数据3、CPU和8251之间采用查询方式交换数据三、设计电路原理图1.电路原理图U33 4 7 2 5 6 9 12 15 16 19D0 D1 D2 D3 D4 D5 D6 D7 Q0 Q1 Q2 Q3 Q4 Q5 Q6 Q7A1 U48 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 U1M/IO 1 111819OE LE E1 E274HC3739 IO8 10 11 13 14 15 16 179 IO9 32 2910 11 12 13 14 15IO10 IO11 IO12 IO13 IO14 IO15WR/LOCKM/IO8086LOAD_SEG=0x0200 SRCFILE=1.asm74154U12(1M)P11 DCD 62 73 84 9DSR RXD RTS TXD CTS DTR RIERROR COMPIMD C B A四、软件流程图与程序清单8251是用来作为CPU与外设或者调制解调器之间的接口芯片。

8251实验报告

8251实验报告

8251实验报告8251实验报告引言:在计算机科学领域,串行通信是一种常见的数据传输方式。

为了实现串行通信,我们需要使用串行通信接口芯片。

8251是一种常用的串行通信接口芯片,本实验旨在通过对8251的实验研究,深入了解串行通信的原理和应用。

一、实验目的本实验的主要目的是掌握8251的工作原理和使用方法,了解串行通信的基本概念和应用场景。

二、实验原理8251是一种通用的串行通信接口芯片,它可以实现计算机与外部设备之间的串行数据传输。

该芯片具有发送和接收两个功能模块,通过与计算机的接口进行数据交换,实现串行通信的功能。

三、实验步骤1. 连接实验所需设备:将8251芯片与计算机、外部设备进行连接,确保电路连接正确无误。

2. 配置8251芯片:通过设置芯片的控制寄存器,配置芯片的工作模式和参数。

3. 编写测试程序:使用汇编语言编写测试程序,通过向8251芯片发送数据,观察数据的接收情况。

4. 运行测试程序:将编写好的测试程序加载到计算机中,运行程序并观察结果。

5. 分析实验结果:根据实验结果,分析8251芯片的工作状态和数据传输情况。

四、实验结果与分析经过实验测试,我们可以观察到数据的发送和接收情况。

通过分析实验结果,我们可以了解到8251芯片的工作状态和数据传输的效果。

如果数据能够正确发送和接收,说明8251芯片的工作正常;如果数据发送或接收出现错误,可能是芯片配置错误或者电路连接有问题。

五、实验总结通过本次实验,我们深入了解了8251芯片的工作原理和使用方法,掌握了串行通信的基本概念和应用场景。

实验过程中,我们遇到了一些问题,但通过分析和解决,最终成功完成了实验目标。

通过实验,我们不仅提高了对8251芯片的理解,还加深了对串行通信的认识。

六、实验改进在实验过程中,我们发现一些可以改进的地方。

首先,我们可以尝试使用不同的测试程序,测试不同的数据传输情况,以获得更全面的实验结果。

其次,我们可以进一步研究8251芯片的高级功能和应用,拓展实验的深度和广度。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验十三 串行通讯
一、实验目的
1、了解串行通讯的基本原理。
2、掌握串行接口芯片8251的工作原理和编程方法。
二、实验内容
1、按图13-1连接好电路,(8251插通用插座)其中8253计数器用于产生8251的发送和接收时钟,TXD和RXD连在一起。
2、编程: 从键盘输入一个字符,将其ASCII码加 1 后发送出去,再接收回来在屏幕上显示,实现自发自收。
三、实验提示
1、图示电路8251的控制口地址为2B9H,数据口地址为2B8H。
2、8253计数器的计数初值=时钟频率/(波特率×波特率因子),这里的时钟频率接1MHz,波特率若选1200,波特率因子若选16,则计数器初值为52。 Βιβλιοθήκη 3、收发采用查询方式。 �
相关文档
最新文档