【发布时间】:2014-01-04 15:57:48
【问题描述】:
我想知道是否可以在不暂停主程序的情况下在 Arduino uno 上处理 Serial.println()。
基本上,我使用 arduino 为 400V 电容器充电,主程序分别打开和关闭 MOSFET 晶体管上的栅极 15 微秒和 20 微秒。我还有一个连接到电容器的分压器,当它被 Arduino 充电时,我用它来测量电容器上的电压。我使用analogRead() 来获取引脚上的原始值,将该值乘以所需的比率,并尝试在每个周期结束时将该值打印到串行控制台。但问题是,为了让电容器快速充电,延迟需要非常小(在微秒范围内),并且串行打印命令的执行时间要长得多,因此会阻止整个程序。
因此,我的问题是,是否有可能让命令在不同“线程”之类的东西上执行而不会阻止主循环。 8bit AVR 能做这样的事情吗?
谢谢
【问题讨论】:
标签: multithreading serial-port arduino