通過串列埠傳送十六進製制的陣列的方法有很多種,這裡我介紹一種最簡單也最使用的一種方法。
我這裡使用的板子是stm32f103rct6,使用串列埠2,usart2.c的**如下:
#include "delay.h"
#include "usart2.h"
#include "stdarg.h"
#include "stdio.h"
#include "string.h"
#include "timer.h"
//串列埠接受快取區
u8 usart2_rx_buf[usart2_max_recv_len]; //接受資料緩衝,最大為usart2_max_recv_len個位元組
u8 usart2_tx_buf[usart2_max_send_len]; //傳送資料緩衝,最大為usart2_max_send_len個位元組
//接收到的資料狀態,[15]:0,沒有接收到資料;1,接收到了一批資料,[14:0]:接收到的資料長度
vu16 usart2_rx_sta=0;
void usart2_irqhandler(void)
} void tim7_int_init(u16 arr,u16 psc)
timer.h檔案就只需要將void tim7_int_init(u16 arr,u16 psc);包含進去進行了。
下面就是最重要的了,就是傳送一組十六進製制的陣列,我這裡假設傳送這5位資料,那麼只需要在主函式的while(1)按下面那樣輸入就行了:
int main(void)
}
我這裡是用按鍵按下,然後串列埠2傳送資料,上面的**就是按鍵k0,串列埠2傳送這一組十六進製制數。按鍵的初始化就不說了。
以上就實現了用串列埠2傳送十六進製制陣列了,這個方法很簡單,因此它也不是最好的傳送方法。有其他好的方法還望路過的小哥哥小姐姐給點建議。
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函式...