99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

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

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

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

用Python完成鴻蒙開發(fā)板外設控制

OpenHarmony技術社區(qū) ? 來源:鴻蒙技術社區(qū) ? 作者:唐佐林 ? 2021-09-28 09:22 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

話說很久以前,我將 MicroPython 的解釋器給“挖”了出來,然后做了適配,成功運行于鴻蒙設備(Hi3861)之上。

詳見前一篇帖子:《使用 Python 開發(fā)鴻蒙設備程序(0-初體驗)》

然而,這在本質(zhì)上也就只是一件裝酷的事,除了寫個 Hello World 體驗資源受限設備上的 Python 語言程序設計之外,基本一無是處。..。..

為了實現(xiàn)最初的夢想:通過 Python 降低鴻蒙設備開發(fā)的門檻。最近我又開始躁動起來,大刀闊斧的在之前工作的基礎上做了 Python SDK 的設計和開發(fā)。終于,現(xiàn)在可以直接用 Python 來控制鴻蒙開發(fā)板外設了。

我之前的帖子《《《鴻蒙開發(fā)板外設控制》》直播圖文版(2020.10.28)》中涉及的案例都可以用 Python 完成!

大家看完這篇帖子后,可以嘗試使用 C 和 Python 來實現(xiàn)相同的功能,體會一下不同。

OK!我們進入正題,直接上 Python 代碼學習!

在這里給大家做一點點概念上的科普,幫助大家更好的理解代碼。GPIO(General Purpose Input/Output)即:通用型輸入輸出的簡稱。

其物理表現(xiàn)形式為:可接收或輸出電信號的引腳,使用者可根據(jù)需要將其作為輸入(GPI)或輸出(GPO)使用。并且, 一般情況下,開發(fā)板上都有多個 GPIO 引腳供使用。

當 GPIO 作為輸出使用時,輸出的電信號為高電平(1)或者低電平(0),因此,只要在電路上稍加設計就可以接入外設(如:LED 燈,電動機,等),并通過程序控制外設的狀態(tài)。

有了這些概念之后,上面的示例的代碼理解起來就簡單了!無非就是將 LED 燈(一種外設)接入第 7 號 GPIO 引腳,并通過程序設置第 7 號引腳輸出高電平,點亮 LED 燈。

如果只是單純的通過代碼點亮一個 LED 燈,是真的不難,但也是真的挺無聊。所以,再給大家一個稍微復雜一點的示例:通過開關控制 LED 燈的狀態(tài)。

“Show me the code!”

這個示例看起來挺嚇人的,比上一個示例復雜了一些。然而,本質(zhì)卻依舊是 GPIO 外設控制。

在硬件連接上,第 11 號 GPIO 引腳接入了一個按鍵,其目的是接收按鍵的信號,既然是接收信號那么顯然 GPIO 基本功能應該設置為“輸入”(與連接 LED 的第 7 號 GPIO 基本功能設置相反)。

并且,將初始狀態(tài)設置為高電平(pull up)態(tài),當引腳電平從高電平轉(zhuǎn)為低電平(按鍵被按下)時觸發(fā)中斷。

最后,設置中斷觸發(fā)后調(diào)用的函數(shù)為 button_callback,當這個函數(shù)被調(diào)用時會通過 GPIO_7 改變外接 LED 燈的狀態(tài)。

整個過程如下圖所示:

相信大家已經(jīng)迫不及待想要動手實戰(zhàn),體驗一下 Python 操作外設的快感了。

OK!方法如下:

下載附件中的 libdtpython.a 并存儲到 /code/vendor/hisi/hi3861/hi3861/build/libs。

編寫 Python 代碼并使用工具 Txt2CStr.exe 轉(zhuǎn)換為 C 數(shù)組。

將轉(zhuǎn)換后的代碼加入附件中的 demo 工程中編譯并執(zhí)行。

注意:

由于在 Python 中提供了 i2c 相關接口,因此,需要改動文件 user_config.mk

路徑:/code/vendor/hisi/hi3861/hi3861/build/config/usr_config.mk

配置:CONFIG_I2C_SUPPORT=y

代碼已經(jīng)開源,記得給個星星哦!

https://gitee.com/delphi-tang/python-for-hos

責任編輯:haq

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

    關注

    37

    文章

    7143

    瀏覽量

    125560
  • python
    +關注

    關注

    56

    文章

    4827

    瀏覽量

    86700
  • 鴻蒙系統(tǒng)

    關注

    183

    文章

    2642

    瀏覽量

    68076

原文標題:用Python控制鴻蒙開發(fā)板,YYDS!

文章出處:【微信號:gh_834c4b3d87fe,微信公眾號:OpenHarmony技術社區(qū)】歡迎添加關注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    嘗鮮開源鴻蒙6.0?試試明星開發(fā)板Purple Pi OH

    6月19日,開源鴻蒙官方發(fā)布了OpenHarmony6.0Beta1版本,觸覺智能緊隨其后,率先在PurplePiOH開發(fā)板進行適配
    的頭像 發(fā)表于 07-11 18:42 ?240次閱讀
    嘗鮮開源<b class='flag-5'>鴻蒙</b>6.0?試試明星<b class='flag-5'>開發(fā)板</b>Purple Pi OH

    開鴻開發(fā)板深度體驗:從開源鴻蒙開發(fā)到AI場景實踐

    開鴻開發(fā)板KaihongBoard-3588S-SBCKaihongBoard-3576-SBC體驗開源鴻蒙能力學習開源鴻蒙開發(fā)●●●搭載KaihongOS
    的頭像 發(fā)表于 07-03 17:03 ?314次閱讀
    開鴻<b class='flag-5'>開發(fā)板</b>深度體驗:從開源<b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b>到AI場景實踐

    貝啟BQ3568HM 開發(fā)板被選用為 OpenHarmony 明星開發(fā)板

    經(jīng)開放原子開源基金會OpenHarmony社區(qū)官方測評評選,貝啟科技BQ3568HM開源鴻蒙開發(fā)板被正式選用為OpenHarmony明星開發(fā)板。BQ3568HM開源鴻蒙
    的頭像 發(fā)表于 05-25 00:22 ?591次閱讀
    貝啟BQ3568HM <b class='flag-5'>開發(fā)板</b>被選用為 OpenHarmony 明星<b class='flag-5'>開發(fā)板</b>

    【北京迅為】iTOP-RK3568開發(fā)板鴻蒙OpenHarmony系統(tǒng)南向驅(qū)動開發(fā)實操-HDF驅(qū)動配置UART

    【北京迅為】iTOP-RK3568開發(fā)板鴻蒙OpenHarmony系統(tǒng)南向驅(qū)動開發(fā)實操-HDF驅(qū)動配置UART
    的頭像 發(fā)表于 03-25 11:02 ?715次閱讀
    【北京迅為】iTOP-RK3568<b class='flag-5'>開發(fā)板</b><b class='flag-5'>鴻蒙</b>OpenHarmony系統(tǒng)南向驅(qū)動<b class='flag-5'>開發(fā)</b>實操-HDF驅(qū)動配置UART

    OpenHarmony源碼編譯后燒錄鏡像教程,RK3566鴻蒙開發(fā)板演示

    本文介紹瑞芯微主板/開發(fā)板編譯OpenHarmony源碼后燒錄鏡像的教程,觸覺智能Purple Pi OH鴻蒙開發(fā)板演示。搭載了瑞芯微RK3566四核處理器,樹莓派卡片電腦設計,支持開源鴻蒙
    的頭像 發(fā)表于 12-30 10:08 ?833次閱讀
    OpenHarmony源碼編譯后燒錄鏡像教程,RK3566<b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)板</b>演示

    OpenHarmony怎么修改DPI密度值?觸覺智能RK3566鴻蒙開發(fā)板演示

    開源鴻蒙OpenHarmony系統(tǒng)下,修改DPI密度值的方法,觸覺智能Purple Pi OH鴻蒙開發(fā)板演示,搭載了瑞芯微RK3566四核處理器,Laval鴻蒙社區(qū)推薦
    的頭像 發(fā)表于 12-24 11:46 ?726次閱讀
    OpenHarmony怎么修改DPI密度值?觸覺智能RK3566<b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)板</b>演示

    鴻蒙機器人與鴻蒙開發(fā)板聯(lián)動演示

    鴻蒙機器人與鴻蒙開發(fā)板聯(lián)動演示,機器人的角色為迎賓機器人,開發(fā)板負責人賓客出現(xiàn)監(jiān)聽
    發(fā)表于 12-02 14:55

    OpenHarmony屬性信息怎么修改?觸覺智能RK3566鴻蒙開發(fā)板來演示

    本文介紹開源鴻蒙OpenHarmony系統(tǒng)下,修改產(chǎn)品屬性信息的方法,觸覺智能Purple Pi OH鴻蒙開發(fā)板演示,已適配全新OpenHarmony5.0 Release系統(tǒng)!
    的頭像 發(fā)表于 11-27 09:31 ?743次閱讀
    OpenHarmony屬性信息怎么修改?觸覺智能RK3566<b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)板</b>來演示

    如何在Linux系統(tǒng)實現(xiàn)屏幕旋轉(zhuǎn)?觸覺智能RK3568鴻蒙開發(fā)板演示

    本文介紹Linux系統(tǒng)實現(xiàn)屏幕旋轉(zhuǎn)的方法,以解決產(chǎn)品形態(tài)的不同的展現(xiàn)方式,觸覺智能EVB3568鴻蒙開發(fā)板演示,現(xiàn)已發(fā)布全新OpenHarmony5.0 Release固件!
    的頭像 發(fā)表于 11-19 23:42 ?996次閱讀
    如何在Linux系統(tǒng)實現(xiàn)屏幕旋轉(zhuǎn)?觸覺智能RK3568<b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)板</b>演示

    如何在開源鴻蒙OpenHarmony開啟SELinux模式?RK3566鴻蒙開發(fā)板演示

    本文介紹開源鴻蒙OpenHarmony系統(tǒng)下,開啟/關閉SELinux權限的方法,觸覺智能Purple Pi OH鴻蒙開發(fā)板演示,已適配全新OpenHarmony5.0 Release系統(tǒng)!
    的頭像 發(fā)表于 11-18 19:03 ?831次閱讀
    如何在開源<b class='flag-5'>鴻蒙</b>OpenHarmony開啟SELinux模式?RK3566<b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)板</b>演示

    航順 HK32F407ZGT7 芯片的開發(fā)板:多功能外設助力多領域應用

    HK32F407ZGT7開發(fā)板 1.開發(fā)板簡介 開發(fā)板是基于航順芯片公司F4系列HK32F407ZGT7開發(fā)的一款開發(fā)板,Cortex-M4
    的頭像 發(fā)表于 11-08 14:43 ?675次閱讀
    航順 HK32F407ZGT7 芯片的<b class='flag-5'>開發(fā)板</b>:多功能<b class='flag-5'>外設</b>助力多領域應用

    瑞芯微RK3566鴻蒙開發(fā)板Android11修改第三方輸入法為默認輸入法

    本文適用于觸覺智能所有支持Android11系統(tǒng)的開發(fā)板修改第三方輸入法為默認輸入法。本次使用的是觸覺智能的Purple Pi OH鴻蒙開源主板,搭載了瑞芯微RK3566芯片,類樹莓派設計,是Laval官方社區(qū)主薦的一款鴻蒙
    的頭像 發(fā)表于 09-24 09:43 ?1098次閱讀
    瑞芯微RK3566<b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)板</b>Android11修改第三方輸入法為默認輸入法

    瑞芯微RK3566鴻蒙開發(fā)板OpenHarmony標準系統(tǒng)應用兼容性測試指導

    本文OpenHarmony標準系統(tǒng)應用兼容性測試指導,適用鴻蒙系統(tǒng)軟件開發(fā)測試的新手入門學習課程,設備為觸覺智能的瑞芯微RK3566開發(fā)板,型號Purple Pi OH。是Laval官方社區(qū)主薦的一款
    的頭像 發(fā)表于 09-10 11:56 ?1263次閱讀
    瑞芯微RK3566<b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)板</b>OpenHarmony標準系統(tǒng)應用兼容性測試指導

    單片機STM32可以Python寫嗎?可以的開發(fā)板有哪些?

    可以使用Python進行開發(fā),并分析市面上支持Python開發(fā)的單片機及開發(fā)板。首先,傳統(tǒng)的STM32單片機主要使用C語言或匯編語言進行
    的頭像 發(fā)表于 09-05 08:00 ?7575次閱讀
    單片機STM32可以<b class='flag-5'>用</b><b class='flag-5'>Python</b>寫嗎?可以的<b class='flag-5'>開發(fā)板</b>有哪些?

    linux開發(fā)板和單片機開發(fā)的區(qū)別

    硬件架構(gòu) Linux開發(fā)板和單片機開發(fā)在硬件架構(gòu)上有很大的區(qū)別。Linux開發(fā)板通常基于ARM、x86或其他處理器架構(gòu),具有較高的處理能力和內(nèi)存容量。而單片機開發(fā)則基于微
    的頭像 發(fā)表于 08-30 15:30 ?2150次閱讀