藍橋杯嵌入式模組練習之點亮LED KEY

2021-10-19 12:19:40 字數 1745 閱讀 2153

有微控制器基礎就很簡單了,上原理圖。

573鎖存器使能端為pd2,當pc8-pc15為低電平,且573鎖存時led點亮。

初始化led**如下,先關閉所有led。

由原理圖知按下按鍵相應埠為低電平。

初始化**如下。

void

keyinit()

按鍵檢測需要延遲函式。需要使用到stm32的滴答定時器,簡單配置即可。

主函式裡檢測按鍵並點亮相應led。

main.c部分**如下

#include "stm32f10x.h"

#include

uint32_t delaytime;

//在中斷函式中需要用到

void

ledinit

(void);

void

keyinit

(void);

void

delay

(uint32_t ms)

;int main

(void)}

if(gpio_readinputdatabit

(gpioa

,gpio_pin_8)

==reset)}

if(gpio_readinputdatabit

(gpiob

,gpio_pin_1)

==reset)}

if(gpio_readinputdatabit

(gpiob

,gpio_pin_2)

==reset)}

}}void

delay

(uint32_t ms)

中斷檔案中部分**如下

#include "stm32f10x_it.h"

extern uint32_t delaytime;

//外部變數在主函式中

void

systick_handler

(void

)

還可以一次控制多個led點滅。如下**,一看就懂。

gpio_write

(gpioc

,0x5fff

); 點亮led8,6

藍橋杯嵌入式 USART

乙個是串列埠 1 pa9,pa10 乙個是串列埠 2 pa2,pa3 我們的藍橋杯嵌入式開發板並不能直接使用串列埠 1rxbuf 是用來儲存串列埠的接收資料的,rxover 為接收串列埠結束標誌位,rxcunt 為串列埠接收計數值 ifndef usart h define usart h incl...

藍橋杯嵌入式 LCD

include stm32f10x.h include lcd.h include stdio.h u8 string 20 u8 temp 30 float ao 3.81 u32 timingdelay 0 void delay ms u32 ntime main body int main v...

藍橋杯嵌入式 RTC

bkp裡是關於備份暫存器的庫函式,pwr裡是關於電源管理的庫函式 ifndef rtc h define rtc h include stm32f10x.h void rtc init u8 hh,u8 mm,u8 ss endif include rtc.h void rtc init u8 hh...