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

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

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

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

基于RT-Thread的I2C(軟件) 實(shí)踐 | 技術(shù)集結(jié)

RT-Thread官方賬號(hào) ? 2025-05-06 18:44 ? 次閱讀


一、軟硬件介紹

(一)I2C(軟件)

I2C是一種廣泛應(yīng)用于嵌入式系統(tǒng)中的短距離串行通信協(xié)議,支持多主多從設(shè)備模式,主機(jī)通過(guò)時(shí)鐘信號(hào)SCL和數(shù)據(jù)線SDA與從機(jī)進(jìn)行數(shù)據(jù)交互。在 RT-Thread 操作系統(tǒng)中,我們可以通過(guò)菜單配置工具menuconfig快速設(shè)置軟件 I2C 的引腳,并借助其內(nèi)部已實(shí)現(xiàn)的驅(qū)動(dòng)程序,方便快捷地完成調(diào)用與開(kāi)發(fā)。

(二)FRDM-MCXA153

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

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

通過(guò)MCUXpresso Developer Experience(MCUXpresso開(kāi)發(fā)人員體驗(yàn))提供其他工具,如面向附加板的擴(kuò)展板中心和面向軟件示例的應(yīng)用代碼中心。

(三)SSD1306 OLED

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

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


二、工程創(chuàng)建

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

(一)軟件I2C配置

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

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

因?yàn)槭擒浖蘒2C,直接在menuconfig的設(shè)備驅(qū)動(dòng)中選擇“Use GPIO to soft simulate I2C”,設(shè)置中直接配置到I2C1 bus上,之前選擇了P1_0和P1_2作為SCL/SDA,按照((port*32)+pin)的計(jì)算公式配置好即可,具體如下圖。

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

其它的軟件I2C的具體實(shí)現(xiàn),都在RT-Thread的組件中實(shí)現(xiàn)了,不再介紹。

(二)SSD1306 OLED配置

在menuconfig中選擇enable SSD1306,并且設(shè)置好I2C bus name,I2C的地址默認(rèn)是0x3c無(wú)需修改,同時(shí)打開(kāi)SSD1306測(cè)試demo。

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

上述內(nèi)容設(shè)置好之后,選擇保存。分別執(zhí)行下述2個(gè)命令:

pkgs —update

scons —target=mdk5


Keil工程生成后,打開(kāi)工程編譯程序。

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開(kāi)發(fā)板上。

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


三、軟件I2C測(cè)試

固件下載完成后,reset系統(tǒng),可以看到軟件I2C已經(jīng)配置成功。

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已經(jīng)起來(lái):

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

把ssd1306_TestAll的demo跑起來(lái)。

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

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

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

    關(guān)注

    69

    文章

    5097

    瀏覽量

    88811
  • I2C
    I2C
    +關(guān)注

    關(guān)注

    28

    文章

    1522

    瀏覽量

    126683
  • RT-Thread
    +關(guān)注

    關(guān)注

    31

    文章

    1357

    瀏覽量

    41415
收藏 人收藏

    評(píng)論

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

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

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

    【先楫HPM5361EVK開(kāi)發(fā)板試用體驗(yàn)】RT-Thread I2C使用

    開(kāi)發(fā)環(huán)境: IDE:RT-Thread Studio 2.2.7 開(kāi)發(fā)板:HPM5300EVK HPM5300EVK有4路硬件I2C,當(dāng)然也可使用軟件I2C,對(duì)于應(yīng)用而言,
    發(fā)表于 12-25 23:57

    RT-Thread里面驅(qū)動(dòng)層的i2c能否用硬件方式實(shí)現(xiàn)呢?

    很好奇RT-Thread里面驅(qū)動(dòng)層的i2c實(shí)現(xiàn)為啥都是用的軟件模擬實(shí)現(xiàn)的,硬件i2c它不香嗎,有人做過(guò)硬件方式實(shí)現(xiàn)嗎?一起交流下
    發(fā)表于 04-15 09:41

    基于RT-Thread測(cè)試NK-980 IoT開(kāi)發(fā)板的I2C外設(shè)性能簡(jiǎn)析

    1、RT-Thread I2C應(yīng)用實(shí)踐  硬件環(huán)境  ● 開(kāi)發(fā)板:Nuvoton NK-980 IoT  ● USB線:Micro-USB 連接線2根  ●
    發(fā)表于 10-12 15:56

    詳解RT-Thread I2C設(shè)備驅(qū)動(dòng)框架及相關(guān)函數(shù)

    摘要本應(yīng)用筆記以驅(qū)動(dòng) I2C 接口的 6 軸傳感器 MPU6050 為例,說(shuō)明了如何使用 I2C 設(shè)備驅(qū)動(dòng)接口開(kāi)發(fā)應(yīng)用程序,并詳細(xì)講解了 RT-Thread I2C 設(shè)備驅(qū)動(dòng)框架及相關(guān)
    發(fā)表于 10-25 12:02

    詳細(xì)講解RT-Thread I2C設(shè)備驅(qū)動(dòng)框架及相關(guān)函數(shù)

    本應(yīng)用筆記以驅(qū)動(dòng)I2C接口的6軸傳感器MPU6050為例,說(shuō)明了如何使用I2C設(shè)備驅(qū)動(dòng)接口開(kāi)發(fā)應(yīng)用程序,并詳細(xì)講解了RT-Thread I2C設(shè)備驅(qū)動(dòng)框架及相關(guān)函數(shù)。
    的頭像 發(fā)表于 03-29 10:52 ?2.1w次閱讀
    詳細(xì)講解<b class='flag-5'>RT-Thread</b> <b class='flag-5'>I2C</b>設(shè)備驅(qū)動(dòng)框架及相關(guān)函數(shù)

    RT-Thread軟件包定義和使用

    RT-Thread軟件包是運(yùn)行于RT-Thread物聯(lián)網(wǎng)操作系統(tǒng)平臺(tái)上,面向不同應(yīng)用領(lǐng)域的通用軟件組件 。RT-Thread 同時(shí)提供了開(kāi)放
    的頭像 發(fā)表于 05-21 11:29 ?1.1w次閱讀
    <b class='flag-5'>RT-Thread</b><b class='flag-5'>軟件</b>包定義和使用

    基于RT-Thread的智慧路燈案例實(shí)驗(yàn)分享

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

    RT-Thread全球技術(shù)大會(huì):RT-Thread開(kāi)源重塑軟件發(fā)展新生態(tài)

    RT-Thread全球技術(shù)大會(huì):RT-Thread開(kāi)源重塑軟件發(fā)展新生態(tài),市場(chǎng)空間巨大,以開(kāi)放的心態(tài)不斷提升技術(shù)水平,大膽創(chuàng)新,迎接挑戰(zhàn)!
    的頭像 發(fā)表于 05-27 10:47 ?1379次閱讀
    <b class='flag-5'>RT-Thread</b>全球<b class='flag-5'>技術(shù)</b>大會(huì):<b class='flag-5'>RT-Thread</b>開(kāi)源重塑<b class='flag-5'>軟件</b>發(fā)展新生態(tài)

    RT-Thread全球技術(shù)大會(huì):螢石研發(fā)團(tuán)隊(duì)使用RT-Thread技術(shù)挑戰(zhàn)

    RT-Thread全球技術(shù)大會(huì):研發(fā)團(tuán)隊(duì)使用RT-Thread技術(shù)挑戰(zhàn) ? ? ? ? 審核編輯:彭靜
    的頭像 發(fā)表于 05-27 11:36 ?1451次閱讀
    <b class='flag-5'>RT-Thread</b>全球<b class='flag-5'>技術(shù)</b>大會(huì):螢石研發(fā)團(tuán)隊(duì)使用<b class='flag-5'>RT-Thread</b>的<b class='flag-5'>技術(shù)</b>挑戰(zhàn)

    RT-Thread全球技術(shù)大會(huì):使用RT-Thread開(kāi)發(fā)大規(guī)模嵌入式軟件帶來(lái)的挑戰(zhàn)與好處

    RT-Thread全球技術(shù)大會(huì):使用RT-Thread開(kāi)發(fā)大規(guī)模嵌入式軟件帶來(lái)的挑戰(zhàn)與好處 ? ? ? 審核編輯:彭靜
    的頭像 發(fā)表于 05-27 11:45 ?1695次閱讀
    <b class='flag-5'>RT-Thread</b>全球<b class='flag-5'>技術(shù)</b>大會(huì):使用<b class='flag-5'>RT-Thread</b>開(kāi)發(fā)大規(guī)模嵌入式<b class='flag-5'>軟件</b>帶來(lái)的挑戰(zhàn)與好處

    2022 RT-Thread全球技術(shù)大會(huì):螢石EZIOT SDK對(duì)RT-Thread的支持

    2022 RT-Thread全球技術(shù)大會(huì):RT-Thread在攝像頭及IoT設(shè)備上的實(shí)踐經(jīng)驗(yàn)分享
    的頭像 發(fā)表于 05-27 11:08 ?1450次閱讀
    2022 <b class='flag-5'>RT-Thread</b>全球<b class='flag-5'>技術(shù)</b>大會(huì):螢石EZIOT SDK對(duì)<b class='flag-5'>RT-Thread</b>的支持

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

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

    RT-Thread文檔_I2C 總線設(shè)備

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

    驅(qū)動(dòng)SSD1306OLED屏檢驗(yàn)軟件I2C驅(qū)動(dòng)方案

    進(jìn)行RT-Thread Settings 開(kāi)啟軟件I2C。
    發(fā)表于 08-15 15:33 ?1705次閱讀
    驅(qū)動(dòng)SSD1306OLED屏檢驗(yàn)<b class='flag-5'>軟件</b><b class='flag-5'>I2C</b>驅(qū)動(dòng)方案