新手入门
- 积分
- 27
- 金钱
- 27
- 注册时间
- 2014-10-14
- 在线时间
- 0 小时
|
5金钱
小弟一直是这么理解串口的:
起始、停止位: 数据传输的时候,以“0”作为起始信号接着是数据位,(奇偶校验位),以“1”作为停止信号,即一字节数据传输结束。
其中这个 “0”和“1”信号,如果单片机程序配置好了之后,是硬件自动产生的,无需再通过程序发送起始停止位 0和1。
奇偶校验位:数据位的“1”的个数是否为奇偶数。
UsartHandle.Init.WordLength = USART_WORDLENGTH_9B;//如果使用校验位,则改成 9B
UsartHandle.Init.StopBits = USART_STOPBITS_1;
UsartHandle.Init.Parity = USART_PARITY_EVEN;//偶检验
UsartHandle.Init.HwFlowCtl = USART_HWCONTROL_NONE;
UsartHandle.Init.Mode = USART_MODE_TX_RX;
可能是我学的不精,没有涉及过奇偶校验的问题。现在,碰到这么个问题,这个奇偶校验位,也是程序配置好之后硬件自动产生的么?还是在发送数据的时候程序员自己添加的?
PS:我一直认为 这个 奇偶校验位 是硬件自动计算,自动判别的。如果校验不正确,则收不到或者接不到数据,或者接受数据有误。
大侠们,这样理解对么????求拍醒!!!!!!1
|
|