鬆翰微控制器--SN8F5702學習筆記(一)uart暫存器
阿新 • • 發佈:2018-12-15
暫存器 | bit7 | bit6 | bit5 | bit4 | bit3 | bit2 | bit1 | bit0 |
---|---|---|---|---|---|---|---|---|
S0CON | SM0 | SM1 | SM20 | REN0 | TB80 | RB80 | TI0 | RI0 |
S0CON2 | BD | - | - | - | - | - | - | - |
S0BUF | S0BUF7 |
S0BUF6 | S0BUF5 | S0BUF4 | S0BUF3 | S0BUF2 | S0BUF1 | S0BUF0 |
PCON | SMOD | - | - | - | P2SEL | GF0 | STOP | IDLE |
S0RELH | - | - | - | - | - | - | S0REL9 | S0REL8 |
S0RELL | S0REL7 | S0REL6 | S0REL5 |
S0REL4 | S0REL3 | S0REL2 | S0REL1 | R0REL0 |
IEN0 | EAL | - | ET2v | ES0 | ET1 | EX1 | ET0 | EX0 |
P0OC | - | - | - | P15OC | P14OC | P13OC | P06OC | P05OC |
P0M | P07M | P06M | P05M | P04M | P03M | P02M | P01M | P00M |
P0 | P07 | P06 | P05 | P04 | P03 | P02 | P01 | P00 |
S0CON 暫存器(0x98)
Bit | Field | Type | Initial | Description |
---|---|---|---|---|
7…6 | SM[0:1] | R/W | 00 | 串列埠模式選擇 00: 模式0; 01: 模式1; 10: 模式2; 11: 模式3 |
5 | SM20 | R/W | 0 | 多處理器通訊(模式2, 3)0:禁用1:啟用 |
4 | REN0 | R/W | 0 | UART模組(和接收功能)0:禁用省電; 1:啟用UART操作 |
3 | TB0 | R/W | 0 | 傳輸的第九位資料 (模式2和模式3會用到) |
2 | RB0 | R/W | 0 | 接收的第九位資料 (模式2和模式3會用到) |
1 | TI0 | R/W | 0 | 串列埠傳輸中斷標誌 |
0 | RI0 | R/W | 0 | 串列埠接收中斷標誌 |
- 當 REN0 位是0,串列埠相關暫存器將無法訪問, 模組內部時鐘停止使用。
S0CON2 Register (0xD8)
Bit | Field | Type | Initial | Description |
---|---|---|---|---|
7 | BD | R/W | 0 | 波特率發生器選擇 (模式 1, 3) ; 0: 定時器1溢位週期; 1: 通過 S0RELH, S0RELL暫存器控制 |
6…0 | Reserved | R | 0x00 |
S0BUF Register (0x99)
Bit | Field | Type | Initial | Description |
---|---|---|---|---|
7…0 | S0BUF | R/W | 0x00 | 寫入資料的操作將觸發串列埠通訊(LSB在先,小端?)。接收到了資料包的結束符就可以讀資料。 |
PCON Register (0x87)
Bit | Field | Type | Initial | Description |
---|---|---|---|---|
7 | SMOD | R/W | 0 | 串列埠波特率控制 (串列埠模式 0, 2) 0: fcpu/64 1: fcpu/32 |
6…0 | 參考其他章節 |
IEN0 Register (0xA8)
Bit | Field | Type | Initial | Description |
---|---|---|---|---|
7 | EAL | R/W | 0 | 中斷使能,具體參考中斷章節 |
4 | ES0 | R/W | 0 | 使能串列埠中斷 |
Else | 參考其他章節 |
P0OC Register (0xE4)
Bit | Field | Type | Initial | Description |
---|---|---|---|---|
1 | P06OC | R/W | 0 | 0: 切換 P0.6 (URX) 到輸入模式 (required) |
0 | P05OC | R/W | 0 | 0: 切換 P0.5 (UTX) 到推輓模式; 1: 切換 P0.5 (UTX) 到開漏模式 |
Else | 參考其他章節 |
- 設定 P06OC 為高電平將會導致URX不能接收資料.
P0M Register (0xF9)
Bit | Field | Type | Initial | Description |
---|---|---|---|---|
6 | P06M | R/W | 0 | 0: 設定P0.6 (URX) 作為輸入模式 (要求) |
5 | P05M | R/W | 0 | 1: 設定 P0.5(UTX) 作為輸出模式 (要求) |
Else | 參考其他章節 |
- URX和UTX分別需要輸入和輸出模式選擇來適當地接收/傳送資料。(The URX and UTX respectively require input and output mode selection to receive/transmit data appropriately. )
P0 Register (0x80)
Bit | Field | Type | Initial | Description |
---|---|---|---|---|
6 | P06 | R/W | 0 | This bit is available to read at any time for monitoring the bus statue. |
5 | P05 | R/W | 0 | 1: 使 P0.5 (UTX) 可以輸出串列埠資料 (要求) |
Else | 參考其他章節 |
- 設定P05 最初的電平狀態為高,因為UART塊只驅動共享引腳低訊號(Setting P05 initially high because UART block drive the shared pin low signal only.)。