2015-12-27 74 views
1

我正在用Raspberry Pi和Arduino製作家庭自動化系統。我正在用一些按鈕和指示器在主機上託管一個簡單的HTML網站。我已經通過UART(Tx,Rx)將Arduino連接到PI,並且我可以使用命令echo [data] > ttyAMA0向Arduino發送一個字節/字符串。現在
我想問一下如何可以從網站郫縣的終端上執行命令 - 讓我按我想發出一個命令echo A1 > ttyAMA0到Arduino的按鈕中的一個說。如何從網站運行樹莓派終端命令?

+0

使用一些腳本? – MikeCAT

+0

你的問題有點不清楚。我的回答適合我理解它的兩種方式。你的Raspberry Pi如何運行一個web服務器(哪一個?) –

+0

另外,Pi使用nginx或apache?我假設Apache來承載的HTML。 到目前爲止一個很好的開始,但是您打算使用網頁作爲主界面讓所有用戶從您的wifi內進行訪問? – camdixon

回答

1

你可以使你的程序專用的Web服務器(你並不總是需要在樹莓派安裝像Apache或Lighttpd的通用Web服務器程序)。

特別是,您可以編寫自己的C程序,並使用其中的libonion HTTP Web服務器庫。這libonion有examples/oterm/子目錄做的正是你想要的(給予一定的Web界面,使用HTML5 AJAX &與techniques-外殼提供終端 - 可見光在瀏覽器中)。你可以用一些網絡處理器做一些IO(與fprintf & fflush)到您的Arduino板編寫你的libonion程序。但要注意安全問題。

此外,Web服務器可以使用CGIFastCGI技術來運行外部程序。如果運行通用的Apache或Ligghtd,您可以明智地配置它以啓用和使用CGI或FastCGI程序。