2013-05-11 123 views
2

我終於得到了所有的傳感器工作,發送數據到文本文件等,但我有一個PHP的問題。我可以通過一個基於PHP的網站連接到Arduino。我可以打開或關閉LED。但是當我從Arduino讀取數據時,我無法做到這一點。Arduino顯示器與PHP一起工作

我使用的命令:

cat /dev/ttyACM0 > data.txt 

一切工作正常,但是當我試圖使用PHP腳本,我得到連接錯誤。

如果我不使用命令「貓」,我通常可以使用PHP網站,但我看不到傳感器數據。

任何想法?

+2

如何調用'exec()'?此外,不要告訴任何人你正在使用的代碼,以免他們因爲做出一個好的回答而分心...... – Sven 2013-05-11 14:23:18

+0

嘿!這不是代碼。我可以使用簡單的代碼來讀取Arduino顯示器的溫度,在閱讀時,Arduino的處理器很忙,我無法用PHP做任何事情。 PHP腳本需要Arduino的處理器是免費的,但我不知道如何在同一時間讀取和寫入。這是我的問題。 – 2013-05-12 07:25:06

+1

使用一個cronjob完成單任務Arduino的任務,並且從PHP只能發送命令到cronjobs隊列並讀回結果。 – Sven 2013-05-12 11:33:03

回答

0

從您的問題得知連接錯誤的位置並不清楚。 如果arduino或linux拋出錯誤,很可能PHP腳本正在鎖定data.txt文件。 確保你在讀模式下僅

fopen("data.txt", "r"); 

如果它是瀏覽器中打開該文件,有可能是在您讀取文件的方式有問題。 如果PHP進入循環讀取文件,連接超時,因爲它永遠不會達到「文件結束」。 你可以嘗試創建一個PHP腳本來讀取文件的一部分,比如最後50行(或者「tail -n 50 data.txt」),以及另一個頁面,它會定期調用該PHP腳本的ajax。

對於更多的幫助,你應該真的發佈你最相關的PHP代碼