9.2 可编程串行接口8250
- 格式:ppt
- 大小:853.50 KB
- 文档页数:37
【南邮考研辅导班】南邮邮政学院物流工程(专业学位)考研科目参考书考研大纲考研分数线报录比考研经验一、南邮物流工程(专业学位)简介-启道1、“物联网技术及其在物流快递中的应用”研究物联网技术及其在物流工程中的应用。
包括物联网的体系结构、协议的分析与实现,基于物联网的物流信息网络的互联与融合技术,物联网路由与交换技术,基于物联网的物流信息网络服务质量分析和改善技术,基于物联网的物流信息网络的网络性能监控、测量、管理和优化技术,基于物联网的物流信息网络安全检测和分析、控制技术等。
2、“物流信息网络安全与隐私保护”研究物流信息网络的安全与隐私保护。
包括如何保护成本受限的RFID标签及传感器节点中的信息不会被获取、复制、篡改和滥用的技术;如何保证用户对位置信息的掌控能力,确保隐私信息不被攻击者利用,防止隐私信息泄露的技术;物流信息网络可生存性与系统安全技术、网络诱骗技术、密码理论与技术、网络认证与数字签名技术、数据取证技术;物流信息存储的安全技术等。
3、“物流大数据及其智能应用”研究物流大数据的收集、传输、存储、管理、分析等关键技术及其智能应用,包括如何通过GPS、RFID、传感器、条码等技术采集物流信息,并保证信息的完整性、实时性和准确性;如何通过各种网络接入方式实现采集信息的快速、稳定传输;如何对物流大数据进行有效存储、管理和分析,并保证数据的安全性;如何将分析结果运用到物流企业并提供战略规划、运营管理、行为分析和决策支持等。
4、“物流工程管理”研究物流网络工程和信息管理技术。
包括物流基础设施网络的规划理论和方法,物流信息网络的结构与模型,物流组织网络的运作模式与创新机制,以及子网络间衔接机理和服务协调的均衡方法,物流服务资源配置的网络化整合方法,物流网络的绩效评价体系,供应链与物流系统的信息共享理论,现代物流信息技术理论与应用,物流系统模拟与仿真,物流信息系统规划与合理性评价等。
二、南邮物流工程(专业学位)考研科目-启道085240 物流工程01物联网技术及其在物流快递中的应用02物流信息网络安全与隐私保护03物流大数据技术及其智能应用04物流工程管理①101思想政治理论②204英语二③303数学三④810微机原理及应用811数据结构(④为2选1)微机原理及应用数据结构操作系统(3选1)管理信息系统分析与设计高级语言程序设计三、南邮物流工程(专业学位)考研参考书-启道四、南邮物流工程(专业学位)考研大纲-启道810--《微机原理及应用》考研大纲一、基本要求1计算机基础1.1 计算机中的数制与码制1.2 浮点数概念1.3 计算机系统的基本组成2 80X86微处理器2.132位微处理器内部结构2.2 32位微处理器的工作模式2.3 32位微处理器典型时序3指令系统3.1 指令系统概述3.2 80486寻址方式3.3 80486基本集指令4宏汇编语言4.1 汇编语言程序的开发过程和语句类型4.2 宏汇编语言基本语法和基本语句5 汇编语言程序设计5.1 汇编源程序的编程格式5.2 系统功能调用5.3 程序设计6.总线6.1 总线概念6.2 总线标准与结构7.存储器系统7.1 存储器系统概述7.2 微型计算机系统中的存储器组织8.输入/输出系统8.1 输入输出系统概述8.2 可编程定时/计数器82549.中断系统9.1 中断的基本概念9.2 中断指令、中断向量、中断分类9.3 8259A中断控制器9.4中断程序设计10.串行接口10.1 串行通信基础10.2 串行异步通信接口芯片825010.3 串行通信接口芯片8251A11.并行接口11.1 并行I/O接口芯片8255A11.2 打印机并行接口12.DMA控制器12.1 8237A DMA控制器811--《数据结构》考研大纲一、考核内容:1 绪论1.1算法的基本概念1.2数据结构的基本概念1.3数据抽象和抽象数据类型1.4描述数据结构和算法1.5算法分析的基本方法2 线性表2.1线性表的定义及基本操作2.2线性表的顺序存储2.3线性表的链接存储3 栈和队列3.1栈和队列的基本概念3.2栈和队列的顺序存储结构3.3栈和队列的链式存储结构3.4表达式计算3.5递归数组4.1数组的基本概念4.2特殊矩阵4.3稀疏矩阵5 树和二叉树5.1树的基本概念5.2二叉树5.2.1二叉树的定义及主要特征5.2.2二叉树的顺序存储和链式存储5.2.3二叉树的遍历5.2.4 线索二叉树的基本概念和构造5.3树和森林5.3.1树的存储结构5.3.2森林和二叉树的转换5.3.3树和森林的遍历5.4树和二叉树的应用5.4.1二叉排序树5.4.2二叉平衡树5.4.3哈夫曼(Huffman)树和哈夫曼编码6 图6.1图的基本概念6.2图的存储及基本操作6.2.1邻接矩阵法6.2.2邻接表表示法6.3图的遍历6.3.1深度优先搜索6.3.2广度优先搜索6.4图的基本应用6.4.1拓扑排序6.4.2关键路径6.4.3 最小代价生成树6.4.4最短路径7 搜索(Search)7.1搜索的基本概念7.2顺序搜索法7.3二分搜索法7.4 B-树及其基本操作7.5散列(Hash)表7.6搜索算法的分析及应用8 内排序8.1排序的基本概念8.2简单选择排序8.3直接插入排序8.4冒泡排序(bubble sort)8.5希尔排序(shell sort)8.6快速排序8.7堆排序8.8两路合并排序(merge sort)8.9基数排序8.10各种内部排序算法的比较8.11内部排序算法的应用五、南邮物流工程(专业学位)考研分数线-启道六、南邮物流工程(专业学位)考研报录比-启道七、南邮物流工程(专业学位)考研经验-启道考研经验——如何利用招生简章和招生目录面临人生道路的分叉口,我们每一个决定都应该是反复斟酌、最适合自己的。
四川大学电子信息学院研究生入学复习大纲四川大学电子信息学院各科考研大纲汇总硕士入学《电磁场与微波技术》考试大纲《电磁场与微波技术》要求对电磁场基本理论和微波技术基础具有良好的掌握,能够完成基本的矢量运算,对常用的微波器件和参数有一定的了解。
《电磁场与微波技术》的一些具体要求如下:1.麦克斯韦方程组的数学表达式和物理意义,横电磁平面波的基本特性;2.对称分布的静电场边值问题,高斯定理的应用,坡印亭定理,静电平衡条件等;3.恒定电流产生的磁场分布的计算和分析;4.无耗传输线的基本理论及应用,包括:传输线输入阻抗的计算,阻抗匹配的条件等等;5.史密斯圆图的基本理论和应用;6.两端口和多端口网络的基本理论,包括散射矩阵、阻抗矩阵、导纳矩阵和转移矩阵等的定义和分析;7.矩形波导和圆波导的基本模式分析;8.定向耦合器、功分器、魔T、隔离器等微波器件的基本特性;9.滤波器的主要参数和集总参数滤波器的基本设计方法;10.天线增益和方向图的基本概念,天线辐射电阻的意义。
硕士入学《高级语言程序设计》考试大纲《高级语言程序设计》要求掌握高级语言设计的基本方法,结合实际应用可以设计小程序实现要求的功能,例如:完成测量结果的数据处理,积分和导数的数值计算等等。
对具体的编程语言不做要求,可以使用Fortran、Basic、C、C++等高级语言。
程序设计的一些具体要求如下:1.变量的声明、赋值和基本运算。
2.基本的输入和输出功能,实现键盘数据的输入和计算机屏幕的数据输出。
3.数组的赋值和运算,实现一些矩阵的运算,例如矩阵相乘的运算。
4.单重和多重循环的功能,实现累加、阶乘、排列和组合等的计算。
5.程序条件判断与跳转的功能。
6.子程序或者函数的概念和基本调用方法。
7.递归函数或者子程序的基本概念,可以使用递归函数简化程序的设计。
8.常用数学函数的表示方法,例如绝对值函数、对数函数、正弦函数、开平方等。
硕士入学《大学物理》(电磁学、光学)考试大纲一、电磁学部分:要求对电磁场基本理论和基本应用具有良好的掌握,能够完成基本的矢量运算,对基本电路理论有一定的掌握。
可编程串行通信接口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,建立寄存器和中断允许寄存器的标志。
《微型计算机原理及接口技术》试题一. 单项选择题1. 8086CPU芯片的外部引线中,数据线的条数为○①6条②8条③16条④20条2. 8088CPU上READY信号为下面哪种信号有效?○①上升边②下降边③高电平④低电平3. 8088CPU中的CS寄存器是一个多少位的寄存器?○①8位②16位③24位④32位4. 当8086CPU 读写内存的一个规则(对准)字(16位)时,BHE和A0的状态必须是○①00 ②01 ③10 ④115. 当8086CPU读I/O接口时,信号M/IO和DT/R的状态必须是○①00 ②01 ③10 ④116. 在8088CPU中, 用于寄存器间接寻址输入输出指令的寄存器是○①AX ②BX ③CX ④DX7. ISA总线是一种多少位的内(系统)总线?○①8位②16位③32位④64位8. 属于只读存贮器的芯片是○①SRAM ②DRAM ③EPROM ④SDRAM9. 需要定时刷新的存贮器是○①SRAM ②DRAM ③EPROM ④EEPROM10. 内存从A4000H到CBFFFH,共有○①124K ②160K ③180K ④224K11. 擦除EPROM是用○①+5V电压②+15V电压③+21V电压④紫外光照射12. 采用查询方式来实现输入输出是因为它○①速度最快②CPU可以不介入③实现起来比较容易④在对多个事件查询工作时,能对突发事件做出实时响应13. 实现DMA传送,需要○①CPU通过执行指令来完成②CPU利用中断方式来完成③CPU利用查询方式来完成④不需要CPU参与即可完成14 下面哪种说法不正确○①内存地址也可做为接口地址使用②内存地址不可做为接口地址使用③接口地址不可做为内存地址使用④接口地址也可做为外存地址使用15. 8255工作在方式0时,下面哪种说法正确○①A、B、C三个口输入均有锁存能力②只有A口输入有锁存能力③只有C口输入有锁存能力④A、B、C三个口输入均无锁存能力二. 多项选择(在备选的答案中选出正确的答案,每小题2.5分, 本题共10分)1 . 在构成8 0 88最大模式下构成系统总线时,可用到下列哪些芯片?○①74LS373 ②8288 ③74LS245 ④74LS138 ⑤82892 . 8086CPU一个总线周期可以读(或写)的字节数为○①1个②2个③3个④4个⑤6个3. 当8255的A口工作在方式2,B口工作在方式0时,其C口可用作○①全部用作联络信号②5条用作联络信号③4条用作联络信号④3条用作I/O ⑤8条用作I/O4. 当8086CPU最大模式下读内存时,下列哪些信号的状态是正确的?○①MEMR=0 ②MEMW=0 ③IOW=1 ④IOR=0 ⑤DT/R=0三. 判断题1. 8086CPU的复位启动地址为0FFFFH。
uart8250 手册
UART8250手册是一份详细介绍UART8250通信协议的参考文档。
UART(通
用异步收发传输器)是一种常用的串行通信接口标准,用于在计算机系统中实现数据的传输和接收。
手册旨在为用户提供UART8250的功能特性、寄存器配置和操
作原理等方面的详细信息,以帮助用户正确使用和配置UART8250。
UART8250手册首先介绍了UART8250的基础知识和通信原理。
它解释了UART的工作模式、数据传输格式和波特率的概念。
这些基本概念将帮助用户了解UART8250的工作方式,并为正确配置和使用UART8250提供基本的理论支持。
随后,手册详细描述了UART8250的功能特性和寄存器配置。
它列出了
UART8250的各个寄存器及其功能,并提供了针对每个寄存器的配置说明。
用户可以根据需求配置这些寄存器以实现所需的数据传输设置,如数据位数、校验位、停止位等。
此外,手册还提供了UART8250的操作指南。
它详细描述了UART8250的数
据传输过程,包括数据的发送和接收。
用户可以根据手册中的操作流程和示例代码,编写自己的应用程序,并与其他设备进行数据交换。
最后,手册包含了常见问题解答和故障排除的相关信息。
如果用户在使用UART8250时遇到问题或故障,可以参考手册中的解答和排除步骤,以快速解决问题并恢复正常的通信功能。
总之,UART8250手册是一份必备的参考文档,用户可以通过阅读手册来了解UART8250的功能特性、配置和操作原理,以实现相关的串行通信任务。
8250源码解析
8250是一款经典的串行通信芯片,被广泛应用于计算机和其他设备之间的串行通信。
以下是关于8250源码的解析:
8250是一款可编程的串行通信芯片,通过编程可以设置串行通信的波特率、数据位数、停止位数、奇偶校验等参数。
在8250的源码中,主要包含以下几个部分:
1、初始化程序:初始化程序用于设置8250芯片的初始状态,包括控制寄存器的设置、波特率发生器的设置等。
初始化程序通常在系统启动时运行一次,以确保串行通信的正常进行。
2、发送程序:发送程序用于将数据发送到串行通信线上。
在8250的源码中,发送程序将数据写入到发送缓冲区,然后通过控制寄存器启动发送。
发送程序还需要处理发送中断,以确定数据是否已经成功发送。
3、接收程序:接收程序用于从串行通信线上接收数据。
在8250的源码中,接收程序通过控制寄存器启动接收。
当接收到数据时,接收程序会将数据写入到接收缓冲区,并产生一个接收中断。
4、中断处理程序:中断处理程序用于处理接收和发送中断。
在8250的源码中,中断处理程序会检查接收和发送的状态,并执行相应的操作,例如清空缓冲区、启动发送或接收等。
除了以上几个部分,8250的源码还包括一些辅助函数,例如读写控制寄存器、读写数据寄存器等。
这些函数用于操作8250芯片的各种寄存器,确保串行通信的正常进行。
总的来说,8250的源码结构比较清晰,通过初始化程序、发送程序、接收程序和中断处理程序等几个部分,可以完成串行通信的功能。
在实际使用中,需要根据具体的应用场景和需求进行适当的配置和优化。
微机原理复习题题库及答案一、填空题2、在8088读存储器周期中,采样Ready线的目的是。
3、8088在访问4个当前段时,代码段、数据段及堆栈段的偏移量分别由、和提供。
4、微型计算机由()、()和()组成。
5、在IBM-PC/XT中,外设是通过()器件对CPU产生中断请求。
这些中断的中断类型码为08—OFH。
6、8088中的指令INT n用()指定中断类型。
7、一片8255A端口A有()种工作方式,端口B有()种工作方式。
答案:1、锁存复用线上的地址; 2、确定是否在T3周期后插入T w周期3、IP由寻址方式决定的16位偏移量SP4、微处理器存储器I/O接口电路5、82596、n7、32一、填空题1.软件通常分为_______和_______两大类。
2.计算机硬件由_______、_______、存储器、输入设备和输出设备五大部件组成。
3.奇偶校验法只能发现_______数个错,不能检查无错或_______数个错。
4.八进制数37.4Q转换成二进制数为__________。
5.数x的真值-0.1011B,其原码表示为____________。
6.在浮点加减法运算过程中,在需要_________或__________时,尾数向右移位。
7.8086CPU芯片的结构特点是将_________部件与__________部件分开,目的是减少总线的空闲时间,提高指令执行速度。
8.指令通常由_________和__________两部分组成。
9.微程序入口地址是根据__________通过_________产生的。
10.要组成容量为4K*8位的存储器,需要_____片4K*1位的静态RAM芯片并联,或者需要___片1K*8位的静态RAM芯片串联。
11.根据目前常用的存储介质可以反存储器分为___________、_________和光存储器三种。
12.主机CPU和IOP之间的通信,原则上是通过共享_________来实现的。
【南邮考研辅导班】南邮电子与通信工程(专业学位)考研科目参考书考研大纲考研分数线报录比考研经验一、南邮电子与通信工程(专业学位)简介-启道1、《移动通信》该方向主要从事移动和无线通信系统的分析、设计、开发、测试、规划、优化、业务和应用软件开发、业务支撑系统的研究和开发等,侧重于无线接入。
2、《宽带无线通信》该方向主要从事宽带无线通信网络的分析、设计、开发、测试、规划和优化等,侧重于无线接入侧。
3、《宽带通信网》该方向主要从事宽带通信网的分析、设计、测试、规划、业务支撑系统开发等,侧重于核心网侧。
4、《多媒体通信》该方向主要从事多媒体通信系统的分析、设计、开发、测试和工程部署、多媒体业务系统开发和工程实施等。
5、《语音处理及人机交互》该方向主要从事面向通信的语音处理和人机交互系统的分析、设计、开发、测试、软件开发和工程实施等。
6、《光通信》该方向主要从事光通信系统的分析、设计、开发、测试、规划、优化和工程部署等。
7、《卫星通信》该方向主要从事卫星通信系统和便携式移动卫星地球站的分析、设计、开发、测试、规划、优化和工程部署等。
8、《图像处理与图像通信》主要从事图像处理系统和图像通信系统的分析、设计、开发、测试、软件开发和工程部署等。
9、《信号处理及其应用技术》主要从事信号处理系统及通信中的信号处理系统的分析、设计、开发、测试、软件开发和工程部署等。
F1 (非全日制)《无线移动通信》该方向主要从事移动和无线通信系统的分析、设计、开发、测试、规划、优化、业务和应用软件开发、业务支撑系统的研究和开发等,侧重于无线接入。
F2 (非全日制)《通信网络》该方向主要从事宽带无线通信网络的分析、设计、开发、测试、规划和优化等。
F3 (非全日制)《现代通信中的信号处理》该方向主要从事信号处理系统及通信中的信号处理系统的分析、设计、开发、测试、软件开发和工程部署等。
F4 (非全日制)《多媒体通信》该方向主要从事多媒体通信系统的分析、设计、开发、测试和工程部署、多媒体业务系统开发和工程实施等。
实验八8250可编程通信实验(与微机)一、实验目的了解8250的内部结构、工作原理;了解8250与PCI9052的接口逻辑;掌握对8250的初始化编程方法,学会使用8250实现设备之间的串行通信。
二、实验内容及要求1、编写程序:通过初始化8250,设置波特率为4800bps(或其它,但与微机部分一致),数据格式为8数据位,1停止位,偶校验;然后打开PC机的串行通信测试软件,向8250发送一批数据,8250接收完数据之后,再将数据依次发送回去。
MSR DW00f6H ;MODEM状态寄存器DLL DW 00f0H;波特率除数锁存器低位DLM DW00f1H;波特率除数锁存器高位ADR DW 00E0H ;用于清除PCI9052上一次写操作产生的地址IO_Bit8_BaseAddress DW?msg0 DB ‘BIOS不支持访问PCI $’msg1 DB ‘找不到Star PCI9052板卡 $’msg2 DB ‘读8位I/O空间基地址时出错$’.CODESTART: MOV AX,@DATAMOV DS,AXNOPCALL InitPCICALL ModifyAddress ;根据PCI提供的基地址,将偏移地址转化为实地址CALL INIT8250START2: MOV CX,10 ;接收数据(接收完设定的数据个数) CALL RECEIVE_GROUPMOV CX,10 ;发送数据(发完设定的数据个数)CALL SEND_GROUPJC WARNING1CALL IfExitJZ START2JMP ExitWARNING1: JMP Exit;*************发送一组字符子程序,个数在CX中***********Send_Group PROC NEARLEA SI,Send_BufferSend_Group1: LODSBCALL Send_ByteJC Send_Group2LOOP Send_Group1CLCSend_Group2: RETSend_Group ENDP;*************接收一组字符子程序,存放首地址在DPTR中,个数在R6R7中*********** Receive_Group PROC NEARMOV DX,ADROUT DX,AL ;用于清除PCI9052上一次写操作产生的地址LEA DI,Receive_BufferReceive_Group1: CALL Receive_ByteSTOSBLOOP Receive_Group1CLCRETReceive_Group ENDPINIT8250 PROC NEARMOV DX,ISRMOV AL,06HOUT DX,ALMOV DX,LCRMOV AL,83H ;允许访问波特率因子寄存器OUT DX,ALMOV DX,DLLMOV AL,40 ;除法除数低位寄存器,波特率设为;4800=(3.072*1000000/16)/DLMDLLOUT DX,ALMOV DX,DLM ;00H送高字节寄存器MOV AL,00HOUT DX,ALMOV DX,LCR ;不允许访问波特率因子寄存器MOV AL,1BH ;数据格式为8数据位,1停止位,偶校验OUT DX,ALRETINIT8250 ENDP;*********发送一个字节子程序,发送A中的数,失败置1CY*********Send_Byte PROC NEARPUSH CXPUSH AXMOV CX,1000MOV DX,LSRREP11: IN AL,DXTEST AL,20HJNZ OUTPORT1LOOP REP11POP AXSTCJMP EXIT8250OUTPORT1: POP AXMOV DX,RHROUT DX,ALMOV DX,ADROUT DX,AL ;清除PCI9052产生的RHR地址CLCEXIT8250: POP CXRETSend_Byte ENDP;*********接收一个字节子程序,接收字节在A中,接收失败置1CY*********Receive_Byte PROC NEAR MOV DX,LSR Receive1: IN AL,DX TEST AL,1 JZ Receive1 Receive2: MOV DX,RHR IN AL,DX Receive3: RET Receive_Byte ENDP Exit: MOV AH,4CH INT 21H; IfExit 、InitPCI 、ModifyAddress 子程序请参阅实验二 END START五、实验过程 12、运行程序3、运行“串口助手(ComPort.EXE)”,设置串口(波特率4800,8个数据位,一个停止位,偶校验),打开串口,选择“HEX发送”、“HEX显示”,向8250发送10个字节数据(输入数据之间用空格分隔),是否能接收到10个字节数据,接收到的数据是否与发送数据一致。
CU网友自己写的intel8250串口芯片驱动一:前言串口是一种常用的接口,嵌入式开发环境中,开发板通常都会提供串口与PC相连,方便开发者进行测试。
在较早的网络环境中。
UNIX主机通过串口连moden再接通电话线来连通对方电脑。
类似于今天的telnet。
串口经常用来做远程终端使用。
类似于我们之前分析的终端控制台驱动。
不过,不相同的是,终端驱动的输入数据是从键盘鼠标等I/O外设中来,到显示器上显示。
而串口终端的数据来源跟数据输出都是串口。
对于运行中的进程来说,它不需要知道运行在什么样的终端。
Tty层把终端层给封装起来了. 查找了一相有关PC平台上的8250串口芯片资料,结合之前分析的uart架构自己写了一个串口驱动。
在写驱动的过程中,并没有参考linux自带的8250芯片驱动。
目的是为了在写完之后,和linux 自带的驱动比较,就能发现自己的不足。
在驱动中,按着对端设备的数据模式设定了波特率和数据格式。
并末实现termios库中关于串口参数的设定。
不过在驱动中都写好了接口函数。
按操作接口将其链入即可。
另外:忽略了moden信号的处理。
二:串口的硬件架构在pc中常使用的串口芯片是8250,16450,16450A等。
这些芯片都是从8250发展而来的。
都往下与8250保持兼容。
由于我手头只有8250和16450的详细的资料,代码分析时侧重于这两种类型的芯片分析. 如果有朋友能够提供其它芯片的资料,我会感激不尽^_^.8250提共了9个寄存器。
严格说来,只有8个。
因为其中有两个寄存器是共享同一个寄存器。
各寄存器的作用与寄存位的含义如下表所示:在上图的端口地址标识中,小括号中还有一个地址。
这是因为在PC中。
一般都会有两个串口。
括号外的是主串口的端口地址,而括号里面的是从串口地址。
从上图可以看到8250的寄存器比较繁多,操作比较复杂。
我们依次来看每个寄存器的含义:数据接收寄存器(RBR): 存放接收到的数据。