工程文件包下载
项目工程基础包压缩文件下载链接:.
系统嘀哒时钟系统的配置编程
#include "stm32f10x.h"
#include "systick.h"
void SYSTICK_Init(void)
{
while (SysTick_Config(SystemCoreClock/1000000));
}
系统嘀哒时钟中断服务程序
unsigned long CountNum=0;
void SysTick_Handler(void)
{
if(CountNum!= 0x0)
CountNum--;
}
系统延时t毫秒的函数
#include "delay.h"
extern unsigned long CountNum;
void Delay_us(u32 t)
{
CountNum=t;
while(CountNum!=0x0){;}
}
void Delay_ms(u32 t)
{
int i=0;
for(i=0;i<t;i++)
{
Delay_us(1000);
}
}
LED宏定义编程
#include "stm32f10x.h"
#define LED0_OFF GPIO_SetBits(GPIOA,GPIO_Pin_0)
#define LED0_ON GPIO_ResetBits(GPIOA,GPIO_Pin_0)
void GPIO_Config(void);
LED引脚配置编程
#include "gpio.h"
void GPIO_Config(void)
{
GPIO_InitTypeDef GPIO_InitStructure;
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA | RCC_APB2Periph_GPIOB |RCC_APB2Periph_AFIO,ENABLE);
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0 ;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_10MHz;
GPIO_Init(GPIOA, &GPIO_InitStructure);
}
系统主程序
#include "stm32f10x.h"
#include "gpio.h"
#include "systick.h"
#include "delay.h"
int main(void)
{
int i=0;
SystemInit();
SYSTICK_Init();
GPIO_Config();
LED0_OFF;
while(1)
{
Delay_ms(500);
if (i==1)
{ i=0;
LED0_OFF;
}else{
i=1;
LED0_ON;
}
}
}