主题中讨论的其他器件: TM4C123
我们是否有文档来展示 如何使用 UART 模块 来确定每个位值? 我知道 每个位有内部16或8个 clk 样本、 但有多少个样本 可以确定 该位的值为0或1?
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
我们是否有文档来展示 如何使用 UART 模块 来确定每个位值? 我知道 每个位有内部16或8个 clk 样本、 但有多少个样本 可以确定 该位的值为0或1?
您好!
以下摘录自用户手册第14.3.3段:
当接收器空闲(UnRx 信号持续为1)且数据输入变为低电平(已接收到起始位)时、 接收计数器开始运行、数据在 Baud16的第八个周期或 Baud8的第四个周期采样、具体取决于 UARTCTL 寄存器(第914页的"发送/接收逻辑")中 HSE 位(第5位)的设置。
如果 UnRx 信号在 Baud16的第八个周期(HSE 清零)或 Baud 8的第四个周期(HSE 置位)仍然为低电平、则起始位有效并被识别、否则它将被忽略。 检测到有效起始位后、根据编程的数据字符长度和 UARTCTL 中 HSE 位的值、每16个 Baud16周期或每8个 Baud8周期(即一个位周期)对连续的数据位进行一次采样。 如果奇偶校验模式被启用、那么奇偶校验位被检查。 数据长度和奇偶校验在 UARTLCRH 寄存器中定义。