first commit
This commit is contained in:
47
Gambal/System/Delay.c
Normal file
47
Gambal/System/Delay.c
Normal file
@ -0,0 +1,47 @@
|
||||
#include "delay.h"
|
||||
/******************************************************************************/
|
||||
//<2F>ӳ<EFBFBD>nus
|
||||
void delay_us(unsigned long nus)
|
||||
{
|
||||
unsigned long temp;
|
||||
|
||||
|
||||
SysTick->LOAD =nus*9; //9=??72MHz
|
||||
SysTick->VAL =0;
|
||||
SysTick->CTRL =SysTick_CTRL_ENABLE_Msk; //HCLK/8
|
||||
do
|
||||
{
|
||||
temp=SysTick->CTRL;
|
||||
}while((temp&0x01)&&!(temp&(1<<16)));
|
||||
|
||||
SysTick->CTRL=0;
|
||||
SysTick->VAL =0;
|
||||
}
|
||||
/******************************************************************************/
|
||||
//<2F>ӳ<EFBFBD>nms
|
||||
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱʱ<CAB1><CAB1>=0xFFFFFF/9MHz=1864ms
|
||||
void delay_ms(unsigned short nms)
|
||||
{
|
||||
unsigned long temp;
|
||||
|
||||
SysTick->LOAD=(u32)nms*9000; //9=??72MHz
|
||||
SysTick->VAL =0;
|
||||
SysTick->CTRL|=SysTick_CTRL_ENABLE_Msk ; //HCLK/8
|
||||
do
|
||||
{
|
||||
temp=SysTick->CTRL;
|
||||
}while((temp&0x01)&&!(temp&(1<<16)));
|
||||
|
||||
SysTick->CTRL&=~SysTick_CTRL_ENABLE_Msk;
|
||||
SysTick->VAL =0;
|
||||
}
|
||||
/******************************************************************************/
|
||||
//0xFFFFFF<46><46>0ѭ<30><D1AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
void systick_CountMode(void)
|
||||
{
|
||||
SysTick->LOAD = 0xFFFFFF-1; //set reload register
|
||||
SysTick->VAL = 0;
|
||||
SysTick->CTRL = SysTick_CTRL_ENABLE_Msk; //Enable SysTick Timer
|
||||
}
|
||||
/******************************************************************************/
|
||||
|
Reference in New Issue
Block a user