int ggNARROWPWM(int cmprOld) { int gap=(DBLEN*11)>>4;//75*2, 150M, is 1us int prd=PWMPRD; int ret=cmprOld; if(cmprOld<gap){ret=0;} if(cmprOld>prd-gap) ret=prd; return ret;int cmprOld=1
时间: 2024-04-06 11:32:47 浏览: 93
java数组排序源代码
这段代码定义了一个函数 `ggNARROWPWM`,其作用是用于对输入的 `cmprOld` 进行处理,并返回处理后的结果。
具体实现方式是:
1. 声明并初始化变量 `gap`,其值为 `(DBLEN*11)>>4`,即 `75*2>>4=150/16=9`。
2. 声明并初始化变量 `prd`,其值为 `PWMPRD`。
3. 声明并初始化变量 `ret`,其值为输入的 `cmprOld`。
4. 判断 `cmprOld` 是否小于 `gap`,若是,则将 `ret` 的值赋为0。
5. 判断 `cmprOld` 是否大于 `prd-gap`,若是,则将 `ret` 的值赋为 `prd`。
6. 返回处理后的结果 `ret`。
在输入 `cmprOld=1` 的情况下,由于 `cmprOld` 小于 `gap=9`,因此将 `ret` 的值赋为 0。最终,函数返回值为 0。
阅读全文