主函數函數
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函數ui
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重載值,系統時鐘爲72MHz 15 //設置72000,中斷時間;72000*(1/72000000)=1ms 16 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