蓝桥杯嵌入式第一天——点灯
使用的板子:CT117E(STM32F103RB)
#include "stm32f10x.h"
//LED引脚配置,PC08~PC15 573锁存器,PD2为其使能端
#define LED1_ON GPIO_SetBits(GPIOC,GPIO_Pin_8);
#define LED2_ON GPIO_SetBits(GPIOC,GPIO_Pin_9);
#define LED3_ON GPIO_SetBits(GPIOC,GPIO_Pin_10);
#define LED4_ON GPIO_SetBits(GPIOC,GPIO_Pin_11);
#define LED1_OFF GPIO_ResetBits(GPIOC,GPIO_Pin_8);
#define LED2_OFF GPIO_ResetBits(GPIOC,GPIO_Pin_9);
#define LED3_OFF GPIO_ResetBits(GPIOC,GPIO_Pin_10);
#define LED4_OFF GPIO_ResetBits(GPIOC,GPIO_Pin_11);
#define s573_ON GPIO_SetBits(GPIOD,GPIO_Pin_2); //连通
#define s573_OFF GPIO_ResetBits(GPIOD,GPIO_Pin_2)//断开
void R(void);//使能
void LED_Config(void);
/* LED_Config
LED控制初始化函数
*/
void LED_Config(void){
GPIO_InitTypeDef GPIO_InitStructure; //结构体
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC, ENABLE);
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOD,ENABLE); //锁存器
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_8|GPIO_Pin_9|GPIO_Pin_10|GPIO_Pin_11; // 配置引脚
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;//推挽输出
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;//50HZ
GPIO_Init(GPIOC,&GPIO_InitStructure); //初始化
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_2;
GPIO_Init(GPIOD,&GPIO_InitStructure);
}
int main(){
R(); //系统时钟配置
LED_Config(); //LED控制配置
while(1){
LED1_ON; //LED灭
LED2_OFF;
LED3_ON;
LED4_OFF;
s573_ON;
s573_OFF;
}
}
/****************************************************************************
* 名 称:void RCC_Configuration(void)
* 功 能:系统时钟配置为72MHZ
* 入口参数:无
* 出口参数:无
* 说 明:
* 调用方法:无
****************************************************************************/
void R(void)//初始化
{
SystemInit();
}
结果:
点灯成功
|