![]() |
發布時間: 2024-1-6 16:02
正文摘要:DIY練手:程序中有紅外接收,有PWM調光(LED)中斷100us,和18b20讀取溫度有沖突,不知該怎么辦? 想用STC408測溫,用51來調光,感覺數碼管難看想用LCD顯示,請問兩個系統可以共用LCD12864來顯示嗎? 程序就不上 ... |
STC15W408有硬件PWM 紅外接收用CCP捕獲模式 |
調光PWM不需要非常精確的話,讀18B20關中斷,一片51完全可以實現功能 |
4758866 發表于 2024-1-13 08:55 這樣的多任務用單片機沒戲,內部結構都要改。 除非用多個單片機分工處理或FPGA。 |
多任務不好搞,我也搞了多個模塊一起用,有時候一個模塊調整一下時序會影響其他模塊,頭疼 |
1600277881 發表于 2024-1-6 20:48 這個程序不是什么多任務時間分配就能實現的。 你要能用操作系統實現,單片機內置的硬件串口、PWM等模塊都沒用了? |
如果想要PWM不被其他中斷打擾、你應該配置寄存器啟用硬件PWM功能,并不是所有單片機都有硬件PWM,具體見數據手冊。 |
1600277881 發表于 2024-1-6 20:48 8051跑FreeRTOS,你是認真的嗎? |
不要用18B20. 如果關中斷,可以保住自己, 但是 可能影響別人; 不關中斷,自己的數據不可靠。除非其他設備都沒有時序要求。 |
這是關于多任務時間分配的問題,看似是一條簡單的問題,實在是難以三言兩語之間能讓你解決問題,去了解一下類似FreeRTOS的操作系統吧。 |
18b20時序里面沒有最大時間限制就隨便加,你擔心什么? |