定时器中断频率不能为小数吗?还有我不能在回调函数计数吗?当计的数大于某个值时才执行其他功能
-
import time from pyb import Pin, Timer, LED blue_led = LED(3) i=0 # we will receive the timer object when being called # Note: functions that allocate memory are Not allowed in callbacks def tick(timer): i=i+1 if i>=5: blue_led.toggle() tim = Timer(2, freq=1) # create a timer object using timer 2 - trigger at 1Hz tim.callback(tick) # set the callback to our tick function while (True): time.sleep_ms(1000) print(i)
-
回调函数不能有内存申请的话,那我想用定时器中断该怎么办?
-
你代码的问题,通过加一个global可以解决。
import time from pyb import Pin, Timer, LED blue_led = LED(3) i=0 # we will receive the timer object when being called # Note: functions that allocate memory are Not allowed in callbacks def tick(timer): global i i=i+1 if i>=5: blue_led.toggle() tim = Timer(2, freq=1) # create a timer object using timer 2 - trigger at 1Hz tim.callback(tick) # set the callback to our tick function while (True): time.sleep_ms(1000) print(i)
-
回调函数里能写很多代码吗
-
主函数很多代码为什么会影响到回调函数,回调函数里有计数大于某个值时清零,但主函数很多代码后不会清理了是什么情况
-
@m13t 新发一个帖子,然后附上全部代码。然后说明具体什么时候会出现错误,我才能知道哪里有问题。