1. 程式人生 > >CC2530學習路線-基礎實驗-串口通訊發送字符串(4 未完待續)

CC2530學習路線-基礎實驗-串口通訊發送字符串(4 未完待續)

cc2530 標記 知識 leo 通訊 有時 image 主動 系統

目錄

  • 1. 前期預備知識
    • 1.1 串口通訊電路圖
    • 1.2 實驗相關寄存器
    • 1.2 常用波特率設置
  • 本章未完待續..... 原來寫的文章已經丟失了,只能找到這一小部分,看什麽時候有時間再補上。


1. 前期預備知識

1.1 串口通訊電路圖

技術分享圖片
從上圖可見,CC2530芯片通過P0端口的P0.1和P0.2引腳進行串口通訊。這個實驗當中對於端口的操作也主要就是P0端口。

1.2 實驗相關寄存器

寄存器名稱 作用 寄存器描述
U0CSR (0x86) USART 0控制和狀態 bit7:USART模式選擇 0:SPI模式;1:UART模式
bit6:UART接收器使能 0:禁用接收器;1:接收器使能
bit5:SP主或從模式選擇 0:SPI主模式;1:SPI從模式

bit4:UART幀錯誤狀態 0: 無幀錯誤檢測;1: 字節收到不正確停止位級別
bit3:UART奇偶錯誤狀態 0: 無奇偶錯誤檢測;1: 字節收到奇偶錯誤
bit2:接收字節狀態 0: 沒有收到字節;1: 準備好接收字節
bit1 :傳送字節狀態 0:字節沒有被傳送;1:寫到數據緩存寄存器的最後字節被傳送
bit0:USART傳送/接收主動狀態、在SPI從模式下該位等於從模式選擇 0: USART空閑;1: 在傳送或者接收模式USART忙碌;
U0GCR (0xC5) USART0 通用控制 Bit[7] CPOL SPI 的時鐘極性 0: 負時鐘極性 1: 正時鐘極性
Bit[6] CPHA SPI 時鐘相位 0: 當SCK 從CPOL 倒置到CPOL 時數據輸出到MOSI, 並且當SCK 從CPOL倒置到CPOL 時數據輸入抽樣到MISO。 1: 當SCK 從CPOL 倒置到CPOL 時數據輸出到MOSI,並且當SCK 從CPOL倒置到CPOL 時數據輸入抽樣到MISO

Bit[5] ORDER 傳送位順序 0: LSB 先傳送 1: MSB 先傳送
Bit[4:0] BAUD_E 波特率指數值。BAUD_E 和 BAUD_M 決定了UART 波特率和SPI 的主SCK 時鐘頻率
U0BAUD (0xC2) USART 0 波特率控制 BAUD_M[7:0] 波特率小數部分的值。BAUD_E和BAUD_M決定了UART的波特率和SPI的主SCK時鐘頻率
U0DBUF USART 0接收/發送數據緩存
UTX0IF(發送中斷標誌) IRCON2 Bit1 USART 0 TX中斷標誌0: 無中斷未決 1: 中斷未決
CLKCONCMD 時鐘控制命令 Bit[7] OSC32K 32 kHz 時鐘振蕩器選擇0 : 32 kHz XOSC 1 : 32 kHz RCOSC

Bit[6] OSC 系統時鐘源選擇0 : 32 MHz XOSC1 : 16 MHz RCOSC
Bit[5:3] TICKSPD 定時器標記輸出設置 000 :32 MHz 001 :16 MHz 010 :8 MHz 011 :4 MHz 100 :2 MHz 101 :1 MHz 110 :500 kHz 111 :250 kHz
Bit[2:0] CLKSPD 時鐘速度 000 :32 MHz 001 :16 MHz 010 :8 MHz 011 :4 MHz 100 :2 MHz 101 :1 MHz 110 :500 kHz 111 :250 kHz
CLKCONSTA CLKCONSTA寄存器是一個只讀寄存器,用來獲得當前時鐘狀態

1.2 常用波特率設置

由寄存器 UxBAUD.BAUD_M[7:0]和 UxGCR.BAUD_E[4:0]定義波特率。該波特率用於 UART 傳送,也用於 SPI 傳送的串行時鐘速率。波特率由下式給出:

技術分享圖片

F 是系統時鐘頻率,等於 16 MHz RCOSC 或者 32 MHz XOSC。 32 MHz 系統時鐘常用的波特率設置:

波特率(bps) UxBAUD.BAUD_M UxGCR.BAUD_E 誤差(%)
2400 59 6 0.14
4800 59 7 0.14
9600 59 8 0.14
14400 216 8 0.03
19200 59 9 0.14
28800 216 9 0.03
38400 59 10 0.14
57600 216 10 0.03
76800 59 11 0.14
115200 216 11 0.03
230400 216 12 0.03

本章未完待續..... 原來寫的文章已經丟失了,只能找到這一小部分,看什麽時候有時間再補上。

CC2530學習路線-基礎實驗-串口通訊發送字符串(4 未完待續)