您的位置 首页 技术

串口通讯根底及S3C2410 UART控制器

数据通信的基本方式可分为并行通信与串行通信两种:并行通信:是指利用多条数据传输线将一个资料的各位同时传送。它的特点是传输速度快,适用于短距离通信,但要求通讯速率较高的应用场合。串行通信:是

  数据通讯的根本方法可分为并行通讯与串行通讯两种:

  并行通讯:是指运用多条数据传输线将一个材料的各位一起传送。它的特点是传输速度快,适用于短间隔通讯,但要求通讯速率较高的运用场合。

  串行通讯:是指运用一条传输线将材料一位位地次序传送。特点是通讯线路简略,运用简略的线缆就可完结通讯,降低成本,适用于远间隔通讯,但传输速度慢的运用场合。

  一、异步通讯及其协议

  异步通讯以一个字符为传输单位,通讯中两个字符间的时刻间隔是不固定的,然而在同一个字符中的两个相邻位代码间的时刻间隔是固定的。

  通讯协议(通讯规程):是指通讯两边约好的一些规矩。在运用异步串口传送一个字符的信息时,对材料格局有如下约好:规则有闲暇位、开端位、材料位、奇偶校验位、中止位。

  异步通讯的时序,如图5-1。

    

 

  其间各位的含义如下:

  开端位:先宣布一个逻辑”0”信号,标明传输字符的开端。

  材料位:紧接着开端位之后。材料位的个数可所以4、5、6、7、8等,构成一个字符。一般选用ASCII码。从最低位开端传送,靠时钟定位。

  奇偶校验位:材料位加上这一位后,使得“1”的位数应为偶数(偶校验)或奇数(奇校验),以此来校验材料传送的正确性。

  中止位:它是一个字符数据的完毕标志。可所以1位、1.5位、2位的高电平。

  闲暇位:处于逻辑“1”状况,标明当时线路上没有材料传送。

  波特率:是衡量材料传送速率的指针。标明每秒钟传送的二进制位数。例如材料传送速率为120字符/秒,而每一个字符为10位,则其传送的波特率为10×120=1200字符/秒=1200波特。

  注:异步通讯是按字符传输的,接纳设备在收到开端信号之后只需在一个字符的传输时刻内能和发送设备坚持同步就能正确接纳。下一个字符开端位的到来又使同步从头校准(依托检测开端位来完结发送与接纳方的时钟自同步的)。

  二、材料传送方法

  依据材料传送方向的不同有以下三种方法。如图5-2所示。

    

 

  (1)单工方法(2)半双工方法(3)全双工方法

  图5-2 材料传送方法

  1、单工方法

  材料始终是从A设备发向B设备。

  2、 半双工方法

  材料能从A设备传送到B设备,也能从B设备传送到A设备。在任何时分材料都不能一起在两个方向上传送,即每次只能有一个设备发送,另一个设备接纳。可是通讯两边依照必定的通讯协议来轮番地进行发送和接纳。

  3、 全双工方法

  答应通讯两边一起进行发送和接纳。这时,A设备在发送的一起也能够接纳,B设备亦同。全双工方法相当于把两个方向相反的单工方法组合在一起,因而它需求两条数据传输线。在计算机串行通讯中首要运用半双工和全双工方法。

  三、信号传输方法

  1、基带传输方法

  在传输线路上直接传输不加调制的二进制信号,如图所示。它要求传送线的频带较宽,传输的数字信号是矩形波。

  基带传输方法仅适宜于近间隔和速度较低的通讯。

    

 

  2、频带传输方法

  传输经过调制的模拟信号

  在长间隔通讯时,发送方要用调制器把数字信号转化成模拟信号,接纳方则用解调器将接纳到的模拟信号再转化成数字信号,这便是信号的调制解调。

  完结调制宽和调使命的设备称为调制解调器(MODEM)。选用频带传输时,通讯两边各接一个调制解调器,将数字信号寄载在模拟信号(载波)上加以传输。因而,这种传输方法也称为载波传输方法。这时的通讯线路可所以电话交流网,也可所以专用线。

  常用的调制方法有三种:

  调幅、调频和调相,别离如下图所示。

    

 

  四、串行接口规范

  串行接口规范:指的是计算机或终端(材料终端设备DTE)的串行接口电路与调制解调器MODEM等(数据通讯设备DCE)之间的衔接规范。

  RS-232C规范

  RS-232C是一种规范接口,D型插座,选用25芯引脚或9芯引脚的衔接器,如图5-5所示。

    

 

  图5-5

  微型计算机之间的串行通讯便是依照RS-232C规范规划的接口电路完结的。假如运用一根电话线进行通讯,那幺计算机和MODEM之间的联机便是依据RS-232C规范衔接的。其衔接及通讯原理如图5-6所示

    

 

  图5-6

  RS232信号界说

  RS-232C规范规则接口有25根联机。只需以下9个信号常常运用.

  引脚和功用别离如下:

  1. TXD(第2脚):发送材料线,输出。发送材料到MODEM。

  2. RXD(第3脚):接纳材料线,输入。接纳材料到计算机或终端。

  3. (第4脚):恳求发送,输出。计算机经过此引脚告诉MODEM,要求发送材料。

  4. (第5脚):答应发送,输入。宣布 作为对 的答复,计算机才能够进行发送材料。

  5. (第6脚):材料设备安排妥当(即MODEM准备好),输入。标明调制解调器能够运用,该信号有时直接接到电源上,这样当设备连通时即有用。

  6. CD(第8脚):载波检测(接纳线信号测定器),输入。标明MODEM已与电话线路衔接好。

  7. 假如通讯线路是交流电话的一部分,则至少还需如下两个信号:

  8. RI(第22脚):振铃指示,输入。MODEM若接到交流台送来的振铃呼叫信号,就宣布该信号来告诉计算机或终端。

  9. (第20脚):材料终端安排妥当,输出。计算机收到RI信号今后,就宣布 信号到MODEM作为答复,以操控它的转化设备,树立通讯链路。

  10. GND(第7脚):信号地

  逻辑电平

  RS-232C规范选用EIA电平,规则:

  “1”的逻辑电平在-3V~-15v之间

  “0”的逻辑电平在+3V~+15V之间。

  因为EIA电平与TTL电平彻底不同,有必要进行相应的电平转化,MCl488完结TTL电平到EIA电平的转化,MCl489完结EIA电平到ITL电平的转化。还有MAX232能够一起完结TTL->EIA和EIA->TTL的电平转化。

  除了RS-232C规范以外,还有一些其它的通用的异步串行接口规范,如:

  RS-423A规范

  为了战胜RS-232C的缺陷,进步传送速率,添加通讯间隔,又考虑到与RS-232C的兼容性,美国电子工业协会在1987年提出了RS-423A规范。该规范的首要长处是在接纳端选用了差分输入。而差分输入对共模搅扰信号有较高的抑制作用,这样就进步了通讯的可靠性。RS-423A用-6v标明逻辑“1”,用+6v标明逻辑“0”,能够直接与RS-232C相接。选用RS-423A规范以获得比RS-232C更佳的通讯作用。图5-7是RS423A的衔接示意图。

    

 

  图5-7

  RS-422A规范

  RS-422A总线选用平衡输出的发送器,差分输入的接纳器。如图5-8所示。

    

 

  图5-8

  RS-422A的输出信号线间的电压为±2v,接纳器的辨认电压为±0.2v。共模规模±25v。在高速传送信号时,应该考虑到通讯线路的阻抗匹配,一般在接纳端加终端电阻以吸收掉反射波。电阻网络也应该是平衡的,如图5-9所示。

    

 

  图5-9 为RS-422A平衡输出差分输示意图

  RS-485规范

  RS-485适用于收发两边同享一对线进行通讯,也适用于多个点之间同享一对线路进行总线方法联网,但通讯只能是半双工的,线路如图5-10所示。

    

 

  图5-10

  典型的RS232到RS422/485转化芯片有:MAX481/483/485/487/488/489/490/491,SN75175/176/184等等,它们均只需单一+5v电源供电即可作业(芯片内部选用电荷泵方法升压)。详细运用方法可查阅有关技能手册。

  五、S3C2410内置的UART操控器

  S3C2410内部具有3个独立的UART操控器,每个操控器都能够作业在Interrupt(中止)形式或DMA(直接内存拜访)形式,也便是说UART操控器能够CPU与UART操控器传送材料的时分发生中止或DMA恳求。而且每个UART均具有16字节的FIFO(先入先出寄存器),支撑的最高波特率可到达230.4Kbps

  图5-11是S3C2410内部UART操控器的结构图

    

 

  图5-11

  UART的操作

  UART的操作分为以下几个部分,别离是:材料发送、材料接纳、发生中止、发生波特率、Loopback形式、红外形式以及主动流控形式。

  材料发送

  发送的材料帧格局是能够编程设置的。它包含了开端位、5~8个材料位、可选的奇偶校验位以及1~2位中止位。这些都是经过UART的操控寄存器 ULCONn 来设置的。

  材料接纳

  同发送相同,接纳的材料帧格局也是能够进行编程设置的。此外,还具有了检测溢出犯错、奇偶校验犯错、帧犯错等犯错检测,而且每种过错都能够置相应的过错标志。

  主动流控形式

  S3C2410的UART0和UART1都能够经过各自的nRTS和nCTS信号来完结主动流控。

  在主动流控(AFC)形式下nRTS取决于接纳端的状况,而nCTS操控了发送断的操作。详细地说:只需当nCTS有用时(标明接纳方的FIFO现已准备安排妥当来接纳材料了),UART才会将FIFO中的材料发送出去。在UART接纳材料之前,只需当接纳FIFO有至少2-byte空余的时分,nRTS就会被置为有用。图5-12是UART 主动流控形式的衔接方法

    

 

  图5-12

  中止/DMA恳求发生

  S3C2410的每个UART都有7种状况,别离是:溢出掩盖(Overrun)过错、奇偶校验过错、帧犯错、断线过错、接纳安排妥当、发送缓冲闲暇、发送移位器闲暇。它们在UART状况寄存器 UTRSTATn / UERSTATn 中有相应的标志位。

  波特率发生器

  每个UART操控器都有各自的波特率发生器来发生发送和接纳材料所用的序列时钟,波特率发生器的时钟源能够CPU内部的体系时钟,也能够从CPU的 UCLK 管脚由外部获得时钟信号,而且能够经过 UCONn 挑选各自的时钟源。

  波特率发生的详细计算方法如下:

  当挑选CPU内部时钟时:

  UBRDIVn=(int)(PCLK/(bps*16))-1,bps为所需求的波特率值,PCLK为CPU内部外设总线(APB)的作业时钟。

  当需求得到更准确的波特率时,能够挑选由 UCLK 引进的外部时钟来生成。

  UBRDIVn=(int)(UCLK/(bps*16))-1

  LoopBack操作形式

  S3C2410 CPU的UART供给了一种测验形式,也便是这儿所说的LoopBack形式。在规划体系的详细运用时,为了判别通讯毛病是因为外部的数据链路上的问题,仍是CPU内驱动程序或CPU自身的问题,这就需求选用LoopBack形式来进行测验。在LoopBack形式中,材料发送端TXD在UART内部就从逻辑上与接纳端RXD连在一起,并能够来验证材料的收发是否正常。

  UART操控寄存器

  下面将针对UART的各个操控寄存器逐个进行解说,以期对UART的操作和设置能有更进一步的了解。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/xinpin/jishu/245918.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部