樹莓派如何便捷的使用pi4j


問題的由來

pi4j用起來很方便,但是感覺pi4j庫的命名太雜亂,啰嗦了,很容易弄混,而且好像沒聽說官方有自己的編譯器。如果沒有智能點的編輯器的話,寫起來真要命,但是樹莓派運行Eclipse不太現實,於是我想到了在Windows下編寫代碼,再將項目文件傳輸到樹莓派,在樹莓派上編譯,運行。

使用Eclips會很方便:一些快捷鍵用起來寫代碼刷刷的,最常用的就是

                                 alt+   /             智能提示,補全
                                 ctrl+shift + o    自動管理 import

 

我們的操作流程就是:在windows下用Eclipse編寫代碼,使用WinScp復制代碼文件到樹莓派,編譯運行。

 

 

WinScp

我們先安裝WinScp,它是什么作用呢?WinScp提供了圖形化的操作界面,通過拖拽文件。達到linux和windows雙向發送文件的功能,很方便。

具體下載安裝就不必說了哇~!

 

 

在Windows下使用Eclipse編寫pi4j項目

首先你要有台安裝了Eclipse 的電腦,要在Windows下使用pi4j,就必須在Eclipse的項目中導入pi4j庫的jar文件。具體操作如下

一、使用WinScp連接樹莓派

打開WinScp,輸入你的樹莓派的IP(可通過路由器查看),賬戶和密碼,即可連接。如果連接不上多嘗試幾遍,老連不上,請確保樹莓派配置中允許了SSH

 

            

 

 

將樹莓派的/opt/pi4j/lib下的所有的jar文件拖拽到Windows 的某個文件夾下。我放在java的工作文件夾workspace下的pi4j_jars文件夾下。

 

 

 

 

新建一個Eclipse的java項目,我命名為pi4jDemo。

右擊工程名pi4jDemo.選擇最后一項:Properties  ->java build path  -> Libraries  ->Add External jas 
 
然后進入我們剛剛新建 的 pi4j_jars文件夾下,全選里面的jar文件,OK
這樣就完成了pi4j的jar的關聯。

 

下面開始寫代碼啰~~~

 

提示:經常寫java的都會習慣性的建包,再新建一個類。不要建包名,使用默認(default)包就好了,因為代碼是在Windows下編寫的,樹莓派那邊不會形成包目錄,而且一般pi4j項目單個文件就可以搞定了。

效果圖:

 

 

 

小燈閃爍的例子代碼

import com.pi4j.io.gpio.GpioController;
import com.pi4j.io.gpio.GpioFactory;
import com.pi4j.io.gpio.GpioPinDigitalOutput;
import com.pi4j.io.gpio.PinState;
import com.pi4j.io.gpio.RaspiPin;

public class LEDBlink
{
    //獲取全局Gpio 引腳控制器對象
    public static final GpioController gpio = GpioFactory.getInstance();
    
    public static void main(String [] rags) throws InterruptedException
    {
        
        //定義編號為0的引腳為數字輸出引腳,初始化為低電平
        GpioPinDigitalOutput myLed = gpio.provisionDigitalOutputPin(RaspiPin.GPIO_00, "" ,PinState.LOW);
        
        while(true)
        {
            
            myLed.high();
            Thread.sleep(500);
            myLed.low();
            Thread.sleep(500);
            
        }
    
    }
    
}

 

 

 

 

將代碼源文件復制到樹莓派下,編譯運行

 

 

 

回到樹莓派,編譯運行

編譯:           javac -classpath .:classes:/opt/pi4j/lib/'*'  LEDBlink.java
運行 :  sudo java -classpath .:classes:/opt/pi4j/lib/'*'  LEDBlink

 

 

大功告成!

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM