樹莓派Java開發-pi4j-包講解-底層相關

版本:Parent POM 1.2 API

本文主要講解底層相關的幾個包。com.pi4j.jni                     com.pi4j.platform       com.pi4j.system            com.pi4j.system.impl

其他包講解待續

com.pi4j.jni	                  // 提供了本地方法庫的相關的映射方法。包括針腳模擬量,串行中斷事件相關的監視器,事件監聽器,監聽器數據接收事件類等
com.pi4j.platform	     //平臺包 
com.pi4j.system	         //提供了硬件平臺,操作系統,網絡等的系統信息
com.pi4j.system.impl	 //包括橙派,小小熊派等其他類型的系統實現持有者類
com.pi4j.temperature	 (待續)
com.pi4j.util	 
com.pi4j.wiringpi
com.pi4j.concurrent

com.pi4j.io.file	 
com.pi4j.io.gpio	 
com.pi4j.io.gpio.event	 
com.pi4j.io.gpio.exception	 
com.pi4j.io.gpio.impl	 
com.pi4j.io.gpio.tasks.impl	 
com.pi4j.io.gpio.trigger	 
com.pi4j.io.i2c	 
com.pi4j.io.i2c.impl	 
com.pi4j.io.serial	 
com.pi4j.io.serial.impl	 
com.pi4j.io.serial.tasks	 
com.pi4j.io.spi	 
com.pi4j.io.spi.impl	 
com.pi4j.io.w1	http://lxr.free-electrons.com/source/drivers/w1/slaves/w1_therm.c 
                http://lxr.free-electrons.com/source/drivers/w1/w1_family.h
com.pi4j.io.wdt	 
com.pi4j.io.wdt.impl	 

一.本地方法包

原理裝備: A 。監聽器模式 B。監視器模式  

附: 1. 監視器模式  https://blog.csdn.net/jdbdh/article/details/81873026                             https://blog.csdn.net/u013547284/article/details/78224489

      2. 監聽器模式  https://www.cnblogs.com/jenkov/p/listener_in_java.html

    

com.pi4j.jni	

接口 列表

1。AnalogInputListener  模擬輸入量的監聽器類,當GPIO針腳的模擬信號量變化的時候,觸發相應的觸發器類。

2. SerialInterruptListener 串行中斷偵聽器。用來接收串行中斷數據,當事件發生時,會觸發串行中斷數據事件。這個監聽器

類列表:

1.AnalogInputEvent  模擬量輸入數據事件。當gpio的針腳發生模擬數據量變化的時候,觸發該類。

類繼承關係
java.lang.Object
    java.util.EventObject
        com.pi4j.jni.AnalogInputEvent
類的實現接口
Serializable

2. AnalogInputMonitor 模擬量輸入監視器。監聽gpio陣腳的輸入情況。該類提供了 一個靜態方法,與pi4j的本地方法庫對接,pi4j的本地方法庫回掉,以便實現監視GPIO端口的模擬輸入量變化。

3. Serial 這是一個當前沒有實現的存檔。這是計劃新的串行庫實現的地方。

4. SerialInterrupt 提供了一個靜態方法,與pi4j的本地方法庫對接,pi4j的本地方法庫回掉,以便實現監聽GPIO端口的串行中斷

5. SerialInterruptEvent 這個類爲串行中端的數據接收事件

6. WDT 警報顯示終端。包含打開文件,關閉,設置超時,端口連通性命令ping命令的方法。

筆者注:詳細源碼閱讀,請詳細瞭解監聽器模式與監視器模式(monitor)

二。com.pi4j.platform  平臺包

本包下是對平臺的對象化。這裏說的平臺,是硬件平臺。例如樹莓派算平臺中的一個(默認)。還有類似樹莓派的橙派,小熊派等

本包下無接口。

包下的類:PlatformManager 平臺管理器類

這個類提供了一個靜態方法,來配置Pi4J本地庫的默認平臺。

枚舉:Platform  平臺類型的枚舉類。提供了pi4j支持的多個平臺

異常:PlatformAlreadyAssignedException  平臺已分配平臺實例異常

如果在已分配平臺實例的情況下嘗試進行平臺分配,則會引發此異常。

三。系統包  system      

該包下的方法提供了操作系統相關的信息

接口列表:  SystemInfoProvider  系統信息提供者接口  

 該接口提供了 操作系統相關的信息

類列表:1.NetworkInfo  網絡信息

               2. NetworkInterface 網絡實例。可以通過該獲取網絡實例,並獲取當前網絡相關狀態及信息。(只含獲取,不含操作)

               3. SystemInfo 操作系統信息 。包含獲取硬件架構信息,操作系統信息,cpu信息,時鐘信息,java虛擬機信息等

               4.SystemInfoFactory 系統信息的工廠類。通過該類提供的靜態方法,可以創建控制GPIO的類-GpioController的實例

枚舉類:SystemInfo.BoardType  提供了板子的類型,例如樹莓派 3B+  3A 等型號的類型。

四。com.pi4j.system.impl 系統實現包

該包下包含有各個系統類型提供者(如橙派,小熊派等)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章