#include "stm32f10x.h"
void Delay(unsignedint x);
unsigned intTimingDelay;
intmain(void)
{
SystemInit();//配置系統時鐘
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC,ENABLE);//使能APB2外設時鐘
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA | RCC_APB2Periph_GPIOB| RCC_APB2Periph_GPIOC |RCC_APB2Periph_GPIOD,ENABLE);//IO口使能設置
GPIO_InitTypeDef GPIO_InitStructure; //定義I/O口結構體
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_6;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_Init(GPIOC, &GPIO_InitStructure);
GPIO_ResetBits(GPIOC, GPIO_Pin_6);
if (SysTick_Config(72000000 / 100)) //每10ms中斷一次
{
while (1);
}
while(1)
{
GPIO_SetBits(GPIOC, GPIO_Pin_6);
Delay(100); //100*10ms=1s
GPIO_ResetBits(GPIOC, GPIO_Pin_6);
Delay(100); //100*10ms=1s
}
}
void Delay(unsignedint x)
{
TimingDelay=x;
while(TimingDelay!=0);
}
voidTimingDelay_Decrement(void)
{
if (TimingDelay != 0x00)
{
TimingDelay--;
}
}
//以下是報錯函數
#ifdef USE_FULL_ASSERT
voidassert_failed(uint8_t* file, uint32_t line)
{
while (1)
{
}
}
#endif
|