void delay(uint t) { while(t--); while(t--);
时间: 2023-08-15 11:06:28 浏览: 74
这段代码是一个简单的延时函数。它使用了两个 `while` 循环来进行延时操作。在第一个 `while` 循环中,变量 `t` 会递减直到为 0,这段时间会被用于延时。然后,第二个 `while` 循环也会执行一次,这是为了确保延时更加准确。尽管这段代码能够实现简单的延时功能,但它的精度可能受到编译器和硬件的影响,不够可靠。
相关问题
void delay_us(uint32_t nus)
这是一个函数声明,用于实现微秒级别的延时,函数的实现可能类似于下面的代码:
```c
void delay_us(uint32_t nus)
{
uint32_t ticks = nus * (SystemCoreClock / 1000000);
volatile uint32_t start = DWT->CYCCNT;
while (DWT->CYCCNT - start < ticks);
}
```
其中,`SystemCoreClock` 是系统时钟频率,`DWT->CYCCNT` 是一个用于计时的寄存器。函数的实现思路是利用这个计时寄存器计算出需要延时的时钟周期数,然后在一个循环中等待这些时钟周期过去。由于这个循环中只有一条指令,因此可以认为它是一个非常精确的延时函数。
给出注释void delay(uint count) { uint i; while(count) { i=200; while(i>0) i--; count--; }
这段代码是一个简单的延时函数,其作用是在执行到该函数时,让程序暂停一段时间,以达到延时的目的。具体注释如下:
- void delay(uint count):函数名为 delay,其参数 count 表示要延时的时间,类型为无符号整型。
- uint i:定义一个无符号整型变量 i,用于控制内部的循环次数。
- while(count):外部循环,当 count 的值不为 0 时一直执行。
- i=200:将 i 的初始值设为 200,用于内部循环的计数。
- while(i>0):内部循环,当 i 大于 0 时一直执行。
- i--:每次循环结束,将 i 减一。
- count--:外部循环每执行一次,将 count 减一,直到 count 的值为 0,跳出外部循环,函数执行结束。
相关推荐
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)