毕业论文

打赏
当前位置: 毕业论文 > 电子通信 >

ARM嵌入式系统的数据采集传输系统研究+源程序(10)

时间:2017-02-07 21:33来源:毕业论文
奇偶校验是用来验证数据的正确性。奇偶校验是通过修改每一发送字节来工作的。在偶校验中,因为奇偶校验位会被相应的置1或0(一般是最高位或最低位


奇偶校验是用来验证数据的正确性。奇偶校验是通过修改每一发送字节来工作的。在偶校验中,因为奇偶校验位会被相应的置1或0(一般是最高位或最低位),所以数据会被改变以使得所有传送的数位(含字符的各数位和校验位)中“1”的个数为偶数;在奇校验中,所有传送的数位(含字符的各数位和校验位)中“1”的个数为奇数。奇偶校验可以用于接受方检查传输是否发送生错误——如果某一字节中“1”的个数发生了错误,那么这个字节在传输中一定有错误发生。如果奇偶校验是正确的,那么要么没有发生错误要么发生了偶数个的错误。
停止位是在每个字节传输之后发送的,它用来帮助接受信号方硬件重同步。
RS-232在传送数据时,并不需要另外使用一条传输线来传送同步信号,就能正确的将数据顺利传送到对方,因此叫做“异步传输”,简称UART(Universal Asynchronous Receiver Transmitter),不过必须在每一笔数据的前后都加上同步信号,把同步信号与数据混和之后,使用同一条传输线来传输。比如数据11001010被传输时,数据的前后就需加入Start(Low)以及Stop(High)等两个比特,值得注意的是,Start信号固定为一个比特,但Stop停止比特则可以是1、1.5或者是2比特,由使用RS-232的传送与接收两方面自行选择,但需注意传送与接受两者的选择必须一致。
2.6.2  UART工作原理
UART 通过RS-232 协议和外设间进行串行通信。UART 收发字符位数是可配置的,可以是5-8 位。在发送时,数据从数据总线上写入16个字节深度的发送FIFO,然后再被送入移位寄存器转换成串行数据从TXD 引脚输出。在接收时,数据从RXD 引脚串行地接收,先送入接收移位寄存器,然后再送入16 个字节深度的FIFO。接收FIFO 和发送FIFO 都具有可屏蔽的、可用软件配置触发级的中断。当FIFO 中的数据量达到预先设定的触发级时,产生中断。
UART 传输波特率取决于输入时钟和软件可配置的分频器。可以配置停止位数目,奇/偶校验。在接收时,可以检测帧错误、空闲状态、停止位、奇偶校验错误和溢出错误。
另外,通过外围电路将红外信号转变成电信号(接收信息时)或将电信号转变成红外信号(发送时),然后再和UART 进行串行通信,这样就可以支持低速红外通信。
图2.8  UART串口接口电路
图2.9  UART模块功能框图
2.6.3  寄存器描述
基地址  UART1: 0x10004000
UART2: 0x10005000
表2.18  UART寄存器地址
偏移地址    SEL*    名字    宽度    复位值    读/写    描述
00h    1    DivisorLatcheByte1_r    8    0x00    R/W    波特率设置低八位寄存器
    0    Receiver FIFO    8    0x00    R    接收器FIFO地址
    0    Transmitter FIFO    8    0x00    W    传输器FIFO 地址
04h    1    DivisorLatcheByte2_r    8    0x00    R/W    波特率设置高八位寄存器
    0    InterruptEnableRegister_r    8    0x00    R/W    中断使能寄存器
08h    -    FIFOControlRegister_r    8    0xc1    W    FIFO 控制寄存器
    -    InterruptIdentificationRegister_r    8    0x01    R    中断识别寄存器 ARM嵌入式系统的数据采集传输系统研究+源程序(10):http://www.751com.cn/tongxin/lunwen_2633.html
------分隔线----------------------------
推荐内容