D4~D0为波特率设置:
波特率 | 指数值 | 小数部分 |
2400 | 6 | 59 |
4800 | 7 | 59 |
9600 | 8 | 59 |
14400 | 8 | 216 |
19200 | 9 | 59 |
28800 | 9 | 216 |
38400 | 10 | 59 |
57600 | 10 | 216 |
76800 | 11 | 59 |
115200 | 11 | 216 |
230400 | 12 | 216 |
CLKCONCMD:时钟频率控制寄存器。
D7 | D6 | D5~D3 | D2~D0 |
32KHZ时间振荡器选择 | 系统时钟选择 | 定时器输出标记 | 系统主时钟选择 |
D7位为32KHZ时间振荡器选择,,0为32KRC震荡,1为32K晶振。默认为1。
D6位为系统时钟选择。0为32M晶振,1为16M RC震荡。当D7位为0时D6必须为1。
D5~D3为定时器输出标记。000为32MHZ,001为16MHZ,010为8MHZ,011为4MHZ,100为2MHZ,101为 1MHZ,110为500KHZ,111为250KHZ。默认为001。需要注意的是:当D6为1时,定时器频率最高可采用频率为16MHZ。
D2~D0:系统主时钟选择:000为32MHZ,001为16MHZ,010为8MHZ,011为4MHZ,100为2MHZ,101为1MHZ,110为500KHZ,111为250KHZ。当D6为1时,系统主时钟最高可采用频率为16MHZ。
CLKCONSTA:时间频率状态寄存器。
D7 | D6 | D5~D3 | D2~D0 |
当前32KHZ时间振荡器 | 当前系统时钟 | 当前定时器输出标记 | 当前系统主时钟 |
D7位为当前32KHZ时间振荡器频率。0为32KRC震荡,1为32K晶振。
D6位为当前系统时钟选择。0为32M晶振,1为16M RC震荡。
D5~D3为当前定时器输出标记。000为32MHZ,001为16MHZ,010为8MHZ,011为4MHZ,100为2MHZ,101为 1MHZ,110为500KHZ,111为250KHZ。
D2~D0为当前系统主时钟。000为32MHZ,001为16MHZ,010为8MHZ,011为4MHZ,100为2MHZ,101为1MHZ,110为500KHZ,111为250KHZ。
U0CSR:USART0控制与状态;
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 |
模式选择 | 接收器使能 | SPI主/从模式 | 帧错误状态 | 奇偶错误状态 | 接受状态 | 传送状态 | 收发主动状态 |
D7为工作模式选择,0为SPI模式,1为USART模式
D6为UART接收器使能,0为禁用接收器,1为接收器使能。
D5为SPI主/从模式选择,0为SPI主模式,1为SPI从模式。
D4为帧错误检测状态,0为无错误,1为出现出错。
D3为奇偶错误检测,0为无错误出现,1为出现奇偶校验错误。
D2为字节接收状态,0为没有收到字节,1为准备好接收字节。
D1为字节传送状态,0为字节没有被传送,1为写到数据缓冲区的字节已经被发送。
D0为USART接收/传送主动状态,0为USART空闲,1为USART忙碌。
U0GCR:USART0通用控制寄存器;
D7 | D6 | D5 | D4~D0 |
SPI时钟极性 | SPI时钟相位 | 传送位顺序 | 波特率指数值 |
D7为SPI时钟极性:0为负时钟极性,1为正时钟极性;
D6为SPI时钟相位:
D5为传送为顺序:0为最低有效位先传送,1为最高有效位先传送。
D4~D0为波特率设置:
波特率 | 指数值 | 小数部分 |
2400 | 6 | 59 |
4800 | 7 | 59 |
9600 | 8 | 59 |
14400 | 8 | 216 |
19200 | 9 | 59 |
28800 | 9 | 216 |
38400 | 10 | 59 |
57600 | 10 | 216 |
76800 | 11 | 59 |
115200 | 11 | 216 |
230400 | 12 | 216 |
楼主最近还看过