2012-04-21 68 views
3

我有興趣編寫一個應用程序發送消息通過IP(使用3G,而不是在與接收端相同的WiFi網絡必然發送)到連接到路由器的PIC微控制器(通過以太網或WiFi )Iphone來控制PIC微控制器

我看到了一些關於如何在同一網絡上發送消息的描述和示例,不確定是否僅僅通過給出不同的IP就可以在網絡之外自行工作。我想知道PIC如何接收(仍然沒有確定哪個PIC,取決於執行此操作的可能性),並且依次取決於接收到的msg,PIC將執行一個操作,例如,光LED陣列中的某個LED。

我有發送端(通過IP發送應用程序)和接收端(PIC點亮LED) 我只是不太確定要發送什麼,或者如果這樣的「翻譯」甚至是可能的。

我搜索了網頁,但找不到任何這樣的東西,除了製作成套件(例如用於遙控車) 謝謝。 Carmel

+0

什麼是在PIC中運行?我有工作代碼發送和接收UDP數據包跨平臺到/從iPhone到網絡上的任何東西 - 會有幫助嗎? – shein 2012-04-22 06:49:57

+0

是的,這聽起來像我以後。我雖然使用Adruino,它能夠通過以太網接收UDP數據包 – 2012-04-22 07:09:10

+0

在答案中發佈了鏈接。讓我知道你是否需要更具體的東西 – shein 2012-04-22 14:20:59

回答

1

下面是我爲Mac/iOS構建的UDP庫,包裝在簡單的Cocoa中,它將UDP數據包發送到您選擇的IP地址。附帶示例服務器客戶端應用程序。

這是通用的UDP數據包,因此您只需在另一端(無論該平臺是什麼)監聽它們並閱讀內容。讓我知道你是否需要幫助

https://github.com/Shein/Mac-UDP-Client-Server

+0

我正在考慮使用adruino。它可以接收UDP數據包。我想可能使用OCS發送指令等。我不太確定如何使用UDP等,當iphone不在同一個無線網絡(即在你家之外)時,它可以發送到特定的地址嗎? – 2012-04-22 22:44:29

+0

UDP是客戶端 - 服務器通信協議。因此,通常情況下,您需要將一端用作具有可從Web訪問的靜態IP地址的服務器,並且客戶端可以從世界上的任何地方連接到該服務器併發送/接收數據包。 所以 - iPhone不需要在同一個網絡,建築物或國家。但是 - 你需要通過網絡訪問arduino,並擁有一個靜態IP,您應該可以通過路由器進行配置 – shein 2012-04-23 02:51:39

1

那麼,如果PIC可以運行一個TCP服務器,或者可能只是UDP,那麼一定要通過發送適當的消息來控制LED。使用適當的靜態IP地址和路由,您就可以使用iPhone在任何可以連接的地方打開LED。

PIC並不完全因具有高性能和大量RAM而聞名。如果你設法讓服務器工作,儘量不要使用XML/SOAP

1

這看起來更像是一個http://electronics.stackexchange.com的問題。

如果您熟悉SPI你可以考慮Microchip的MRF24WB0MA/RM模塊, 使PIC連接到無線網絡(無論是基礎設施的無線或 到的AdHoc,也可以創建自己的AdHoc)。

如果您使用的是MCC編譯器,那麼您也可以使用此模塊的庫 在Microchip Application Libraries

雖然TCP堆棧佔用一些內存空間。 PIC18F可以做,但是你會更適合用PIC24F(反正他們往往比18F便宜)。