STM32F103C8T6学习笔记_串口USART的使用

来源:互联网 发布:淘宝仓库工作流程 编辑:程序博客网 时间:2024/05/17 03:47

1、     M  bps                 兆   比特每秒                   Million     bits per second      (形容传输速率)

    波特率(BaudRate)(bound )          单位 Bd    (形容传输速率时  Bd/s)

如果是二进制的话 , 都表示单位时间内传输的二进制数

2、波特率计算公式

baud=串口时钟(APB1 or APB1)   /   USART_BRR寄存器的值

Example    时钟108M (108000000  六个0)              baud=115200MHz        则得寄存器值938    (0XA3AA)

3、 GPIO的复用

TXD    Transmit(tx)  Data    发送数据

RXD    Receive(rx)  Data     接受数据


USART1_TX    PA.9    设置成复用推挽输出      GPIO_InitStructure.GPIO_Mode=GPIO_Mode_AF_PP;

USART1_RX    PA.10  设置成浮空输入             GPIO_InitStructure.GPIO_Mode=GPIO_Mode_IN_FLOATING;

4、单工                           单向      一方传送信息到另一方

      全双工    同一时间    双向      发送数据 同时也可以接受数据

      半双工                      双向       发送   或者   接受

USART_InitStructure.USART_Mode=USART_Mode_Rx | USART_Mode_Tx     //设置成半双工模式

5、奇偶校验   parity

00000000(8位)+0 or 1(1位)   奇校验 就在(1位)这里写1 或者 写0   使得1的总个数为奇数

........................................................偶校验....................................................使得1的总个数为偶数

发送端发送一个字符编码(9位)【偶数】==接收端接收到的编码(9位) 【偶数】   检验成功

奇校验同理; 

6、数据位    8   7   6    5     WordLength

例如数据位设置为5.那么就相当于规定了每个传输字节只能由5个二进制来表示,例如   11111、10110 、01110等。也就是说只能发送00000—11111这个范围内的数。

7、停止位    1   1.5    2        StopBits

 停止位表示传输结束(也可以校正  发  收   两端的时钟  达到同步的目的)    停止位越多,不同时钟同步的容忍程度越大    数据传输速度慢

 8、一般无硬件数据流控制(很少用)  HwFlowCtl

    USART_InitStructure.USART_HardwareFlowControl = USART_HardwareFlowControl None;      //无硬件数据流控制

9、oversampling 采样过密     sampling 采样






原创粉丝点击