这个是us计时延时的
void delay_us(u32 Nus) //delay N us
{
u32 temp0;
SysTick->LOAD=Nus*fac_us; //×°ÔØÊý¾Ý
SysTick->VAL=0x00; //Çå¿Õ¼ÆÊýÆ÷
SysTick->CTRL=0x01 ; //¿ªÆô¼ÆÊ±
do
{
temp0=SysTick->CTRL;
}
while(temp0&0x01&&!(temp0&(1<<16)));//µÈ´ý¼ÆÊ±µ½´ï
SysTick->CTRL=0x00; //¹Ø±Õ¼ÆÊ±
SysTick->VAL =0X00; //Çå¿Õ¼ÆÊýÆ÷
}
|