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