1.使能埠(以pb,pc為例)
rcc_apb2periphclockcmd(rcc_apb2periph_gpiob enable); //使能 pb埠時鐘
rcc_apb2periphclockcmd(rcc_apb2periph_gpioe, enable); //使能pe埠時鐘
2.初始化埠號
gpio_inittypedef gpio_initstructure;
gpio_initstructure.gpio_pin = gpio_pin_5; //led0-->pb.5 推挽輸出
gpio_initstructure.gpio_mode = gpio_mode_out_pp; //推挽輸出
gpio_initstructure.gpio_speed = gpio_speed_50mhz;
gpio_init(gpiob, &gpio_initstructure);
gpio_initstructure.gpio_pin = gpio_pin_5; //led1-->pe.5 推挽輸出
gpio_initstructure.gpio_mode = gpio_mode_out_pp; //推挽輸出
gpio_initstructure.gpio_speed = gpio_speed_50mhz;
gpio_init(gpioe, &gpio_initstructure);
3.設定埠號的輸出高位和輸出低位
gpio_setbits(gpiob,gpio_pin_5);
gpio_setbits(gpioe,gpio_pin_5);
gpio_resetbits(gpiob,gpio_pin_5);
gpio_resetbits(gpioe,gpio_pin_5);
原理:通過高位和低位的跳轉,來達到燈的閃爍效果
**:
#define led0 pbout(5)// ds0
#define led1 peout(5)// ds1
delay_init()
int main()
}
led.h
#ifndef __led_h
#define __led_h
#include "sys.h"
//led 埠定義
#define led0 pbout(5)// ds0
#define led1 peout(5)// ds1
void led_init(void);//初始化 #endif
led.c
#include "led.h"
//初始化 pb5 和 pe5 為輸出口.並使能這兩個口的時鐘
//led io 初始化alientek 精英 stm32f103 v1 開發板教程
stm32f1 開發指南(精英板-庫函式版)
void led_init(void)
main.c
#include "led.h"
#include "delay.h"
#include "sys.h"
//alientek 精英 stm32 開發板實驗 1
//跑馬燈實驗
int main(void)
}
自己的**:
led.h
#ifndef __led_h
#define __led_h
#include "sys.h"
void led_init(void);
#endif
led.c
#include "led.h"
#include "stm32f10x.h"
void led_init(void)
main.c
#include "stm32f10x.h"
#include "led.h"
#include "delay.h"
int main(void)
}
STM32的GPIO埠學習
gpio general purpose input output 為通用輸入輸出引腳 stm32最多有gpioa gpiob gpiog組埠,每組埠最多有pin0 pin1 pin15共16個引腳 每乙個i o埠都可以被程式設計,每乙個i o口由7個暫存器控制 i o口可以由軟體配置成8種模式 1...
STM32學習 埠復用及對映
stm32有很多的內建外設,這些外設的外部引腳都是與gpio復用的。也就是說,乙個gpio如果可以復用為內建外設的功能引腳,那麼當這個gpio作為內建外設使用的時候,就叫做復用。哪些埠可以復用為什麼,這個查表就可以了 比如af1要復用到tim1 通過設定afrl暫存器和afrh暫存器 就可以af1 ...
STM32學習 LCD的使用
原理 lcd即液晶顯示器,給液晶施加電場,會改變它的分子排列,從而改變光線傳播方向,配合偏振光片,它就具有控制光線透過率的作用,再配合彩色濾光片,就能改變某一顏色透光量的多少。做出可控紅 綠 藍光輸出強度的顯示結構,組成乙個顯示單位,通過控制紅綠藍的強度,可以使該單位混合輸出不同的色彩,這樣的乙個顯...