前段時間,我將DHT11傳感器連接到Arduino UNO,並根據the one from Arduino website編寫了a simple library。愛迪生DHT11傳感器故障,而在RPi上工作成功
目前我想通過運行Yocto Linux的Arduino擴展板將DHT11連接到英特爾Edison。在嘗試將庫重寫爲Python時,我期待在該語言中出現微秒級睡眠問題,並最終決定使用mraa重新制作Raspberry Pi DHT11 Library。但是,傳感器不能正常工作。我發現the topic on Intel forum指責愛迪生端口快速IN/OUT切換不能。使用兩根電線的建議解決方案也無濟於事。
這個介紹之後,有幾個問題,我想起:
由於兩個樹莓和愛迪生是計算機系統與真實 處理器和Linux(不像它由簡單 微控制器的Arduino的),爲什麼是愛迪生 愛迪生與DHT11有問題的人,而那些使用樹莓的人不是?
這些問題的根源是什麼?它是否與 Edison上的非確定性操作系統時序相關聯(RPi具有相同的功能,還沒有 它?),數字引腳有缺陷還是兩者兼而有之?
甚至有可能使用兩根導線來解決這個問題(或者帶有二極管的 )?如果沒有建議的三態緩衝器,也許這是不可能的?
將單線設備連接到愛迪生的最簡單方法是什麼?
但是,鏈接庫如何在RPi上正常工作?它也取決於快速gpio切換。 –
@BartłomiejSzałach如果使用適當的內核驅動程序,它可能足夠快以響應信號變化。否則你有選擇:1)使用額外的MCU,2)使用內部MCU,雖然它很慢,3)使用實時操作系統(Linux RT,Zephyr等)。 – 0andriy