STM32筆記之USART串列埠通訊

2021-10-20 23:10:03 字數 2388 閱讀 6213

第五章 usart串列埠通訊 總結

開始!開始!微控制器的usart串列埠除錯。

# 一、usart

rx:接收

tx:傳送

**如下(示例):

#include

"usart.h"

//中斷優先順序的配置,包含在mise.h標頭檔案中

static

void

nvic_cinfig

(void

)//usart配置

void

usart_config

(void

)/***************** 傳送乙個位元組 **********************/

void

usart_sendbyte

(usart_typedef *pusartx,uint8_t data)

/***************** 傳送兩個位元組 **********************/

void

usart_sendhalfword

(usart_typedef *pusartx,uint16_t data)

/***************** 傳送陣列 **********************/

void

usart_sendarray

(usart_typedef *pusartx,uint16_t *array,uint8_t num)

while

(usart_getflagstatus

(pusartx,usart_flag_tc)

==reset);}

/***************** 傳送字串 **********************/

void

usart_sendstring

(usart_typedef *pusartx,

char

*str)

while(*

(str+i)

!='\0');

while

(usart_getflagstatus

(pusartx,usart_flag_tc)

==reset);}

///重定向c庫函式printf到串列埠,重定向後可使用printf函式

intfputc

(int ch, file *f)

///重定向c庫函式scanf到串列埠,重寫向後可使用scanf、getchar等函式

intfgetc

(file *f)

**如下(示例):

#ifndef _usart_h

#define _usart_h

#include

"stm32f10x.h"

#include

void

usart_config

(void);

void

usart_sendbyte

(usart_typedef *pusartx,uint8_t data)

;void

usart_sendhalfword

(usart_typedef *pusartx,uint16_t data)

;void

usart_sendarray

(usart_typedef *pusartx,uint16_t *array,uint8_t num)

;void

usart_sendstring

(usart_typedef *pusartx,

char

*str)

;#endif

/*_usart_h*/

**如下(示例):

#include

"stm32f10x_it.h"

#include

"bsp_usart.h"

void

usart1_irqhandler

(void

)}

**如下(示例):

#include

"stm32f10x.h"

// 相當於51微控制器中的 #include

#include

"bsp_led.h"

#include

"bsp_key.h"

#include

"bsp_usart.h"

uint16_t array=

;void

delay

(uint32_t count)

intmain

(void

)

該處使用的url網路請求的資料。

@

STM32學習之USART串列埠

通用同步非同步收發器 usart 支援lin 區域性互連網 智慧卡協議和irda 紅外資料組織 sir endec規範,以及數據機 cts rts 操作 允許多處理器通訊 使用多緩衝器配置的dma方式,可以實現高速資料通訊。stm32f107有5個usart。usart暫存器 狀態暫存器 usart...

STM32之USART串列埠通訊《二》

一 簡單demo 通過232串列埠,與上位機進行通訊。首先保證微控制器232串列埠與電腦的串列埠介面相連,當然電腦是usb介面,其實usb介面的實質也是串列埠。我們實現上位機傳送乙個16進製制的資料,微控制器接受到資料後顯示,並且2倍傳送給上位機。1 usart init 串列埠初始化 void u...

STM32筆記記錄

串列埠記錄 stm32有好幾個串列埠。比如說stm32f103zet6有5個串列埠,串列埠1的引腳對應的io為pa9,pa10.pa9,pa10預設功能是gpio,所以當pa9,pa10引腳作為串列埠1的tx,rx引腳使用的時候,那就是埠復用。復用埠初始化有幾個步驟 1 gpio埠時鐘使能。要使用到...