串口8250(16550)微机原理

上传人:ji****n 文档编号:57219217 上传时间:2018-10-20 格式:PPT 页数:27 大小:1.70MB
返回 下载 相关 举报
串口8250(16550)微机原理_第1页
第1页 / 共27页
串口8250(16550)微机原理_第2页
第2页 / 共27页
串口8250(16550)微机原理_第3页
第3页 / 共27页
串口8250(16550)微机原理_第4页
第4页 / 共27页
串口8250(16550)微机原理_第5页
第5页 / 共27页
点击查看更多>>
资源描述

《串口8250(16550)微机原理》由会员分享,可在线阅读,更多相关《串口8250(16550)微机原理(27页珍藏版)》请在金锄头文库上搜索。

1、可编程串行接口,赵博,串口通信,16550/8250: 通用异步接收器/发送器(UART) RS-232串口通信标准。 工作速率:01.5M波特率(baud rate),异步串行数据,异步串行数据无需时钟或定时信号即可发送和接收。 每帧包含一个起始位、7个数据位、一个奇偶校验位和一个停止位。 为传输ASCII数据,奇偶校验位也可用于传输数据,16550,两个完全独立的部分:接收器和发生器 工作方式:单工、半双工、全双工 内部接收器和发送器FIFO存储器:16字节,16550引脚功能,16550引脚功能,16550引脚功能,16550引脚功能,16550引脚功能,16550可控制调制解调器 MO

2、DEM将串行数据的TTL电平转换成可通过电话系统的音频信号。 16550上有6个引脚用于调制解调器控制: DSR(data set ready), DTR(data terminal ready), CTS(clear-to-send), RTS(request-to-send), RI(ring indicator)和DCD(data carrier detect)。 调制解调器作为数据装置,16550作为数据终端。,16550编程,16550编程分为两部分:初始化对话和操作对话。 PC中串口I/O端口译码为:COM0为3F8H3FFH,COM2为2F8H2FFH。,16550初始化,初始化

3、对话出现在硬件或软件复位后 由两部分组成:编程线路控制寄存器和波特率产生器。 线路控制寄存器选择数据位数、停止位个数以及奇偶校验位 波特率产生器用一个确定发生器波特率的除数进行编程。,线路控制寄存器,最右边两位选择数据位数 S为停止位位数:S=0使用1位;S=1,则对于5个数据位使用1.5位数据位,对于6,7,8则使用2位 接下来3位一起用于发送偶校验或奇校验、发送无奇偶校验或发送奇偶校验位位置中的1或0. 其余两位用于发送一个间隔符以及选择对波特率除数进行编程。,线路控制寄存器,波特率,波特率产生器在I/O地址000和001。 000用于保持16位除数的最低有效部分 001用于保持最高有效部

4、分 除数的值取决于外部时钟或晶振频率 常见晶振为18.432MHz,波特率,初始化举例,假定一个异步系统需要7位数据位、奇校验、9600的波特率和1个停止位。系统使用0位端口地址F0H和F7H。 F3H存取线路控制寄存器 F0H和F1H存取波特率除数寄存器,初始化举例,假定一个异步系统需要7位数据位、奇校验、9600的波特率和1个停止位。系统使用0位端口地址F0H和F7H。 F3H存取线路控制寄存器 F0H和F1H存取波特率除数寄存器,初始化举例,初始化举例,FIFO控制寄存器,线路控制寄存器和波特率除数编程到16550中后,16550仍不能工作,还必须编程FIFO控制寄存器,其位于端口F2H

5、。,发送串行数据,发送或接收数据前,需要了解线路状态寄存器的功能。 线路状态寄存器包含错误状态信息及发生器和接收器的状态,该寄存器在发送或接收一字节数据之前被测试。,发送串行数据,发送串行数据,假定一个过程将AH的内容发送给16550并通过其串行数据引脚(SOUT)输出。软件查询TH位以确定发生器是否已准备好接受数据。,发送串行数据,接收串行数据,为从16550中读取接收到的信息,需要测试线路状态寄存器的DR位。 在接收数据时,需测试数据有无错误,接收串行数据,串口错误,16550检测到的错误类型是奇偶校验错误、帧错误和超限错误。 奇偶校验错误表明接收到的数据包含错误的奇偶校验位。 帧错误表明起始位和停止位不在正确的位置上 超限错误表明数据已超出内部接收器FIFO缓冲器。,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 社会民生

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号