曰本美女∴一区二区特级A级黄色大片, 国产亚洲精品美女久久久久久2025, 页岩实心砖-高密市宏伟建材有限公司, 午夜小视频在线观看欧美日韩手机在线,国产人妻奶水一区二区,国产玉足,妺妺窝人体色WWW网站孕妇,色综合天天综合网中文伊,成人在线麻豆网观看

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

我只會(huì)Java,憑什么不能玩轉(zhuǎn)樹莓派?GPIO操控竟比C++更優(yōu)雅~

上海晶珩電子科技有限公司 ? 2025-03-25 09:21 ? 次閱讀

導(dǎo)語

當(dāng)全球開發(fā)者默認(rèn)將Python視為樹莓派的"母語"時(shí),一個(gè)顛覆認(rèn)知的工具鏈正在Java開發(fā)者群體中口口相傳——Pi4J讓Java代碼直接操控GPIO、I2C、SPI等硬件接口,而JBang更將開發(fā)門檻壓到不可思議的"單文件即運(yùn)行",方便易用程度堪比Python腳本。

從2012年與初代樹莓派同步誕生,到如今擁抱Java 21甚至劍指JEP 454黑科技。當(dāng)Java的跨平臺基因注入電子元件,當(dāng)主流嵌入式開發(fā)框架集體轉(zhuǎn)身LTS版本之爭,一場屬于JVM的硬件革命正悄然改寫開發(fā)者的工具鏈認(rèn)知...

Pi4J的歷史

Pi4J 項(xiàng)目于2012 年啟動(dòng),同年推出 Raspberry Pi,作為一種工具,為 Java 開發(fā)人員提供一個(gè)簡單、熟悉的面向?qū)ο蠼涌趲?,以訪問 Raspberry Pi 的低級 I/O 功能,包括GPIO、I2C、 SPI、PWM和串行通信。

項(xiàng)目使命/目標(biāo)

Pi4J 項(xiàng)目的使命是提供一個(gè)豐富、強(qiáng)大但使用簡單、Java 友好的 API 庫,實(shí)現(xiàn)對 Raspberry Pi 等嵌入式平臺的低級硬件 I/O 功能進(jìn)行編程訪問。

7d3bb00c-0917-11f0-9434-92fbcf53809c.png

項(xiàng)目狀態(tài)

隨著整個(gè) Java 生態(tài)系統(tǒng)和 Raspberry Pi 系統(tǒng)的發(fā)展,Pi4j 項(xiàng)目這些年來也在不斷發(fā)展。

由此產(chǎn)生了以下主要版本:

- 版本1.X:已棄用,基于 Java 8,更高版本是 Java 11。

https://www.pi4j.com/about/info-v1/

- 版本2.XX:基于 Java 11,完全重新設(shè)計(jì)的代碼庫。

https://www.pi4j.com/about/info-v2/

- 版本 3.XX:基于最新的V2和Java 21。

https://www.pi4j.com/about/info-v3/

2025-02-11 核心作者:Frank Delporte在他的Blog中提到

Pi4J 庫的開發(fā)面臨一個(gè)決策點(diǎn)……:“我們是否應(yīng)該在現(xiàn)有項(xiàng)目和舊 Raspberry Pi 上堅(jiān)持使用 Java 11(使用 ARMv6),還是繼續(xù)使用最新長期支持 (LTS) 版本中更好、性能更高的 Java 代碼? “

我們實(shí)際上想轉(zhuǎn)向 Java 22,因?yàn)樗鼛砹艘环N與 C 代碼交互的新方式,這要?dú)w功于JEP 454:外部函數(shù)和內(nèi)存 API。由于這是 Pi4J 與 GPIO 交互的核心行為,因此可以更輕松地實(shí)現(xiàn)控制電子設(shè)備的新方法,這一點(diǎn)已得到證實(shí)第一個(gè)測試由 Robert “Eitch” 完成。但由于 Java 22 不是 LTS 版本,我們暫時(shí)不會(huì)采取此舉措。

我們詢問我們的用戶我們應(yīng)該使用哪個(gè)最小 Java 版本,但正如預(yù)期的那樣,沒有一個(gè)明確的答案 ;-) 因此,我們與核心團(tuán)隊(duì)一起做出了一些決定,這些決定使我們能夠?qū)㈨?xiàng)目提升到“下一個(gè)水平”并且...... Java 21!。

- 我們將 Pi4J V2+ 的源代碼存儲庫重命名為pi4j-v2因?yàn)閜i4j它包含所有 V2 以及未來 V3、V4……版本的源代碼。

- 未來版本(V3 及更新版本)支持的最低 Java 版本為 21。

開始上手

想要在 Raspberry Pi 上開始 Java 編程嗎?

JBang 是創(chuàng)建第一個(gè)程序來控制連接到 GPIO 引腳的電子元件的絕佳方式。

GITHUB 項(xiàng)目:github.com/Pi4J/pi4j-jbang

JBang 是什么?

JBang 讓學(xué)生、教育工作者和專業(yè)開發(fā)人員能夠以前所未有的輕松方式創(chuàng)建、編輯和運(yùn)行獨(dú)立的 Java 程序。

想要無需設(shè)置即可立即學(xué)習(xí)、探索或使用 Java 嗎?

您是否喜歡 Java,但使用 python、groovy、kotlin 或類似語言進(jìn)行腳本、實(shí)驗(yàn)和探索?

您是否曾經(jīng)想過無需任何設(shè)置或只需極少的設(shè)置就能在任何地方運(yùn)行 Java?

是否曾嘗試過 Java 11+ 支持直接在 shell 中運(yùn)行 .java 文件,但覺得有點(diǎn)太麻煩?

JBang 讓您做到這一切!

在 Raspberry Pi 上開始使用 JBang

1.先決條件

- 帶有最新 Raspberry Pi OS 的 Raspberry Pi。

- 按照說明安裝 JBangjbang.dev/下載. 如果尚未安裝 Java,JBang 將安裝它。

https://www.jbang.dev/download/

#Install JBang$ curl -Ls https://sh.jbang.dev | bash -s - app setup#Check JBang by requesting its version$ jbang --version 0.109.0

- 可選:使用Visual Studio 代碼,免費(fèi)的 IDE。

https://code.visualstudio.com/

# Install Visual Studio Code$ sudo apt install code

- 可選:在 Visual Studio Code 中安裝以下擴(kuò)展:

- Language Support for Java(TM) by Red Hat

- JBang

https://marketplace.visualstudio.com/items?itemName=redhat.java

https://marketplace.visualstudio.com/items?itemName=jbangdev.jbang-vscode

2.示例腳本

GitHub 上的 Pi4J JBang 項(xiàng)目包含幾個(gè)示例來演示 JBang 和 Pi4J。每個(gè)java文件都是一個(gè)完整的可運(yùn)行 JBang 應(yīng)用程序。這意味著您不需要 Maven、Gradle 或其他 Java 構(gòu)建工具。

https://github.com/Pi4J/pi4j-jbang

為了告訴 JBang 必須將該文件作為 Java 應(yīng)用程序處理并做一些前期準(zhǔn)備工作,每個(gè)文件的第一行是:///usr/bin/env jbang "$0" "$@" ; exit $?。

當(dāng)應(yīng)用程序需要依賴項(xiàng)時(shí),它們在文件本身中以以下行開頭進(jìn)行定義://DEPS。例如,要使用 Pi4J Core 庫://DEPS com.pi4j2.3.0。

每個(gè)提供的示例都包含有關(guān)文件本身內(nèi)部接線的更多信息,并且也在 Pi4J 網(wǎng)站上進(jìn)行了解釋。

3.從 GitHub 獲取示例

您可以使用以下命令在終端中將包含示例的項(xiàng)目克隆到您的 Raspberry Pi:

$gitclonehttps://github.com/Pi4J/pi4j-jbang$cdpi4j-jbang

GitHub 項(xiàng)目中的示例有:

- 最小示例

https://www.pi4j.com/examples/jbang/jbang_minimal_example/

- 8x8 LED 矩陣

https://www.pi4j.com/examples/jbang/jbang_pi4j_spi_led_matrix/

- BME280 傳感器

https://www.pi4j.com/examples/jbang/bme280_temperature_humidity_pressure/

- Pixelblaze 輸出擴(kuò)展器

https://www.pi4j.com/examples/jbang/pixelblaze_output_expander/

- 控制 LED 矩陣

https://www.pi4j.com/examples/jbang/pixelblaze_output_expander_image/

- 帶有 JavaFX UI 的 LED 燈帶

https://www.pi4j.com/examples/jbang/pixelblaze_output_expander_javafx/

使用 JBang,我們可以擁有一個(gè)可以執(zhí)行的單源 Java 文件,而無需完整的 Maven 或 Gradle 項(xiàng)目。我們甚至不需要編譯任何東西!

JBang 是一種簡單運(yùn)行 Java 文件的好方法,可以幫助您在 Raspberry Pi 上快速開始使用 Pi4J,并且可以成為嘗試電子產(chǎn)品和 Java 的理想入門方法。

結(jié)語

當(dāng)腳本語言的便捷遇上Java的類型安全,當(dāng)傳統(tǒng)嵌入式語言的控制力碰撞JVM的生態(tài)紅利,這場工具鏈的范式轉(zhuǎn)移究竟會(huì)走向何方?

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • JAVA
    +關(guān)注

    關(guān)注

    20

    文章

    2983

    瀏覽量

    106618
  • GPIO
    +關(guān)注

    關(guān)注

    16

    文章

    1246

    瀏覽量

    53381
  • 樹莓派
    +關(guān)注

    關(guān)注

    120

    文章

    1914

    瀏覽量

    106784
收藏 人收藏

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    樹莓電腦能玩網(wǎng)游嗎?

    其實(shí)接觸之初就想問了。樹莓電腦連接七寸屏能玩網(wǎng)游嗎?比如說什么QQ自由幻想。LOL什么的。
    發(fā)表于 09-09 17:41

    樹莓pico入門學(xué)習(xí)筆記(一)相關(guān)資料推薦

    樹莓pico入門學(xué)習(xí)筆記選擇自己熟悉的編程語言樹莓pico提供C/C++和micropyth
    發(fā)表于 07-01 09:28

    如何快速使用C/C++開發(fā)樹莓GPIO功能

    1.前言借助Bcm2835庫可以快速使用C/C++開發(fā)樹莓GPIO功能,像玩單片機(jī)一樣玩樹莓
    發(fā)表于 02-08 07:15

    怎樣去解決RK3588 GPIO的開發(fā)問題呢

      問題描述及復(fù)現(xiàn)步驟:gpio開發(fā),沒有找到教程中的頭文件rockchip.h,以及/rk3588-firefly-demo.dtsi  個(gè)人 只用過樹莓,
    發(fā)表于 09-13 17:18

    樹莓gpio應(yīng)用

    樹莓現(xiàn)在越來越火,網(wǎng)上樹莓的資料也越來越多。樹莓源自英國,國外嵌入式開源領(lǐng)域具有良好的分享
    發(fā)表于 11-09 15:10 ?4297次閱讀

    樹莓gpio接口及編程方法

    樹莓現(xiàn)在越來越火,網(wǎng)上樹莓的資料也越來越多。樹莓源自英國,國外嵌入式開源領(lǐng)域具有良好的分享
    發(fā)表于 11-22 11:54 ?6.6w次閱讀

    如何玩轉(zhuǎn)樹莓

    技術(shù)大拿帶你玩轉(zhuǎn)樹莓,聊聊樹莓的那些事!
    的頭像 發(fā)表于 05-30 15:03 ?3823次閱讀
    如何<b class='flag-5'>玩轉(zhuǎn)</b><b class='flag-5'>樹莓</b><b class='flag-5'>派</b>

    樹莓是什么樹莓的簡單介紹

    要想玩轉(zhuǎn)樹莓,首先得知道樹莓是什么。在本節(jié)中,作者將帶領(lǐng)大家揭開樹莓
    發(fā)表于 05-15 18:09 ?30次下載
    <b class='flag-5'>樹莓</b><b class='flag-5'>派</b>是什么<b class='flag-5'>樹莓</b><b class='flag-5'>派</b>的簡單介紹

    樹莓使用C/C++基于Bcm2835操作GPIO學(xué)習(xí)記錄

    1.前言借助Bcm2835庫可以快速使用C/C++開發(fā)樹莓GPIO功能,像玩單片機(jī)一樣玩樹莓
    發(fā)表于 12-04 18:51 ?8次下載
    <b class='flag-5'>樹莓</b><b class='flag-5'>派</b>使用<b class='flag-5'>C</b>/<b class='flag-5'>C++</b>基于Bcm2835操作<b class='flag-5'>GPIO</b>學(xué)習(xí)記錄

    樹莓pico入門學(xué)習(xí)筆記(一)

    樹莓pico入門學(xué)習(xí)筆記選擇自己熟悉的編程語言樹莓pico提供C/C++和micropyth
    發(fā)表于 12-17 18:42 ?21次下載
    <b class='flag-5'>樹莓</b><b class='flag-5'>派</b>pico入門學(xué)習(xí)筆記(一)

    用網(wǎng)頁控制樹莓GPIO引腳

    電子發(fā)燒友網(wǎng)站提供《用網(wǎng)頁控制樹莓GPIO引腳.zip》資料免費(fèi)下載
    發(fā)表于 11-16 14:57 ?1次下載
    用網(wǎng)頁控制<b class='flag-5'>樹莓</b><b class='flag-5'>派</b>的<b class='flag-5'>GPIO</b>引腳

    超實(shí)用!玩轉(zhuǎn)樹莓攻略!

    如果你使用樹莓派來開發(fā)的話,C語言或者Python語言都是一個(gè)比較不錯(cuò)的選擇。在開始玩轉(zhuǎn)你的樹莓前,可以先看看如何快速入門; Raspbe
    的頭像 發(fā)表于 11-01 20:30 ?2717次閱讀
    超實(shí)用!<b class='flag-5'>玩轉(zhuǎn)</b><b class='flag-5'>樹莓</b><b class='flag-5'>派</b>攻略!

    樹莓和單片機(jī)的優(yōu)缺點(diǎn)是什么

    )接口,樹莓可以連接各種傳感器、執(zhí)行器和其他外圍設(shè)備。 易于編程 :樹莓支持多種編程語言,如Python、C++
    的頭像 發(fā)表于 08-30 18:21 ?2476次閱讀

    樹莓gpio有什么用,樹莓gpio接口及編程方法

    一、樹莓GPIO的用途 樹莓(Raspberry Pi)是一款小巧、功能強(qiáng)大的單板計(jì)算機(jī),廣泛應(yīng)用于編程教育、物聯(lián)網(wǎng)項(xiàng)目、家庭媒體中心等
    的頭像 發(fā)表于 10-22 18:09 ?2212次閱讀

    GPIO樹莓中的應(yīng)用

    樹莓(Raspberry Pi)是一款由英國樹莓基金會(huì)開發(fā)的信用卡大小的單板計(jì)算機(jī),它具有強(qiáng)大的功能和靈活性,可以用于各種項(xiàng)目和應(yīng)用。通用輸入輸出(
    的頭像 發(fā)表于 01-09 09:41 ?608次閱讀