📄 arm延时.txt
字号:
/*延时毫秒级*/
void DelayMS(uint32 uiDly)
{
uint32 i;
for(;uiDly>0;uiDly--)
{
for(i=0;i<50000;i++); //i=50000
}
}
//uiDly=50 时,延时340ms
//uiDly=5 时,延时34ms ,成比例
//uiDly=1 时,延时6.8毫秒,成比例
/*延时微妙级*/
void DelayUS(uint32 uiDly)
{
uint32 i;
for(;uiDly>0;uiDly--)
{
for(i=0;i<5000;i++); //i=5000
}
}
//uiDly=50时,延时34 ms
//uiDly=5 时,延时3.4 ns
//uiDly=1 时,延时680 us(微妙)
/*延时微妙级*/
void DelayUS(uint32 uiDly)
{
uint32 i;
for(;uiDly>0;uiDly--)
{
for(i=0;i<500;i++); //i=500
}
}
//uiDly=50时,延时2.84ms
//uiDly=5 时,延时280 us(微妙)
//uiDly=1 时,延时57.6 us(微妙)
/*延时微妙级*/
void DelayUS(uint32 uiDly)
{
uint32 i;
for(;uiDly>0;uiDly--)
{
for(i=0;i<50;i++); //i=50
}
}
//uiDly=50时,延时288 us
//uiDly=5 时,延时29.6 us(微妙)
//uiDly=1 时,延时6.4 us(微妙)
/*延时微妙级*/
void DelayUS(uint32 uiDly)
{
uint32 i;
for(;uiDly>0;uiDly--)
{
for(i=0;i<5;i++); //i=5
}
}
//uiDly=50时,延时33.4 us
//uiDly=5 时,延时4.0 us(微妙)
//uiDly=1 时,延时1.36 us(微妙)
/*延时微妙级*/
void DelayNS(uint32 uiDly)
{
while(uiDly--);
}
//uiDly=50时,延时5.16 us(微妙)
//uiDly=5 时,延时1.08 us //延时1 um 会常用到
//uiDly=1 时,延时720.0 ns(纳秒)
//uiDly=11050 时,延时1.0 ms //延时1 ms 会常用到
void DelayNS(uint32 uiDly)
{
uint8 i;
for(i=0;i<uiDly;i++);
}
//uiDly=50时,延时8.6 us
//uiDly=5 时,延时1.44 us
//uiDly=1 时,延时800.0 ns (纳秒)
while(1)
{
IO0SET = LED1;
IO0CLR = LED1;
}
//脉宽的时间约为400.0 ns
//以上是基于LPC2103的示波器测试得到
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -