文档详情

第11章串行接口芯片8251A.ppt

发布:2017-04-20约6.08千字共77页下载文档
文本预览下载声明
第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_
显示全部
相似文档