将官网的代码例子复制粘贴到其他位置需要注意的事项:例子文件夹里面是没有包含开发板主控芯片的库函数等底层的相关文件的。复制粘贴到其他位置后需要重新
复制粘贴一份开发板主控芯片的库函数等底层的相关文件,具体细节看后面的附件
主函数的代码:
#define _MAIN_C_
#include "platform.h"
#include "gpio_led_toggle.h"
#include "main.h"
int main(void)
{
PLATFORM_Init();
GPIO_LED_Toggle_Sample();
while (1)
{
}
}
LED灯函数的代码:
#define _GPIO_LED_TOGGLE_C_
#include <stdio.h>
#include "platform.h"
#include "gpio_led_toggle.h"
void GPIO_Configure(void)//GPIO初始化函数
{
GPIO_InitTypeDef GPIO_InitStruct;
RCC_AHBPeriphClockCmd(RCC_AHBPeriph_GPIOB, ENABLE);
GPIO_StructInit(&GPIO_InitStruct);
GPIO_InitStruct.GPIO_Pin = GPIO_Pin_14 | GPIO_Pin_15 ;
GPIO_InitStruct.GPIO_Speed = GPIO_Speed_High;
GPIO_InitStruct.GPIO_Mode = GPIO_Mode_Out_PP;
GPIO_Init(GPIOB, &GPIO_InitStruct);
GPIO_WriteBit(GPIOB, GPIO_Pin_14 | GPIO_Pin_15, Bit_SET);//初始化PB14,PB15
}
void GPIO_IO_Toggle(GPIO_TypeDef *GPIOn, uint16_t PINn)//GPIO口电平翻转函数
{
if (Bit_RESET == GPIO_ReadOutputDataBit(GPIOn, PINn))
{
GPIO_SetBits(GPIOn, PINn);
}
else
{
GPIO_ResetBits(GPIOn, PINn);
}
}
void GPIO_LED_Toggle_Sample(void)//LED灯闪烁函数
{
printf("\r\nTest %s", __FUNCTION__);
GPIO_Configure();
while (1)
{
GPIO_IO_Toggle(GPIOB, GPIO_Pin_14);//LED2蓝灯
GPIO_IO_Toggle(GPIOB, GPIO_Pin_15);//LED1绿灯
PLATFORM_DelayMS(100);
}
}


