stm32和stm8的串列埠貌似都可以一次傳送9位資料,最近才注意到這個,在此記錄。
一般不帶奇偶校驗位的串列埠資料:起始位(1)+資料位(8)+停止位(1)
帶奇偶校驗位的串列埠資料:起始位(1)+資料位(8)+校驗位(1)+停止位(1)
如果資料位為9位,即:起始位(1)+資料位(9)+停止位(1)
9位資料stm8串列埠的配置:
uart1_deinit();// 波特率 9位 1位停止位 無奇偶校驗 同步時鐘關 傳送接收使能
uart1_init((u32)1000000, uart1_wordlength_9d, uart1_stopbits_1, uart1_parity_no, uart1_syncmode_clock_disable, uart1_mode_txrx_enable);
9位資料stm8串列埠的配置:
usart_initstructure.usart_baudrate = 115200;
usart_initstructure.usart_wordlength = usart_wordlength_9b;
usart_initstructure.usart_stopbits = usart_stopbits_1;
usart_initstructure.usart_parity = usart_parity_no;
usart_initstructure.usart_hardwareflowcontrol = usart_hardwareflowcontrol_none;
usart_initstructure.usart_mode = usart_mode_rx | usart_mode_tx;
usart_init(usart1, &usart_initstructure);
要傳送的資料型別要為16位,使用低9位即可。
stm8使用uart1_senddata9(value[j]);來傳送。
stm32使用
void usart_senddata(usart_typedef* usartx, uint16_t data)
來傳送。 stm32串列埠通訊
通訊方式 1 同步通訊 帶時鐘同步訊號傳輸 spi,iic等 2 非同步通訊 不帶時鐘用途訊號 usrt,單匯流排 stm32串列埠引腳表 串口號 rxd txd 1 pa10 pa9 2 pa3pa2 3 pb11 pb10 4 pc11 pc10 5 pd2pc12 通訊過程 接收過程 由rx入...
STM32串列埠通訊
1.常用的串列埠相關暫存器 1 usart sr狀態暫存器,對應的庫函式 flagstatus usart getflagstatus usart typedef usartx,uint16 t usart flag 2 usart dr資料暫存器,對應的庫函式 void usart senddat...
STM32串列埠通訊
串列埠作為mcu最重要的外部介面,同時也是軟體開發重要的除錯手段,其重要性不言而喻。在這裡我們主要從庫函式的角度來講述如何設定串列埠,來達到最基本的通訊功能。串列埠的設定一般可以歸結為以下幾個步驟 1 串列埠時鐘使能,gpio時鐘使能。2 設定引腳復用器對映,呼叫gpio pinafconfig函式...