设置 CHCFG_AT_BUSY
CHCFG_AT_BUSY:忙时配置使能控制位。CHCFG_AT_BUSY 使能后,当 UART 控制器为 BUSY 时,软件也能设置 UART 控制器,如寄存器 LCR(包括 DLAB 控制位)、DLH、DLL 等。
CHANGE_UPDATE:更新配置控制位。若忙时配置被使能,当对此位写 1,即可更新对 UART 控制器的配置。更新完成后,此位自动清零。
CHCFG_AT_BUSY (UART_HALT[1]) 需要与 CHANGE_UPDATE (UART_HALT[2]) 配合使用,来更新 UART
控制器的设置。以设置分频系数 DLAB 为例,说明
CHCFG_AT_BUSY 和 CHANGE_UPDATE 的配合使用:
- 对 CHCFG_AT_BUSY 写 1,使能忙时配置。
- 对 DLAB 写 1,并设置 DLH 和 DLL。
- 对 CHANGE_UPDATE 写 1,更新配置。当更新完成时,此位自动清零。