主函数
1 /* Note:Your choice is C IDE */ 2 #include "stdio.h" 3 #include "led.h" 4 void main() 5 { 6 SystemInit();//初始化系统,使得系统频率为72兆 7 systick_init();//配置Systick,使得1ms产生中断 8 led_gpio_init(); 9 while(1)10 {11 12 GPIO_Setbits(GPIO,GPIO_Pin_15);13 delay_ms(1000);//延时14 GPIO_ResetBits(GPIO,GPIO_Pin_15);15 delay_ms(1000);16 }17 }
time函数
1 /* Note:Your choice is C IDE */ 2 #include "stdio.h" 3 /* 4 *第一步:配置系统时钟 void SystemInit(void) 5 *配置Systick core_cm3.h 6 *写SysTick中断处理函数 7 *编写delay延迟函数 8 */ 9 10 _IO uint32_t TimeDelay;11 12 void systick_init(void)13 {14 //配置Systick重载值,系统时钟为72MHz15 //设置72000,中断时间;72000*(1/72000000)=1ms16 17 if(SysTick_confing(72000)==1)18 {19 while(1);20 }21 /*22 while(Systick_confing(72000)==1)23 */24 }25 //中断函数26 void TimingDelay_Decrement(void)27 {28 if(TimingDelay!=0x00)29 {30 TimingDelay--; 31 }32 }33 34 void sysTick_Handle()35 {36 37 }38 39 //第四步40 void delay_ms(_IO uint32_t nTime)41 {42 TimingDelay=ntime;//时钟滴答43 while(TimingDelay!=0);44 }
1 #ifndef _TIMER_H_2 #define _TIMER_H_3 #include "stm32f10x.h"4 5 6 extern _IO uint32_t TimingDelay;//生命外面的变量7 void systick_init(void);8 void delay_ms(_IO uint32_t nTime)9 #endif