需要做一个编码模块。使用的是STM32L051 延时需要达到精确的1.95us±0.1us, 可是在网上根本找不到精确到微秒以下的函数。 使用__NOP();作为延时调节太过于麻烦,而且会被IAR优化。 在430里面有一个__delay_cycle();这样的函数,不知道stm32里面有没有?? |
这个可以使用定时器的pwm功能,如果强求要死延时那么久可以多asm("nop"),多用几句可以看出几百个时刚好达到那个延时 |
要求高就用定时器 |
定时器,systick都可以完成啊 |
你那儿有例程了吗?分享一个,新手入门中,多谢 |
用定时器就可以的。可以考虑不用分频。 |
有些stm32里有高精度定时器 |