STM32學習筆記六 GPIO模擬USART

2021-09-25 09:35:38 字數 1436 閱讀 7859

在實際開發當中會遇到串列埠不夠的情況,此時我們可以通過gpio模擬usart。

io口模擬串列埠的思路也比較簡單,一切按照串列埠協議進行操作即可。

對於傳送,計算好不同波特率對應的延時時間進行資料傳送。

對於接收,稍微複雜。通過外部中斷檢測接收管腳的下降沿,檢測到起始訊號後開啟定時器,定時器按照波特率

設定好時間,每隔一段時間進入定時器中斷接收資料,完成乙個位元組後關閉定時器。

選中:cmsis>core;device>startup;>stdperiph drivers>exti;>framework;>gpio;>rcc;>tim;等
io口初始化配置

//輸出管腳配置

void

gpio_configuration

(void

)//輸入管腳及中斷配置

void

gpio_configuration

(void

)

傳送函式

//傳送1個位元組

void

io_txd

(u8 ch)

gpio_setbits

(gpioc,gpio_pin_9)

;delay_us

(buadrate_9600);}

//傳送字串

void

usart_send

(u8 *buf, u8 len)

}

設定列舉變數,這裡考慮到usart共有10個bit資料。

enum

;

接收程式可以使用軟體延時的方式(但是不推薦),也可使用定時器的方式進行接收。

void

exti15_10_irqhandler

(void

)else

delay

(0x33a);

}}}exti_clearitpendingbit

(exti_line10)

;//清除exti_line10中斷掛起標誌位

}}

void

exti15_10_irqhandler

(void)}

exti_clearitpendingbit

(exti_line14);}

}void

tim4_irqhandler

(void)if

(gpio_readinputdatabit

(gpioa, gpio_pin_10)

)//接收為高電平

else

}}

usart簡介

usart模擬

stm32學習筆記 GPIO

2011 03 06 15 10 stm32基本上每個引腳都有8種配置模式 浮空輸入 帶弱上拉輸入 帶弱下拉輸入 模擬輸入 推挽輸出 開漏輸出 復用推挽輸出 復用開漏輸出 通常有5種方式使用某個引腳功能,它們的配置方式如下 1 作為普通gpio輸入 根據需要配置該引腳為浮空輸入 帶弱上拉輸入或帶弱下...

STM32學習筆記 GPIO

該微控制器在gpio功能方面有以下特點 1 4種輸入模式 gpio mode ain 模擬輸入 gpio mode in floating 浮空輸入 gpio mode ipd 下拉輸入 gpio mode ipu 上拉輸入 2 4種輸出模式 gpio mode out od 開漏輸出 gpio m...

stm32學習筆記之GPIO配置

1 gpio mode ain 模擬輸入 2 gpio mode in floating 浮空輸入 3 gpio mode ipd 下拉輸入 4 gpio mode ipu 上拉輸入 5 gpio mode out od 開漏輸出 6 gpio mode out pp 推挽輸出 7 gpio mod...