在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

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

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

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

STM32L051上使用RT-Threa (三、I2C通訊)

矜辰所致 ? 來源:矜辰所致 ? 作者:矜辰所致 ? 2022-06-27 10:32 ? 次閱讀
應(yīng)用篇-在STM32L051上使用RT-Thread 第三篇,學(xué)習(xí)RT-Thread Studio如何添加自定義的.c .h文件,
同時(shí)開始我們的程序移植和設(shè)計(jì)。

目錄

前言
一、RT-Thread Studio添加自定義的.c .h文件

1.1 在現(xiàn)有文件夾下添加
1.2 新建文件夾添加
1.2.1 手動添加路徑
1.2.1 使用`SConscript`腳本添加

二、I2C驅(qū)動移植

2.1 移植步驟
2.2 使用測試
2.3 好多的問題= =!
問題的解決
2.4 RT-Thread nano打印浮點(diǎn)數(shù)

三、時(shí)刻關(guān)注占RAM大小
結(jié)語

前言

經(jīng)過前面兩篇文章的準(zhǔn)備,我們終于可以開始寫應(yīng)用代碼了,在添加我們自己的驅(qū)動文件之前,本文會說明一下 RT-Thread Studio 如何添加自己的.c 和 .h文件。

然后在此基礎(chǔ)上,完成 SHT21 溫濕度傳感器的 I2C 驅(qū)動移植。

??
本 RT-Thread 專欄記錄的開發(fā)環(huán)境:
RT-Thread記錄(一、RT-Thread 版本、RT-Thread Studio開發(fā)環(huán)境 及 配合CubeMX開發(fā)快速上手)
RT-Thread記錄(二、RT-Thread內(nèi)核啟動流程 — 啟動文件和源碼分析)
??
RT-Thread 內(nèi)核篇系列博文鏈接:
RT-Thread記錄(三、RT-Thread 線程操作函數(shù)及線程管理與FreeRTOS的比較)
RT-Thread記錄(四、RT-Thread 時(shí)鐘節(jié)拍和軟件定時(shí)器
RT-Thread記錄(五、RT-Thread 臨界區(qū)保護(hù))
RT-Thread記錄(六、IPC機(jī)制之信號量、互斥量和事件集)
RT-Thread記錄(七、IPC機(jī)制之郵箱、消息隊(duì)列)
RT-Thread記錄(八、理解 RT-Thread 內(nèi)存管理)
RT-Thread記錄(九、RT-Thread 中斷處理與階段小結(jié))
??
在STM32L051C8 上使用 RT-Thread 應(yīng)用篇系列博文連接:
RT-Thread 應(yīng)用篇 — 在STM32L051上使用 RT-Thread (一、無線溫濕度傳感器 之 新建項(xiàng)目)
RT-Thread 應(yīng)用篇 — 在STM32L051上使用 RT-Thread (二、無線溫濕度傳感器 之 CubeMX配置)

一、RT-Thread Studio添加自定義的.c .h文件

使用RT-Thread Studio添加自定義的.c .h文件有多種方式,本文根據(jù)博主的實(shí)際測試,分別說明一下。

1.1 在現(xiàn)有文件夾下添加

直接在工程現(xiàn)有的文件夾下面右擊,選擇新建頭文件或者源文件,如下圖:

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA55-c6L6w5omA6Ie0,size_20,color_FFFFFF,t_70,g_se,x_16

添加完成以后就可以直接編譯了,上面我在 cubemx 文件夾下的Src 和 Inc 下分別添加了i2c.c和兩個(gè)頭文件,直接編譯會關(guān)聯(lián)進(jìn)去的:

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA55-c6L6w5omA6Ie0,size_20,color_FFFFFF,t_70,g_se,x_16

但是這里得說明下,cubemx 是通過SConscript受SCons 構(gòu)建工具管理的,所以直接這樣添加的話,每次我們自己增加一個(gè).c文件,需要在 SConscript 文件中增加對應(yīng)部分,要不然同步一下scons,不相關(guān)的.c文件就會被排除構(gòu)建:

poYBAGK4LO-ATvJ4AAAR9NJaT5c314.png

當(dāng)然我們也可以在其他文件夾下添加,比如 drivers 文件夾,里面.c.h文件是混在一起,我們也可以直接在這里面新建,如下圖:

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA55-c6L6w5omA6Ie0,size_12,color_FFFFFF,t_70,g_se,x_16

總結(jié)一下,在現(xiàn)有文件夾下面添加是比較方便的一種方式,因?yàn)轫?xiàng)目整體的構(gòu)建系統(tǒng)已經(jīng)處理好了這些文件下的.c.h文件的包含關(guān)系,我們不用再進(jìn)行添加頭文件路徑這種操作。
但是這種方式會影響項(xiàng)目原始框架,小項(xiàng)目的文件少倒是無所謂,文件多了的話就很亂了。

1.2 新建文件夾添加

所以我們要講一下如果新建文件夾放置我們自己的驅(qū)動程序應(yīng)該怎么做。

首先,還是右擊選擇新建文件夾,然后出選擇文件夾放置的位置,輸入文件夾名字:

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA55-c6L6w5omA6Ie0,size_20,color_FFFFFF,t_70,g_se,x_16

新建好以后,我們在左邊資源管理器可以看到有文件夾了,我們可以通過上面 1.1小節(jié)的內(nèi)容添加文件,也可以直接打開文件夾所在的目錄,直接把我們要的文件復(fù)制過來,如下圖:

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA55-c6L6w5omA6Ie0,size_20,color_FFFFFF,t_70,g_se,x_16

新建文件夾復(fù)制文件過來,不做任何操作直接編譯,可以參與編譯:

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA55-c6L6w5omA6Ie0,size_20,color_FFFFFF,t_70,g_se,x_16

但是要備其他文件夾中的文件包含,需要添加頭文件路徑,如果不添加,會出現(xiàn)如下錯誤:

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA55-c6L6w5omA6Ie0,size_20,color_FFFFFF,t_70,g_se,x_16

1.2.1 手動添加路徑

工程資源管理器界面右擊點(diǎn)擊構(gòu)建配置,如下圖:

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA55-c6L6w5omA6Ie0,size_17,color_FFFFFF,t_70,g_se,x_16

然后按照下圖所示步驟,把我們自己新建的頭文件所在文件夾路徑添加(和keil工具一樣的添加)即可:

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA55-c6L6w5omA6Ie0,size_20,color_FFFFFF,t_70,g_se,x_16

1.2.1 使用SConscript腳本添加

在自己想要放驅(qū)動的文件夾下面新建一個(gè)SConscript腳本,如下圖:

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA55-c6L6w5omA6Ie0,size_20,color_FFFFFF,t_70,g_se,x_16

然后把自己想添加的.c.h文件放在對應(yīng)文件夾下面,新建完成刷新工程,然后再右擊,選擇“同步scons配置至項(xiàng)目”即可,腳本會把該文件路徑自動添加至編譯的路徑中。

腳本內(nèi)容如下:

from building import *

cwd     = GetCurrentDir()
src     = Glob('*.c') + Glob('*.S')

libpath = [cwd]
CPPPATH = [os.path.join(cwd)]
 
group = DefineGroup('mydrivers', src, depend = [''], CPPPATH = CPPPATH,LIBPATH = libpath)

Return('group')

二、I2C驅(qū)動移植

上面我們講解了如果添加自己的驅(qū)動文件,那么我們就直接把以前驅(qū)動文件移植過來,因?yàn)?SHT21 的驅(qū)動文件,在我以前博文 STM32L051 和 nRF52832 專欄都說明過 SHT21的程序(等本次應(yīng)用篇結(jié)束我會把最終的源碼上傳的):

STM32L051測試 (三、I2C協(xié)議設(shè)備的添加測試)

nRF52832學(xué)習(xí)記錄(十一、TWI總線的應(yīng)用 SHT21程序移植)

我們這里只是把裸機(jī)使用的文件改成在 RT-Thread 上使用的文件。

2.1 移植步驟

首先我們把驅(qū)動文件都拷貝過來(Datadef.h 是我個(gè)人習(xí)慣使用的一些數(shù)據(jù)類型宏定義):

pYYBAGK4LPKANqCnAAAcou4aCMo617.png

編譯過后,還是正常通過除了上面報(bào)的那個(gè)延時(shí)函數(shù)的警告:

poYBAGK4LPKAZpSDAAA93sNpoAs334.png

這是因?yàn)閐elay_us()這個(gè)函數(shù)在HAL庫中是沒有的額,以前使用裸機(jī)的時(shí)候是我自己實(shí)現(xiàn)的,這里我們既然使用了 RT-Thread ,在我們《RT-Thread記錄(四、RT-Thread 時(shí)鐘節(jié)拍和軟件定時(shí)器)》中正好介紹到過 RT-Thread 中有 us 延時(shí)函數(shù),我們拿過來用用試試看。

我們把所有 delay_us 改成rt_hw_us_delay,記得包含一下頭文件:

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA55-c6L6w5omA6Ie0,size_15,color_FFFFFF,t_70,g_se,x_16

然后把文件驅(qū)動文件中中所有的HAL_Delay改成rt_thread_mdelay,比如:

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA55-c6L6w5omA6Ie0,size_16,color_FFFFFF,t_70,g_se,x_16

感覺已經(jīng)好了……那么接下來看看效果。

2.2 使用測試

上面我們驅(qū)動移植好了,我們直接來測試一下,這里我們還是新建一個(gè)線程把,這個(gè)溫濕度讀取的線程我根據(jù)經(jīng)驗(yàn),設(shè)置為192字節(jié),然后每隔3s讀取一次溫濕度打印:

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA55-c6L6w5omA6Ie0,size_18,color_FFFFFF,t_70,g_se,x_16

程序編譯正常沒有問題,但是跑起來出問題了…

2.3 好多的問題= =!

按鍵沒有修改,上篇文章一樣預(yù)留的:

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA55-c6L6w5omA6Ie0,size_18,color_FFFFFF,t_70,g_se,x_16

雖然占用了7000多字節(jié),但是應(yīng)該還是有空間的,但是在程序運(yùn)行直接報(bào)錯:

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA55-c6L6w5omA6Ie0,size_15,color_FFFFFF,t_70,g_se,x_16

key線程昨天測試的時(shí)候完全沒問題啊,這里居然出錯了,我考慮到今天也就多加了一個(gè)sht的線程,于是我將溫濕度讀取線程中的邏輯去掉,又出另外的問題提示:

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA55-c6L6w5omA6Ie0,size_17,color_FFFFFF,t_70,g_se,x_16

然后想著是不是剛啟動的時(shí)候等一會讀傳感器,沒有為什么,講不出道理= =!于是:

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA55-c6L6w5omA6Ie0,size_17,color_FFFFFF,t_70,g_se,x_16

在這個(gè)時(shí)候我忽然想到浮點(diǎn)數(shù)的特殊性,以前記得使用 RT-Thread 遇到過,然后網(wǎng)上查了下確實(shí),rt_kprintf是不能打印浮點(diǎn)數(shù)的,是不是浮點(diǎn)數(shù)的問題。

因?yàn)樯厦骘@示 sht21 線程棧溢出,說明線程棧給的不夠,其實(shí)按照經(jīng)驗(yàn)來說,是足夠的,這里不管,那我給他增加線程棧看看結(jié)果,如下圖:

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA55-c6L6w5omA6Ie0,size_19,color_FFFFFF,t_70,g_se,x_16

好吧!還是有問題,沒救了,先把浮點(diǎn)數(shù)的問題處理了吧。

改了一個(gè)不打印浮點(diǎn)數(shù)的,結(jié)果看圖吧:

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA55-c6L6w5omA6Ie0,size_20,color_FFFFFF,t_70,g_se,x_16

這么看來,或許應(yīng)該是驅(qū)動修改的問題吧,我首先想到的就是 us延時(shí)函數(shù),那個(gè)延時(shí)函數(shù)有問題,于是我用了裸機(jī)中的干等函數(shù)……:

(后面證明不是這個(gè)原因,us延時(shí)函數(shù)可用)

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA55-c6L6w5omA6Ie0,size_20,color_FFFFFF,t_70,g_se,x_16

經(jīng)驗(yàn)不管用,雖然在使用 FreeRTOS 的時(shí)候 192字節(jié)有余:

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA55-c6L6w5omA6Ie0,size_20,color_FFFFFF,t_70,g_se,x_16

但是在這里使用的時(shí)候,256字節(jié)大小都出錯了,直到我繼續(xù)增大:

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA55-c6L6w5omA6Ie0,size_19,color_FFFFFF,t_70,g_se,x_16

問題的解決

到頭來,原來是這個(gè)驅(qū)動函數(shù)在 RT-Thread 線程中需要的線程棧大小相對 FreeRTOS 來說大,因?yàn)橛行┒褩R绯龅膯栴}導(dǎo)致報(bào)錯也不一樣,而且根據(jù)以前的使用經(jīng)驗(yàn),所以開始并沒有一味的想著增大線程棧空間。

后來考慮了一下,對于驅(qū)動操作來說,都是基于STM32L051芯片,這部分應(yīng)該差距不大,還有一個(gè)最能的原因是打印函數(shù),我們以前就說過打印函數(shù)很占用內(nèi)存空間,rt_kprintf 是 RT-Thread 自己實(shí)現(xiàn)的,是不是因?yàn)檫@個(gè)打印函數(shù)占用空間大導(dǎo)致的呢? 這個(gè)目前只是猜想,后期有機(jī)會來研究一下!

回過頭切換回 RT-Thread 中的 us 延時(shí)函數(shù),也測試成功了。

2.4 RT-Thread nano打印浮點(diǎn)數(shù)

1、雖然軟件包中心,有一個(gè)名為rt_vsnprintf_full的軟件包,可以打印浮點(diǎn)數(shù),但是我們使用的 nano 版本并不能安裝軟件包……

RT-Thread_rt_kprintf()打印浮點(diǎn)數(shù)(解決方法2:添加rt_vsnprintf_full)

2、同樣 nano 版本無法使用標(biāo)準(zhǔn)libc庫……,所以無法使用vsnprintf替換rt_vsnprintf的方式:

RT-thread rt_kprintf()函數(shù)格式化輸出浮點(diǎn)數(shù)

3、如果做一些其他修改,使其可以支持標(biāo)準(zhǔn)C庫調(diào)用,會額外占用 RAM 空間:

rt-thread printf打印信息(包含打印浮點(diǎn)型float)

綜合來說看了一圈,好吧,認(rèn)輸了! 打印不出來,不玩了,本次測試不太順利……

最后還是用土方法,簡單應(yīng)付一下,因?yàn)楹笃诓⒉恍枰蛴。蛴≈皇菫榱藴y試:

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA55-c6L6w5omA6Ie0,size_20,color_FFFFFF,t_70,g_se,x_16

三、時(shí)刻關(guān)注占RAM大小

本文就添加了一個(gè) I2C驅(qū)動, 但是上面我們經(jīng)過多次測試修改,溫濕度測試線程也用到了384個(gè)字節(jié),如果不打印出來,應(yīng)該會小很多,我們后面肯定會來調(diào)整工程的。

那么還是老樣子,今天測試完成以后和以前占用空間的對比圖上一下:

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA55-c6L6w5omA6Ie0,size_20,color_FFFFFF,t_70,g_se,x_16

加了溫濕度讀取線程以后,程序運(yùn)行時(shí)候需要占用 RAM的大小: 7248 字節(jié),我們的芯片 RAM:8192字節(jié)。

結(jié)語

本文我們了解了 RT-Thread Studio添加自定義的.c .h文件的方法,然后成功的把 I2C驅(qū)動移植過來。

雖然一個(gè)簡單的移植,缺被一個(gè)基本的問題困擾了許久,再次強(qiáng)調(diào)一次,在線程中使用打印函數(shù),是很占用RAM空間的行為,以前在使用操作系統(tǒng)的時(shí)候就知道這個(gè)問題。

本次測試,我推斷在使用RT-Thread自己的rt_kprintf函數(shù)會比 C庫 printf 占用更多內(nèi)存空間(有錯誤請指出),也算是一個(gè)小收獲。

然后就是使用 RT-Thread nano打印浮點(diǎn)數(shù),雖然我最終還是樣子上打印出了浮點(diǎn)數(shù)= =!我沒有研究出比較滿意的方式,也算是一個(gè)小遺憾,不過話說話來,打印大多數(shù)是為了測試,正常的項(xiàng)目跑起來,也不需要打印這些。

沒想到本次測試這么折騰,有點(diǎn)累= =! 還望小伙伴多多支持,多多指教!

好了,本文就到這,謝謝大家!

審核編輯:湯梓紅

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

    關(guān)注

    1

    文章

    394

    瀏覽量

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

    關(guān)注

    28

    文章

    1537

    瀏覽量

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

    關(guān)注

    32

    文章

    1372

    瀏覽量

    41565
收藏 人收藏

    評論

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

    STM32L051使用RT-Thread (一、新建項(xiàng)目)

    學(xué)完了 RT-Thread 內(nèi)核基礎(chǔ),來使用 RT-Thread 實(shí)現(xiàn)一個(gè)小應(yīng)用。 硬件平臺:STM32L051C8 TCM310(Enocean無線芯片) 軟件平臺:RT-Th
    的頭像 發(fā)表于 06-25 20:45 ?6581次閱讀
    <b class='flag-5'>STM32L051</b><b class='flag-5'>上</b>使用<b class='flag-5'>RT</b>-Thread (一、新建項(xiàng)目)

    STM32L051使用RT-Th (二、CubeMX配置)

    應(yīng)用篇-在STM32L051使用RT-Thread 第二篇,使用STM32CubeMX 進(jìn)行對應(yīng)外設(shè)配置,同時(shí)做一些簡單測試。
    的頭像 發(fā)表于 06-26 14:02 ?5117次閱讀
    <b class='flag-5'>STM32L051</b><b class='flag-5'>上</b>使用<b class='flag-5'>RT</b>-Th (二、CubeMX配置)

    STM32L051使用RT-Thread (四、串口通訊

    應(yīng)用篇-在STM32L051使用RT-Thread 第四篇,巧妙的使用信號量處理串口通訊
    的頭像 發(fā)表于 06-28 10:59 ?5787次閱讀
    <b class='flag-5'>STM32L051</b><b class='flag-5'>上</b>使用<b class='flag-5'>RT</b>-Thread (四、串口<b class='flag-5'>通訊</b>)

    STM32L051使用RT-Thread (五、完結(jié)篇)

    應(yīng)用篇-在STM32L051使用RT-Thread 第五篇,也是本次應(yīng)用的完結(jié)篇。
    的頭像 發(fā)表于 06-29 10:34 ?4475次閱讀
    <b class='flag-5'>STM32L051</b><b class='flag-5'>上</b>使用<b class='flag-5'>RT</b>-Thread (五、完結(jié)篇)

    stm32l051 hal庫如何使用硬件i2c從機(jī)?

    stm32l051 hal庫如何使用硬件i2c從機(jī),有沒有相關(guān)參考程序。現(xiàn)在調(diào)試過程中一直進(jìn)入AF錯誤,是什么原因?qū)е碌模?/div>
    發(fā)表于 03-27 08:24

    基于STM32L051的可穿戴設(shè)備字庫顯示設(shè)計(jì)

    `12832OLED點(diǎn)陣STM32L051,顯示屏0.91寸128*32OLED,LCD驅(qū)動芯片是SSD1306,字庫顯示采用高通GT24L24A2Y字庫芯片,字庫芯片主要用于實(shí)現(xiàn)OLED界面
    發(fā)表于 08-30 15:55

    請問STM32L051和071系列,哪款芯片比較常用?采購供貨考慮

    目前在選型一款STM32L0系列芯片,請問STM32L051和071系列,哪款芯片比較常用?還有,STM32L051C8,071CB,071CZ大概量產(chǎn)價(jià)格?采購供貨考慮。謝謝。
    發(fā)表于 11-26 08:55

    總結(jié)STM32L051的STOP模式

    本文總結(jié)下STM32L051的STOP模式,通過外部中斷「按鍵、串口」進(jìn)行喚醒。
    發(fā)表于 08-13 09:36

    怎樣去使用STM32L051單片機(jī)

    怎樣去使用STM32L051單片機(jī)?Period每隔多久執(zhí)行一次?Timeout第一次什么時(shí)候執(zhí)行?
    發(fā)表于 09-23 08:21

    求大佬分享STM32L051使用HAL庫操作實(shí)例

    求大佬分享STM32L051使用HAL庫操作實(shí)例
    發(fā)表于 11-26 06:47

    【原創(chuàng)精選】RT-Thread征文精選技術(shù)文章合集

    I2C通訊STM32L051使用RT-Thread (四、串口通訊
    發(fā)表于 07-26 14:56

    STM32L051進(jìn)入停止模式時(shí)如何關(guān)閉IWDG?

    當(dāng)我使用STM32L051時(shí),它的iwdg和停止功能,進(jìn)入停止模式后,iwdg也在工作,我想在停止時(shí)關(guān)閉iwdg,但我在FLASH_OPTR寄存器中沒有找到“IWDG_STOP”的這一點(diǎn),所以我不知道該怎么做,因?yàn)槲以?STM8L051
    發(fā)表于 01-13 07:38

    I2C通訊協(xié)議詳解

    stm32+ESP8266+onenet的大佬**兩個(gè)方面不知道大家是不是有我這種情況,學(xué)完STM32之后,感覺學(xué)了個(gè)寂寞。大佬說的話聽都聽不懂,所以復(fù)習(xí)一波深入了解一下原理今天要說的就是I2C
    發(fā)表于 12-29 19:32 ?9次下載
    <b class='flag-5'>I2C</b><b class='flag-5'>通訊</b>協(xié)議詳解

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

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

    【RTT征文精選】畫板子、敲代碼、玩RTOS、搞Linux,大家一起“秀”!

    //STM32L051使用RT-Thread(一、新建項(xiàng)目)STM32L051使用RT-Th
    的頭像 發(fā)表于 08-25 09:56 ?949次閱讀
    【RTT征文精選】畫板子、敲代碼、玩RTOS、搞Linux,大家一起“秀”!
    主站蜘蛛池模板: 狠狠干狠狠干狠狠干 | 爱搞逼综合 | 性8sex亚洲区入口 | 濑亚美莉vs黑人欧美视频 | 最近国语剧情视频在线观看 | 午夜啪啪网站 | 网女色| 亚洲第一综合 | 超黄视频在线观看 | 搜索黄色录像 | 午夜免费小视频 | 扛着高跟鞋丝袜腿呻吟视频 | 视频在线观看一区二区 | 97福利影院 | 男人免费看片 | 亚洲精品在线视频观看 | 亚洲综合色一区 | 精品国产麻豆免费人成网站 | 亚洲一区二区三区免费视频 | 俄罗斯小屁孩cao大人免费 | 黄色片香蕉视频 | 全日本爽视频在线 | 国产美女特级嫩嫩嫩bbb | 人人看人人做人人爱精品 | 亚洲国产精品久久久久婷婷软件 | 国产美女主播在线观看 | 成人永久免费视频 | 啊用力太猛了啊好深视频免费 | 欧美两性网 | 亚洲人成网站色在线观看 | 特黄特黄一级高清免费大片 | 视频一区二区免费 | 国产亚洲一区二区三区啪 | 久久久久久夜精品精品免费啦 | 中文字幕一区二区在线观看 | 四虎在线最新地址公告 | 色吧亚洲欧美另类 | 欧美一级在线观看播放 | 深爱激情五月网 | 午夜999| 中文天堂在线最新版在线www |