利用已经建立的工程模板,在Keil for ARM V5中编写代码,使用按键控制LED灯电路实现如下功能:配置相应的GPIO口为通用输出口,循环点亮4个LED灯。
main.c
ST_Init();
GPIO_WriteBit(GPIOB, GPIO_Pin_8, Bit_SET);
GPIO_WriteBit(GPIOB, GPIO_Pin_9, Bit_SET);
GPIO_WriteBit(GPIOB, GPIO_Pin_10, Bit_SET);
GPIO_WriteBit(GPIOB, GPIO_Pin_11, Bit_SET);
while(1)
{
GPIO_WriteBit(GPIOB, GPIO_Pin_8, Bit_RESET);
delay(1000);
GPIO_WriteBit(GPIOB, GPIO_Pin_8, Bit_SET);
GPIO_WriteBit(GPIOB, GPIO_Pin_9, Bit_RESET);
delay(1000);
GPIO_WriteBit(GPIOB, GPIO_Pin_9, Bit_SET);
GPIO_WriteBit(GPIOB, GPIO_Pin_10, Bit_RESET);
delay(1000);
GPIO_WriteBit(GPIOB, GPIO_Pin_10, Bit_SET);
GPIO_WriteBit(GPIOB, GPIO_Pin_11, Bit_RESET);
delay(1000);
GPIO_WriteBit(GPIOB, GPIO_Pin_11, Bit_SET);
}
st.c
void ST_Init()
{
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB , ENABLE);
GPIO_InitTypeDef GPIO_InitStructure;
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_All;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
GPIO_Init(GPIOB, &GPIO_InitStructure);
}
st.h
#ifndef __ST_H
#define __ST_H
#include "sys.h"
void ST_Init(void);
#endif