您的位置:首页 > 编程语言

1.点亮LED—基于CT117E开发板的STM32库函数编程

2017-01-23 09:55 218 查看
库文件stm32f10x_gpio.c和stm32f10x_rcc.c,应添加到工程里。
这是 #include"led.h" 里面的内容,可以直接用LED0—LED15

#ifndef__LED_H

#define__LED_H


//CT117ELED

#defineLED0GPIO_Pin_8

#defineLED1GPIO_Pin_9

#defineLED2GPIO_Pin_10

#defineLED3GPIO_Pin_11

#defineLED4GPIO_Pin_12

#defineLED5GPIO_Pin_13

#defineLED6GPIO_Pin_14

#defineLED7GPIO_Pin_15

#defineLEDALLGPIO_Pin_All


#endif


随后对LED相关GPIO引脚工作模式及时钟进行配置,即LED的初始化,所以这个函数设为Led_Init()。

voidLED_Init(void)

{

GPIO_InitTypeDefGPIO_InitStructure;//GPIO结构体复用定义

//使能GPIOC和GPIOD的外设时钟

RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC,ENABLE);

RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOD,ENABLE);


GPIO_InitStructure.GPIO_Pin=LED0|LED1|LED2|LED3|LED4|LED5|LED6|LED7;//端口配置

GPIO_InitStructure.GPIO_Mode=GPIO_Mode_Out_PP;//推挽输出

GPIO_InitStructure.GPIO_Speed=GPIO_Speed_10MHz;//IO口速度配置

GPIO_Init(GPIOC,&GPIO_InitStructure);端口初始化

GPIO_SetBits(GPIOC,LED1);//初始化应设为输出高电平


GPIO_InitStructure.GPIO_Pin=GPIO_Pin_2;//锁存引脚D2端口配置

GPIO_Init(GPIOD,&GPIO_InitStructure);

}


1.在配置STM32外设的时候,首先要使能其时钟。GPIO是挂载在APB2总线上的外设,在固件库中对挂载在APB2总线上的外设时钟使能通过RCC_APB2PeriphClockCmd()实现。
 
2.端口配置,用到结构体里的.GPIO_Pin这个类。
 
3.设置输出方式为推挽输出,GPIO_Mode=GPIO_Mode_Out_PP
 
4.设置IO速度
 
5.端口初始化
 
开灯LED1则 GPIO_SetBits(GPIOC,LED1);关掉GPIO_ResetBits(GPIOC,LED1);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  stm32