樹莓派【Raspberry Pi-64位】3b+,Pi4J 2.0入門

一.前言:

前面的文章講解了樹莓派在centos7 arm64版本下的使用,用一款智能小車為例子,做了代碼實踐。

由于centos7不再維護,且Pi4J 1.x版本也因為WiringPi 的局限,Pi4J從1.x升級為2.x.所以本專欄的技術棧也將進行調整A.從centos7系統回到Raspberry Pi-64位系統。B.Pi4J版本從1.2升級為2.1.0

Pi4J版本1.x和 2.x版本實際上并不兼容,2.x版本不再依賴WiringPi,而是轉向使用PIGPIO庫。所以基于Pi4J2.x版本的項目不需要再安裝WiringPi。而且2.x版本支持的最低jdk版本為jdk11,所以需要升級jdk版本為jdk11以上。本文使用的仍然是jdk11,請不要使用jdk11以下的版本

代碼層面,Pi4J2.X從架構層進行了重構,去除了冗余和復雜的功能,使用了運行時上下文等上下文環境來抽象板子,針腳等,并使用了單例模式來初始化和銷毀運行時環境,提供了板子的運行周期概念,通過注冊機制進行針腳使用前注冊,用配置類做針腳注冊前的配置,簡化和規范了針腳使用。并設計了 監聽器模式 等進行針腳事件監聽,可以方便的對針腳的變化來做對應的響應。

基于上述架構設計層面,代碼層面2.x版本的調整,Pi4J2.X 和Pi4J1.X的代碼是完全不能通用的。也就是說,如果升級Pi4J到2.x版本之后,Pi4J1.X的原有代碼需要進行完整的重構!!!千萬不要隨便升級!Pi4J2.X可以說和Pi4J1.X是完全不相同的,不存在一點兼容性

那么為何本文還要進行介紹Pi4J2.X呢

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/24531.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/24531.shtml
英文地址,請注明出處:http://en.pswp.cn/web/24531.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

4.通用編程概念

目錄 一、變量與常量1.1 變量1.2 常量 二、遮蔽三、數據類型3.1 標量類型1. 整型2. 浮點型3. 布爾類型4.字符類型 3.2 復合類型1. 元組2. 數組 四、函數五、語句和表達式六、函數的返回值 一、變量與常量 1.1 變量 在Rust中默認的變量是不可變的,如果修改其值會導致…

《青少年編程與數學》課程方案:4、課程策略

《青少年編程與數學》課程方案:4、課程策略 一、工程師思維二、使命感驅動三、價值觀引領四、學習現代化五、工作生活化六、與時代共進 《青少年編程與數學》課程策略強調采用工程師思維,避免重復造輪子,培養使命感,通過探索興趣、…

編程語言有哪些?這些希望你都知道

編程語言有哪些 編程語言有很多種,包括但不限于以下幾種: Java:當今最普遍使用的開發語言之一,簡單易學,且跨平臺性非常強,對網絡開發的支持令人稱贊。Python:語法清楚,干凈&#…

【Vue】如何提供訪問vuex的數據

文章目錄 一、提供數據二、訪問Vuex中的數據通過$store訪問的語法1)模板中使用2)組件邏輯中使用3)js文件中使用 三、通過輔助函數 - mapState獲取 state中的數據 一、提供數據 State提供唯一的公共數據源,所有共享的數據都要統一…

[office] 快速刪除excel中的空行和列的方法 #其他#學習方法#經驗分享

快速刪除excel中的空行和列的方法 用戶在網上下載好的Excel表格打開之后發現有很多空白行,怎么樣將這些空白行或單元格一次性刪除掉呢?下面教大家在Excel中用定位一次性可以把空白行刪除 用戶在網上下載好的Excel表格打開之后發現有很多空白行,怎么樣將…

Vue3 使用audio播放語音+監聽播放語音完成事件

需求&#xff1a;輸入一段文字&#xff0c;點擊語音框&#xff0c;將本地語音&#xff08;提前準備好的&#xff09; 播放出來 播放中效果 代碼 <div class"listConAI" click"handleOpenSpeech" ><imgsrc"../../../../assets/images/blueo…

web前端 孫俏:深度探索與實戰之路

web前端 孫俏&#xff1a;深度探索與實戰之路 在這個數字化、信息化的時代&#xff0c;web前端技術以其獨特的魅力&#xff0c;吸引著越來越多的開發者投身其中。今天&#xff0c;我們將跟隨孫俏的腳步&#xff0c;一同探索web前端的深度與廣度&#xff0c;揭開其神秘的面紗。…

中文文案寫作有哪些合適的AIGC工具?

這是計育韜老師第 8 次開展面向全國高校的新媒體技術公益巡講活動了。而在每場講座尾聲&#xff0c;互動答疑環節往往反映了高校師生當前最普遍的運營困境&#xff0c;特此計老師在現場即興答疑之外&#xff0c;會盡量選擇有較高價值的提問進行文字答疑梳理。 *本輪巡講主題除了…

【Vue】開啟嚴格模式及Vuex的單項數據流

文章目錄 一、引出問題二、開啟嚴格模式 一、引出問題 目標 明確 vuex 同樣遵循單向數據流&#xff0c;組件中不能直接修改倉庫的數據 這樣數據的流向才會更加清晰&#xff0c;將來對數據的修改&#xff0c;都在倉庫內部實現的&#xff0c;更易于維護 直接在組件中修改Vuex中…

Git:版本控制的藝術與GitLab實戰指南

在當今快速發展的軟件開發領域&#xff0c;高效、協同的代碼管理是項目成功的關鍵。Git&#xff0c;作為一款分布式版本控制系統&#xff0c;憑借其強大的功能和靈活性&#xff0c;成為了眾多開發者首選的版本控制工具。本文將帶您深入探索Git的核心概念、基礎操作&#xff0c;…

B3870 [GESP202309 四級] 變長編碼

[GESP202309 四級] 變長編碼 題目描述 小明剛剛學習了三種整數編碼方式&#xff1a;原碼、反碼、補碼&#xff0c;并了解到計算機存儲整數通常使用補碼。但他總是覺得&#xff0c;生活中很少用到 2 31 ? 1 2^{31}-1 231?1 這么大的數&#xff0c;生活中常用的 0 ~ 100 0…

Spring進階技巧:利用AOP提前介入的巧妙實踐

Spring框架中的面向切面編程&#xff08;AOP&#xff09;是一種強大的機制&#xff0c;它允許開發者在不修改原有代碼的情況下&#xff0c;對程序進行橫向切面的功能擴展。AOP提供了一種方式&#xff0c;可以在目標Bean的生命周期早期階段就實施切面邏輯&#xff0c;這為我們在…

Python 中如何使用 lambda 函數

在 Python 中&#xff0c;可以使用 lambda 函數來創建匿名函數。lambda 函數的語法是&#xff1a;lambda 參數: 表達式。以下是一些使用 lambda 函數的例子&#xff1a; 通過 lambda 函數來計算兩個數的和&#xff1a; add lambda x, y: x y print(add(2, 3)) # 輸出 5通過…

Oracle 日志挖掘

oracle 11g 日志挖掘測試 需要開啟補充日志 alter database add supplemental log data; SELECT SUPPLEMENTAL_LOG_DATA_MIN, SUPPLEMENTAL_LOG_DATA_PK, SUPPLEMENTAL_LOG_DATA_UI FROM V$DATABASE;在用戶下執行一些刪除&#xff0c;插入等操作 SQL> create table zxy( …

LLM評測數據集

1. C-Eval 數據集源地址: C-Eval Official Repository 數據范圍: 該數據集包括學科類知識測試&#xff0c;涵蓋廣泛的學科知識&#xff0c;例如數學、物理、化學等。 數據集大小及數據形式: 數據集包含13,948道單選題&#xff0c;題目均為中文。 論文地址: C-Eval: A Multi-…

【一百一十】【算法分析與設計】[SDOI2009] HH的項鏈,樹狀數組應用,查詢區間的種類數,樹狀數組查詢區間種類數

P1972 [SDOI2009] HH的項鏈 [SDOI2009] HH的項鏈 題目描述 HH 有一串由各種漂亮的貝殼組成的項鏈。HH 相信不同的貝殼會帶來好運&#xff0c;所以每次散步完后&#xff0c;他都會隨意取出一段貝殼&#xff0c;思考它們所表達的含義。HH 不斷地收集新的貝殼&#xff0c;因此&am…

SMS - 基于阿里云實現手機短信驗證碼登錄(無需備案,非測試)

目錄 SMS 環境調試 從阿里云云市場中購買第三方短信服務 調試短信驗證碼功能 實戰開發 封裝組件 對外接口 調用演示 SMS 環境調試 從阿里云云市場中購買第三方短信服務 a&#xff09;進入阿里云首頁&#xff0c;然后從云市場中找到 “短信” &#xff08;一定要從 云…

如何實現網站HTTPS訪問

在當今網絡安全至關重要的時代&#xff0c;HTTPS已經成為網站安全的基本標準。HTTPS&#xff08;超文本傳輸安全協議&#xff09;通過在HTTP協議基礎上加入SSL加密層&#xff0c;確保了數據在用戶瀏覽器和服務器之間的傳輸是加密的&#xff0c;有效防止數據被竊取或篡改&#x…

calico node一直not ready

背景 我司某個大數據集群在做完添加到集群聯邦管理后&#xff0c;該集群的calico-node全部處于not ready 狀態&#xff0c;導致集群中節點之前的跨節點容器網絡不通。 操作 將大數據所在的k8s集群添加到集群聯邦的控制平面后&#xff0c;我們為了做各個子集群之間的容器網絡…

換熱器設計參數的選用

1 換熱管類型 光管&#xff1a;適用于任何條件&#xff1b;應用面廣 螺紋管&#xff1a;殼程流體的膜傳熱系數相當于管程傳熱系數1/3~3/5的場合&#xff1b;強化殼程傳熱系數&#xff0c;提高總傳熱系數&#xff1b;結垢速率低&#xff0c;結垢周期長。 波紋管&#xff1a;管…