第11章串行接口芯片8251A.ppt
文本预览下载声明
第11章串行接口芯片8251A ;串行通信的基本概念 ;串行通信的分类;字符帧 ;串行通信的分类;波特率和比特率;异步串行通信的波特率;串行通信的分类;同步通信 ;串行通信的基本概念 ;串行通信的制式;串行通信的基本概念 ;串行接口芯片UART和USART;通用异步收发器UART;UART硬件框图;通用异步收发器UART;UART的工作原理 ;以16倍为例: ;UART的工作原理(续);通用异步收发器UART;一对多的串行通信协议 ;POLL;一对多的串行通信协议 ;SELECT;第11章串行接口芯片8251A ;可编程串行接口芯片8251A;8251A的内部结构;8251A的内部结构说明;8251A的内部结构说明(续);可编程串行接口芯片8251A;8251A的引脚及其功能;8251A的引脚及其功能(续);8251A的引脚及其功能(续);可编程串行接口芯片8251A;8251A的方式控制字;可编程串行接口芯片8251A;8251A的命令控制字;可编程串行接口芯片8251A;8251A的状态字;可编程串行接口芯片8251A;8251A的初始化 ;8251A的初始化 (续);可编程串行接口芯片8251A;EIA RS - 232C串行口标准;EIA RS - 232C串行口标准(续);第11章串行接口芯片8251A ;8251A应用举例;第11章串行接口芯片8251A ;PC系列微机中的串行通信;PC机的异步通信接口8250;各寄存器的详细定义 ;各寄存器的详细定义(续);各寄存器的详细定义(续);各寄存器的详细定义(续);各寄存器的详细定义(续);各寄存器的详细定义(续);各寄存器的详细定义(续);各寄存器的详细定义(续);PC系列微机中的串行通信;接收端程序;CODE SEGMENT
ASSUME CS:CODE,DS:CODE,ES:CODE,SS:CODE
ORG 80H
DTA EQU THIS BYTE
ORG 100H
START: JMP INIT
SEG0C DW ? ;用于保存原0C中断的段首址
OFF0C DW ? ;用于保存原0C中断的偏移量
TARGET DW ? ;指向写文件的ASCII串
ERROR_1 DB LF,FILE NAME IS REQUIRED !,CR,LF,$
ERROR_2 DB LF,DISK OPERATION FAILED !,CR,LF,$
BUFFER_HEAD DW BUFFER_ADDR ;串口接收缓冲区的头指针 ;和尾指针都是800H
BUFFER_TAIL DW BUFFER_ADDR ;INT0C: STI ;0C中断服务程序
PUSH DS
PUSH DX
PUSH BX
PUSH AX
MOV AX,CS
MOV DS,AX
MOV DX,3F8H ;3F8H是串口接收缓冲区
MOV BX,BUFFER_TAIL ;
IN AL,DX ;从串口接收一个字节
MOV [BX],AL ;存入缓冲区
INC BX ;调整指针
CMP BX,BUFFER_END ;是否超界
JB NO_TURN
MOV BX,BUFFER_ADDR ;超界,则指向起始地址
NO_TURN: MOV BUFFER_TAIL,BX ;因为缓冲区是环型的
CLI
MOV AL,EOI ;中断结束
OUT 20H,AL
POP AX
POP BX
POP DX
POP DS
IRET;WRITE_ONE PROC NEAR ;文件缓冲区4000H ~ EFFFH从串口接收缓冲
STOSB ;区取出的字符将写入文件缓冲区,如写入指
CMP DI,STACK_SPACE ;针到了F000H,则必须写盘
JB L1 ;写一个字符到文件缓冲区并判是否超界,一WRITE_DISK: PUSH AX ;旦超界,则必须写盘
MOV AX,3D01H ;打开文件,只写
MOV DX,TARGET ;DS:DX指向文件名的ASCII串
INT 21H ;AX中将是文件标志
JC DISK_ERROR
MOV BX,AX ;文件标志送BX
MOV AX,4202H ;AH=42H:修改文件读写指针
SUB DX,DX
SUB CX,CX ;读写指针指向文件末尾
INT 21H
JC DISK_ERROR
MOV AH,40H ;AH=40H,写文件
MOV DX,BUFFER_END ;写入缓冲区的首址为DX
MOV CX,DI ;DI指向最后一个字符后一个
SUB CX,DX ;计算要写入的字符数
INT 21H
JC DISK_
显示全部