說起「自動控制」的電腦語言,大家應該不約而同地會想到「組合語言」、「C 語言」。彷彿不學習這些語言,好像就跟自動控制無緣一樣。倘若您只學過 Java 呢?是不是就該流口水看著別人用 C 語言控制 Raspberry Pi 的外部硬體呢?
如果您想用 Java 控制連接在 Raspberry Pi 上的硬體,如 LED 燈、按鈕、甚至於整部自走車,推薦您使用 Pi4J 這個函式庫!這個函式庫提供 Java 程式設計師,簡單操控 GPIO 腳位。所謂 GPIO,是 General Purpose Input/Output 的縮寫。是 CPU 故意保留未用,特別拉出來讓軟體工程師用程式控制它輸出高低電位,或者讀取外界硬體目前處於高或低電位的一些針腳。想用軟體控制外部電路就全靠它們了!下圖可以看見把 Raspberry Pi GPIO 腳位拉到麵包板上,控制外部電路的樣子:
圖:Raspberry Pi 用 GPIO 控制外部電路的樣子
(圖片來源:http://kiwi.psnc.pl)
Pi4J 的官網在這裡。您可以到官網下載函式庫,參考安裝方法之後即可使用。以下幫大家列出幾個範例程式:
- 控制 GPIO 腳位輸出高電位或是低電位(GPIO Output Control)
- 透過 GPIO,取得外部電路高低電位的方法:使用 Java Listener(GPIO Input Control)
- 透過 GPIO,取得外部電路高低電位的方法:使用 Trigger(GPIO Input Control)
- 在程式結束前,把 GPIO 關閉,還原成原來的狀態
- 透過 RS-232 序列線與外界通訊
- 取得硬體、作業系統、JavaVM、網路等基本資訊
如何?這樣有心動了嗎?在 Raspberry Pi 寫 Java 程式是不是比在桌機上好玩呢?想買一片的話,參考一下這個網頁吧!
請問Pi連到麵包板上的那個是什麼東東呀?
回覆刪除在哪裡可以買得到,我也想買一個來玩玩看~
那個就只是簡單的排線接頭,做得比較精緻而已。直接從 Raspberry Pi 上面買便宜的電線引出來也是有一樣的效果。
刪除作者已經移除這則留言。
回覆刪除請問怎在Raspberry Pi 寫C,有比較完整的參考網站嗎?
回覆刪除您好:
刪除您可參考下列網站:
http://www.a2p.it/wordpress/tech-stuff/development/cross-compilation-in-cygwin-for-the-raspberry-pi-configure-and-cmake/
http://www.a2p.it/wordpress/tech-stuff/development/raspberry-pi-windows-cygwin-cross-compilation-toolchain/
http://www.raspberrypi.org/phpBB3/viewtopic.php?f=33&t=18721
http://www.raspberrypi.org/phpBB3/viewtopic.php?f=33&t=26900
http://think-bowl.com/raspberry-pi/setup-a-project-in-netbeans-for-programming-on-the-raspberry-pi/
其中有用 GNU C Compiler 的,有用 Eclipse 的,有用 NetBenas IDE 的。您選您趁手習慣的環境看即可。