女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

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

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

3天內不再提示

基于RT-Thread的I2C(軟件) 實踐 | 技術集結

RT-Thread官方賬號 ? 2025-05-06 18:44 ? 次閱讀


一、軟硬件介紹

(一)I2C(軟件)

I2C是一種廣泛應用于嵌入式系統中的短距離串行通信協議,支持多主多從設備模式,主機通過時鐘信號SCL和數據線SDA與從機進行數據交互。在 RT-Thread 操作系統中,我們可以通過菜單配置工具menuconfig快速設置軟件 I2C 的引腳,并借助其內部已實現的驅動程序,方便快捷地完成調用與開發。

(二)FRDM-MCXA153

FRDM-MCXA153是一款緊湊且可擴展的開發板,可快速基于MCX A14和A15 MCU開展原型設計。它們提供行業標準的接口,可輕松訪問MCU的I/O、集成的開放標準串行接口、外部閃存和板載MCU-Link調試器。本文主要基于恩智浦FRDM—MCXA153開發板 X RT-Thread,測試I2C(軟件) 功能以及SSD1306 OLED

15b7c026-2a67-11f0-9434-92fbcf53809c.jpg

通過MCUXpresso Developer Experience(MCUXpresso開發人員體驗)提供其他工具,如面向附加板的擴展板中心和面向軟件示例的應用代碼中心。

(三)SSD1306 OLED

SSD1306是一款單片CMOS OLED/PLED驅動器,具有有機/聚合物發光控制器二極管點陣圖形顯示系。SSD1306內置對比度控制、顯示RAM振蕩器,減少了外部組件和功耗。它有256級亮度控制。數據/命令是從通用單片機通過硬件可選的6800/8000系列兼容并行接口發送,I2C接口或串行外圍接口。它適用于許多緊湊型便攜式應用程序,例如手機副顯示屏、MP3播放器、計算器等。

15c7e596-2a67-11f0-9434-92fbcf53809c.jpg


二、工程創建

目前RT-Thread Studio尚未支持恩智浦FRDM-MCXA153開發板BSP,需要從gitee下載最新的主線,通過scons命令創建工程。下載好主線源碼后,在rt-thread\bsp\nxp\mcx\mcxa\frdm-mcxa153 目錄下打開scons環境,配置軟件I2C驅動和SSD1306 OLED。

(一)軟件I2C配置

在恩智浦FRDM-MCXA153開發板板載的mikroBUS socket找到2個pin做軟件I2C接口的SCL/SDA,考慮到3.3V/GND的需要,直接選擇; P1_0和P1_2,具體可以從針腳圖看到,下圖紅框處的針腳。

15d56e3c-2a67-11f0-9434-92fbcf53809c.jpg

因為是軟件I2C,直接在menuconfig的設備驅動中選擇“Use GPIO to soft simulate I2C”,設置中直接配置到I2C1 bus上,之前選擇了P1_0和P1_2作為SCL/SDA,按照((port*32)+pin)的計算公式配置好即可,具體如下圖。

15dca562-2a67-11f0-9434-92fbcf53809c.jpg

其它的軟件I2C的具體實現,都在RT-Thread的組件中實現了,不再介紹。

(二)SSD1306 OLED配置

在menuconfig中選擇enable SSD1306,并且設置好I2C bus name,I2C的地址默認是0x3c無需修改,同時打開SSD1306測試demo。

15e780ae-2a67-11f0-9434-92fbcf53809c.jpg

上述內容設置好之后,選擇保存。分別執行下述2個命令:

pkgs —update

scons —target=mdk5


Keil工程生成后,打開工程編譯程序。

Program Size: Code=83324RO-data=25164RW-data=784ZI-data=7876 Finished:0information,2warning and0error messages.".\build\rtthread.axf"-0Error(s),6Warning(s).Build Time Elapsed: 00:00:04

然后下載到恩智浦FRDM-MCXA153開發板上。

161a5b82-2a67-11f0-9434-92fbcf53809c.jpg


三、軟件I2C測試

固件下載完成后,reset系統,可以看到軟件I2C已經配置成功。

sram heap,begin:0x0x200019d4,end:0x0x20005c00\|/-RT- Thread OperatingSystem/|\ 5.2.0build Jul21202415:49:402006-2024CopyrightbyRT-Thread teamI/I2C: I2C bus [i2c1] registeredD/I2C_S: Software simulation i2c1 init done, SCL pin:0x20, SDA pin:0x22I/I2C: I2C bus [i2c0] registeredusingarmclang, version:6180002MCXA153 HelloWorldmsh>

list device后,可以看到I2C1已經起來:

msh>list devicedevice type refcount-------- -------------------- ----------i2c0 I2C Bus 0i2c1 I2C Bus 0pin Pin Device 0uart0 CharacterDevice 2msh>

把ssd1306_TestAll的demo跑起來。

1621ae5a-2a67-11f0-9434-92fbcf53809c.jpg

對比硬件I2C,軟件I2C的刷屏速度的確差了很多。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 軟件
    +關注

    關注

    69

    文章

    5121

    瀏覽量

    88957
  • I2C
    I2C
    +關注

    關注

    28

    文章

    1535

    瀏覽量

    127050
  • RT-Thread
    +關注

    關注

    32

    文章

    1370

    瀏覽量

    41524
收藏 人收藏

    評論

    相關推薦
    熱點推薦

    RT-Thread記錄(十八、SHT21與24C02軟件包)

    本文學習測試一下幾款典型設備的 RT-Thread I2C軟件
    的頭像 發表于 07-08 11:07 ?4119次閱讀
    <b class='flag-5'>RT-Thread</b>記錄(十八、SHT21與24<b class='flag-5'>C</b>02<b class='flag-5'>軟件</b>包)

    【先楫HPM5361EVK開發板試用體驗】RT-Thread I2C使用

    開發環境: IDE:RT-Thread Studio 2.2.7 開發板:HPM5300EVK HPM5300EVK有4路硬件I2C,當然也可使用軟件I2C,對于應用而言,
    發表于 12-25 23:57

    RT-Thread里面驅動層的i2c能否用硬件方式實現呢?

    很好奇RT-Thread里面驅動層的i2c實現為啥都是用的軟件模擬實現的,硬件i2c它不香嗎,有人做過硬件方式實現嗎?一起交流下
    發表于 04-15 09:41

    基于RT-Thread測試NK-980 IoT開發板的I2C外設性能簡析

    1、RT-Thread I2C應用實踐  硬件環境  ● 開發板:Nuvoton NK-980 IoT  ● USB線:Micro-USB 連接線2根  ●
    發表于 10-12 15:56

    詳解RT-Thread I2C設備驅動框架及相關函數

    摘要本應用筆記以驅動 I2C 接口的 6 軸傳感器 MPU6050 為例,說明了如何使用 I2C 設備驅動接口開發應用程序,并詳細講解了 RT-Thread I2C 設備驅動框架及相關
    發表于 10-25 12:02

    詳細講解RT-Thread I2C設備驅動框架及相關函數

    本應用筆記以驅動I2C接口的6軸傳感器MPU6050為例,說明了如何使用I2C設備驅動接口開發應用程序,并詳細講解了RT-Thread I2C設備驅動框架及相關函數。
    的頭像 發表于 03-29 10:52 ?2.1w次閱讀
    詳細講解<b class='flag-5'>RT-Thread</b> <b class='flag-5'>I2C</b>設備驅動框架及相關函數

    RT-Thread軟件包定義和使用

    RT-Thread軟件包是運行于RT-Thread物聯網操作系統平臺上,面向不同應用領域的通用軟件組件 。RT-Thread 同時提供了開放
    的頭像 發表于 05-21 11:29 ?1.1w次閱讀
    <b class='flag-5'>RT-Thread</b><b class='flag-5'>軟件</b>包定義和使用

    基于RT-Thread的智慧路燈案例實驗分享

    這里我用的是RT-Thread Studio V1.1.0,這里的I2C的范例配置有點問題,其它版本的RT-Thread Studio應該可以按范例配置那么配,如果按范例配置編譯不通過的話可以按照
    的頭像 發表于 07-01 14:43 ?4030次閱讀
    基于<b class='flag-5'>RT-Thread</b>的智慧路燈案例實驗分享

    RT-Thread全球技術大會:RT-Thread開源重塑軟件發展新生態

    RT-Thread全球技術大會:RT-Thread開源重塑軟件發展新生態,市場空間巨大,以開放的心態不斷提升技術水平,大膽創新,迎接挑戰!
    的頭像 發表于 05-27 10:47 ?1410次閱讀
    <b class='flag-5'>RT-Thread</b>全球<b class='flag-5'>技術</b>大會:<b class='flag-5'>RT-Thread</b>開源重塑<b class='flag-5'>軟件</b>發展新生態

    RT-Thread全球技術大會:螢石研發團隊使用RT-Thread技術挑戰

    RT-Thread全球技術大會:研發團隊使用RT-Thread技術挑戰 ? ? ? ? 審核編輯:彭靜
    的頭像 發表于 05-27 11:36 ?1487次閱讀
    <b class='flag-5'>RT-Thread</b>全球<b class='flag-5'>技術</b>大會:螢石研發團隊使用<b class='flag-5'>RT-Thread</b>的<b class='flag-5'>技術</b>挑戰

    RT-Thread全球技術大會:使用RT-Thread開發大規模嵌入式軟件帶來的挑戰與好處

    RT-Thread全球技術大會:使用RT-Thread開發大規模嵌入式軟件帶來的挑戰與好處 ? ? ? 審核編輯:彭靜
    的頭像 發表于 05-27 11:45 ?1738次閱讀
    <b class='flag-5'>RT-Thread</b>全球<b class='flag-5'>技術</b>大會:使用<b class='flag-5'>RT-Thread</b>開發大規模嵌入式<b class='flag-5'>軟件</b>帶來的挑戰與好處

    2022 RT-Thread全球技術大會:螢石EZIOT SDK對RT-Thread的支持

    2022 RT-Thread全球技術大會:RT-Thread在攝像頭及IoT設備上的實踐經驗分享
    的頭像 發表于 05-27 11:08 ?1483次閱讀
    2022 <b class='flag-5'>RT-Thread</b>全球<b class='flag-5'>技術</b>大會:螢石EZIOT SDK對<b class='flag-5'>RT-Thread</b>的支持

    RT-Thread文檔_RT-Thread SMP 介紹與移植

    RT-Thread文檔_RT-Thread SMP 介紹與移植
    發表于 02-22 18:31 ?9次下載
    <b class='flag-5'>RT-Thread</b>文檔_<b class='flag-5'>RT-Thread</b> SMP 介紹與移植

    RT-Thread文檔_I2C 總線設備

    RT-Thread文檔_I2C 總線設備
    發表于 02-22 18:35 ?0次下載
    <b class='flag-5'>RT-Thread</b>文檔_<b class='flag-5'>I2C</b> 總線設備

    驅動SSD1306OLED屏檢驗軟件I2C驅動方案

    進行RT-Thread Settings 開啟軟件I2C
    發表于 08-15 15:33 ?1744次閱讀
    驅動SSD1306OLED屏檢驗<b class='flag-5'>軟件</b><b class='flag-5'>I2C</b>驅動方案