STM32串列埠傳送十六進製制的陣列

2021-08-21 17:53:11 字數 977 閱讀 3405

通過串列埠傳送十六進製制的陣列的方法有很多種,這裡我介紹一種最簡單也最使用的一種方法。

我這裡使用的板子是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函式...