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

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

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

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

RT-Thread記錄(十六、SFUD組件 Flash讀寫)

矜辰所致 ? 來(lái)源:矜辰所致 ? 作者:矜辰所致 ? 2022-07-06 10:35 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

從本文開始,測(cè)試學(xué)習(xí)一些 RT-Thread 常用的組件與軟件包,先從剛學(xué)完的 SPI 設(shè)備開始。

目錄

前言
一、SFUD 組件簡(jiǎn)介
1.1 基本簡(jiǎn)介
1.2 SFUD 對(duì) Flash 的管理
二、SFUD 組件操作函數(shù)
2.1 初始化相關(guān)函數(shù)
2.2 設(shè)備訪問函數(shù)
2.2.1 讀數(shù)據(jù)
2.2.2 擦除數(shù)據(jù)
2.2.3 寫數(shù)據(jù)
2.2.4 Flash 狀態(tài)相關(guān)
三、使用測(cè)試
3.1 使用步驟
3.1.1 使能 SPI 設(shè)備
3.1.2 使能 SFUD 組件包
3.1.3 掛載 SFUD 設(shè)備
3.1.4 應(yīng)用程序查找設(shè)備
3.1.5 使用 API 進(jìn)行讀寫操作
3.2 讀寫測(cè)試
結(jié)語(yǔ)

前言

RT-Thread 專欄更新至今,從開發(fā)環(huán)境到內(nèi)核到設(shè)備模型,其實(shí)我們已經(jīng)把使用 RT-Thread 的基礎(chǔ)知識(shí)都講過(guò)一遍,認(rèn)真學(xué)習(xí)的朋友實(shí)際上都已經(jīng)可以使用 RT-Thread 完成一些實(shí)際小項(xiàng)目了。

上一篇文章最后說(shuō)過(guò),RT-Thread 有一個(gè)很大的特點(diǎn)在于他的生態(tài)比一般的 RTOS 完善,我們?cè)趯?shí)際應(yīng)用中,有許許多多現(xiàn)成的官方或者很多開發(fā)者提供的組件或者軟件包,我們可以直接導(dǎo)入工程進(jìn)行使用。

針對(duì)我們 RT-Thread 實(shí)際應(yīng)用,很多時(shí)候不僅是要知道基本的理論,還需要真正的知道怎么實(shí)際“用”起來(lái)。
基于本專欄的開發(fā)環(huán)境 RT-Thread Studio,本文開始我們來(lái)測(cè)試幾個(gè)典型的 組件與軟件包,來(lái)看看他們實(shí)際是如何使用的。

我們剛講完 SPI 設(shè)備,本文就從與 SPI 設(shè)備相關(guān)的組件 SFUD 組件說(shuō)起。


說(shuō)明,對(duì)于 RT-Thread記錄 中組件與軟件包部分的文章,我并不計(jì)劃講太多的原理,因?yàn)槲覀兊淖罱K目的還是在于應(yīng)用,
在之間講解 RT-Thread 的基礎(chǔ)中,為了讓大家更明白 RT-Thread 內(nèi)核以及 I/O 設(shè)備模型,也沒少分析源碼以及講解實(shí)現(xiàn)原理,核心的部分都是自己研究源碼。
對(duì)于 組件與軟件包 部分,我側(cè)重點(diǎn)會(huì)在與的記錄測(cè)試使用的過(guò)程,使得我們能夠快速上手。


??
本 RT-Thread 專欄記錄的開發(fā)環(huán)境:
RT-Thread記錄(一、RT-Thread 版本、RT-Thread Studio開發(fā)環(huán)境 及 配合CubeMX開發(fā)快速上手)
RT-Thread記錄(二、RT-Thread內(nèi)核啟動(dòng)流程 — 啟動(dòng)文件和源碼分析)
??
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ī)制之信號(hào)量、互斥量和事件集)
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 (一、無(wú)線溫濕度傳感器 之 新建項(xiàng)目)
RT-Thread 應(yīng)用篇 — 在STM32L051上使用 RT-Thread (二、無(wú)線溫濕度傳感器 之 CubeMX配置)
RT-Thread 應(yīng)用篇 — 在STM32L051上使用 RT-Thread (三、無(wú)線溫濕度傳感器 之 I2C通訊)
RT-Thread 應(yīng)用篇 — 在STM32L051上使用 RT-Thread (四、無(wú)線溫濕度傳感器 之 串口通訊)
??
RT-Thread 設(shè)備篇系列博文鏈接:
RT-Thread記錄(十、全面認(rèn)識(shí) RT-Thread I/O 設(shè)備模型)
RT-Thread記錄(十一、I/O 設(shè)備模型之UART設(shè)備 — 源碼解析)
RT-Thread記錄(十二、I/O 設(shè)備模型之UART設(shè)備 — 使用測(cè)試)
RT-Thread記錄(十三、I/O 設(shè)備模型之PIN設(shè)備)
RT-Thread記錄(十四、I/O 設(shè)備模型之ADC設(shè)備)
RT-Thread記錄(十五、I/O 設(shè)備模型之SPI設(shè)備)
??
RT-Thread 組件與軟件包系列博文鏈接:
本文是第一篇

一、SFUD 組件簡(jiǎn)介

SFUD (全稱 Serial Flash Universal Driver)是一款開源的串行 SPI Flash 通用驅(qū)動(dòng)庫(kù)。

1.1 基本簡(jiǎn)介

基礎(chǔ)介紹借用官方的說(shuō)明:由于現(xiàn)有市面的串行 Flash 種類居多,各個(gè) Flash 的規(guī)格及命令存在差異, SFUD 就是為了解決這些 Flash 的差異現(xiàn)狀而設(shè)計(jì),讓我們的產(chǎn)品能夠支持不同品牌及規(guī)格的 Flash,提高了涉及到 Flash 功能的軟件的可重用性及可擴(kuò)展性,同時(shí)也可以規(guī)避 Flash 缺貨或停產(chǎn)給產(chǎn)品所帶來(lái)的風(fēng)險(xiǎn)。

在 RT-Thread 中,SFUD 組件的 SPI 驅(qū)動(dòng)是以 RTThread 的I/O設(shè)備模型框架為基礎(chǔ)設(shè)計(jì)的。

使用 SFUD 組件,我們不用自己寫 SPI Flash 的驅(qū)動(dòng)。

支持 SPI/QSPI 接口、面向?qū)ο螅ㄍ瑫r(shí)支持多個(gè) Flash 對(duì)象)、可靈活裁剪、擴(kuò)展性強(qiáng)、支持 4 字節(jié)地址。

☆ SFUD是個(gè)開源的組件,對(duì)于該組件真正權(quán)威的參考說(shuō)明就是該組件作者寫好的 README.md 文件(永遠(yuǎn)要記住第一作者的文檔、官方的文檔永遠(yuǎn)是最具有參考價(jià)值的)。☆

使用 RT-Thread Studio 打開 README 文件如下圖,基本的介紹,函數(shù)使用,說(shuō)明該有的都有,大家可自行查看:

pYYBAGLCtyuAYErkAAKnDPPIaB8359.png

pYYBAGLCtyyAUkaZAAGPyurEM98582.png

本文不深入分析源碼實(shí)現(xiàn)原理,對(duì)于理論只做簡(jiǎn)單說(shuō)明。

1.2 SFUD 對(duì) Flash 的管理

我們以前講過(guò),面向?qū)ο笏枷氲某绦蛟O(shè)計(jì),一般都會(huì)使用一個(gè)結(jié)構(gòu)體 表示一個(gè)對(duì)象,我們講過(guò)的線程、IPC機(jī)制,I/O 設(shè)備都有他們的設(shè)備控制塊結(jié)構(gòu)體。

對(duì)于 SPI Flash 設(shè)備,SFUD 也定義了一個(gè)結(jié)構(gòu)體 sfud_flash 進(jìn)行管理,其位置和內(nèi)容如下圖:

poYBAGLCty2AWngeAADgvNZgXAE958.png

在這個(gè)對(duì)象控制塊中,有一個(gè)成員為 chip ,其類型為芯片信息的結(jié)構(gòu)體sfud_flash_chip,如下圖:

pYYBAGLCty2AYYTKAACU4w5z0a8214.png

在 SFUD 組件中,已經(jīng)定義好了一些支持的 chip 信息,如下圖:

poYBAGLCty6AdrjuAAEqmSG15e8676.png

基本上包括了市面上通用的 SPI Flash 芯片,如果使用的flash不支持 SFUD 組件,可根據(jù) README 文件自行添加。

簡(jiǎn)單的概述就到這里,下面我們來(lái)看看 SFUD 組件提供的操作函數(shù)。

二、SFUD 組件操作函數(shù)

根據(jù) SFUD 組件的 README 文件,SFUD 組件提供的 API 框架圖如下:

pYYBAGLCty6AABv-AAEoVaT5V1I877.png

這里要說(shuō)明一下,上面的 API 是 SFUD 對(duì)外標(biāo)準(zhǔn)的通用 API,就是不管用什么系統(tǒng),或者使用裸機(jī),移植好了 SFUD組件這些 API 都可以使用。

對(duì)于我們使用的 RT-Thread 來(lái)說(shuō),訪問設(shè)備的函數(shù)就是 SFUD 設(shè)備的標(biāo)準(zhǔn) API。

但是對(duì)于初始化相關(guān)的部分來(lái)說(shuō),RT-Thread 官方給我們寫好了標(biāo)準(zhǔn)的驅(qū)動(dòng)函數(shù)。

2.1 初始化相關(guān)函數(shù)

在工程文件中,與 RT-Thread 初始化驅(qū)動(dòng)文件如下:

poYBAGLCty6ANEBjAAAxMkyhjMk597.png

其提供的函數(shù)有( 對(duì)于 RT-Thread 中初始化相關(guān)的函數(shù)使用,在本文后面使用測(cè)試小節(jié)會(huì)有詳細(xì)示例說(shuō)明):

/**
 * Probe SPI flash by SFUD(Serial Flash Universal Driver) driver library and though SPI device.
使用 SFUD 探測(cè) spi_dev_name 從設(shè)備,
并將 spi_dev_name 連接的 flash 初始化為塊設(shè)備,名稱 spi_flash_dev_name
 */
rt_spi_flash_device_t rt_sfud_flash_probe(const char *spi_flash_dev_name, const char *spi_dev_name);

/**
 * Probe SPI flash by SFUD (Serial Flash Universal Driver) driver library and though SPI device by specified configuration.
 * rt_sfud_flash_probe 調(diào)用了此函數(shù)
使得與底層 SFUD 本身的初始化文件關(guān)聯(lián)起來(lái)
 */
rt_spi_flash_device_t rt_sfud_flash_probe_ex(const char *spi_flash_dev_name, const char *spi_dev_name,
        struct rt_spi_configuration *spi_cfg, struct rt_qspi_configuration *qspi_cfg);

/**
 * Delete SPI flash device
 	刪除SPI SFUD 設(shè)備
 */
rt_err_t rt_sfud_flash_delete(rt_spi_flash_device_t spi_flash_dev);

/**
 * Find sfud flash device by SPI device name
通過(guò) SPI 設(shè)備名稱 找到一個(gè) SFUD Flash 設(shè)備
 */
sfud_flash_t rt_sfud_flash_find(const char *spi_dev_name);

/**
 * Find sfud flash device by flash device name
 通過(guò) Flash 設(shè)備名稱 找到一個(gè) SFUD Flash 設(shè)備
 */
sfud_flash_t rt_sfud_flash_find_by_dev_name(const char *flash_dev_name);

函數(shù)我們不做深入分析,大家需要學(xué)會(huì)使用,以前有很多文章都有源碼分析說(shuō)明,源碼自己查看,比如其中比較關(guān)鍵的一個(gè)函數(shù) rt_sfud_flash_probe_ex

pYYBAGLCty-AeK7AAADqwvJfwls736.png

2.2 設(shè)備訪問函數(shù)

設(shè)備訪問函數(shù),SFUD 組件中 README 文件都有說(shuō)明的,函數(shù)使用的注意事項(xiàng)可查看組件說(shuō)明文件。

這里統(tǒng)一列一下方便以后復(fù)制使用:

2.2.1 讀數(shù)據(jù)

/*
參數(shù)	描述
flash	Flash 設(shè)備對(duì)象
addr	起始地址
size	從起始地址開始讀取數(shù)據(jù)的總大小
data	讀取到的數(shù)據(jù)
*/
sfud_err sfud_read(const sfud_flash *flash, uint32_t addr, size_t size, uint8_t *data)

2.2.2 擦除數(shù)據(jù)

部分擦除:

/*
參數(shù)	描述
flash	Flash 設(shè)備對(duì)象
addr	起始地址
size	從起始地址開始擦除數(shù)據(jù)的總大小
*/
sfud_err sfud_erase(const sfud_flash *flash, uint32_t addr, size_t size)

全片擦除:

/*
參數(shù)	描述
flash	Flash 設(shè)備對(duì)象
*/
sfud_err sfud_chip_erase(const sfud_flash *flash)

2.2.3 寫數(shù)據(jù)

直接寫:

/*
參數(shù)	描述
flash	Flash 設(shè)備對(duì)象
addr	起始地址
size	從起始地址開始寫入數(shù)據(jù)的總大小
data	待寫入的數(shù)據(jù)
*/
sfud_err sfud_write(const sfud_flash *flash, uint32_t addr, size_t size, const uint8_t *data)

先擦除再寫:

/*
參數(shù)	描述
flash	Flash 設(shè)備對(duì)象
addr	起始地址
size	從起始地址開始寫入數(shù)據(jù)的總大小
data	待寫入的數(shù)據(jù)
*/
sfud_err sfud_erase_write(const sfud_flash *flash, uint32_t addr, size_t size, const uint8_t *data)

2.2.4 Flash 狀態(tài)相關(guān)

讀取 Flash 狀態(tài):

/*
參數(shù)	描述
flash	Flash 設(shè)備對(duì)象
status	當(dāng)前狀態(tài)寄存器值
*/
sfud_err sfud_read_status(const sfud_flash *flash, uint8_t *status)

修改 Flash 狀態(tài):

/*
參數(shù)	描述
flash	Flash 設(shè)備對(duì)象
is_volatile	是否為易閃失的,true: 易閃失的,及斷電后會(huì)丟失
status	當(dāng)前狀態(tài)寄存器值
*/
sfud_err sfud_write_status(const sfud_flash *flash, bool is_volatile, uint8_t status)

三、使用測(cè)試

本小節(jié)說(shuō)明一下在 RT-Thread Studio 上使用 SFUD組件的步驟,然后我們使用示例進(jìn)行基本的測(cè)試:

3.1 使用步驟

3.1.1 使能 SPI 設(shè)備

根據(jù)文章 RT-Thread記錄(十五、I/O 設(shè)備模型之SPI設(shè)備)接描述 中 《3.1 SPI 設(shè)備使用步驟》說(shuō)明使能 SPI 總線。

注冊(cè) SPI 總線設(shè)備,使用list_device可查看結(jié)果:

poYBAGLCty-AC-z2AAAhQsXu_8k506.png

3.1.2 使能 SFUD 組件包

和使能 SPI 設(shè)備一樣,在 RT-Thread Studio 打開 RT-Thread Settings 打開 SFUD 組件使能,如下圖:

pYYBAGLCty-AfmfZAADxVIRSdxg771.png

使能完成,我們?cè)趹?yīng)用層就可直接調(diào)用上一小節(jié)將的 SFUD 操作函數(shù)了。

在工程中, SFUD 組件相關(guān)的程序位置如下:

poYBAGLCty-AYkJJAABct_Lykcc159.png

3.1.3 掛載 SFUD 設(shè)備

在使用 SFUD 設(shè)備前,需要掛載,類似把 SPI 設(shè)備掛載至 SPI 總線上一樣,使用如下操作:

pYYBAGLCtzCABg97AACLX9gDoiw659.png

忘了另外一塊開發(fā)板不是 W25Q128 而是 W25Q64,所以最終找到的是 W25Q64DW。

這里有個(gè)小問題說(shuō)明一下, DBG 定義的問題,自己把mian里面的注釋稍微修改一下:

poYBAGLCtzCARZ0QAAC13QELDbo774.png

3.1.4 應(yīng)用程序查找設(shè)備

使用 rt_sfud_flash_find 或者 rt_sfud_flash_find_by_dev_name 獲取設(shè)備句柄:

pYYBAGLCtzCAJnnOAAB3tt49smM978.png

3.1.5 使用 API 進(jìn)行讀寫操作

完成上述步驟,就可以根據(jù)自己的應(yīng)用,使用上面介紹的 SFUD 組件操作函數(shù)訪問設(shè)備部分進(jìn)行 Flash 的操作了。

比如:

poYBAGLCtzGAaYtuAABNRmtwwCM535.png

3.2 讀寫測(cè)試

在上面的使用步驟說(shuō)明中,其實(shí)我已經(jīng)把自己做的簡(jiǎn)單測(cè)試都說(shuō)了一遍,這里我們上一下測(cè)試部分代碼,然后看一下測(cè)試效果:

#include 
#include "main.h"
#include "usart.h"
#include "gpio.h"
#include 
#include "board.h"
#include "drv_spi.h"
#include "spi_flash_sfud.h"


#ifndef DBG_TAG
#define DBG_TAG "main"
#endif
#ifndef DBG_LVL
#define DBG_LVL DBG_LOG
#endif

#include 

//省略...

sfud_flash *test_sfud = NULL;

const uint8_t test_data[] = "this is a test data!";

//省略...

static void key1_thread_entry(void *par){

    while(1){
        if(key1_read == 0){
            rt_thread_mdelay(10); //去抖動(dòng)
            if(key1_read == 0){
                rt_kprintf("write flash ..\r\n");
//                sfud_write(test_sfud, 13, sizeof(test_data), test_data);
                sfud_erase_write(test_sfud, 13, sizeof(test_data), test_data);
             }
             while(key1_read == 0){rt_thread_mdelay(10);//去抖動(dòng)
            }
        }
        rt_thread_mdelay(1);
   }
}

static void key2_thread_entry(void *par){
    uint8_t read_data[30] = {0};
//    void *str = RT_NULL;
    while(1){
        if(key2_read == 0){
            rt_thread_mdelay(10); //去抖動(dòng)
            if(key2_read == 0){
                rt_kprintf("read flash ..\r\n");
//                sfud_read(test_sfud, 0, sizeof(test_data), (uint8_t *)str);
                sfud_read(test_sfud, 13, sizeof(test_data), read_data);
                rt_kprintf("%s",read_data);
             }
             while(key2_read == 0){rt_thread_mdelay(10);//去抖動(dòng)
            }
        }
        rt_thread_mdelay(1);
   }
}

//省略...

int main(void)
{

//省略...
    rt_hw_spi_device_attach("spi1", "spi10", GPIOA, GPIO_PIN_4);  // CS 腳:PA4

    /* 使用 SFUD 探測(cè) spi10 從設(shè)備,并將 spi10 連接的 flash 初始化為塊設(shè)備,名稱 W25Q128 */
    if (RT_NULL == rt_sfud_flash_probe("W25Q64", "spi10"))
    {
        return -RT_ERROR;
    };

//  test_sfud = rt_sfud_flash_find("spi10"); //
    test_sfud = rt_sfud_flash_find_by_dev_name("W25Q64");

    if(RT_NULL == test_sfud){
          LOG_E("find sfud_flash failed!...\n");
    }

   //省略...
    return RT_EOK;
}

測(cè)試結(jié)果:

pYYBAGLCtzKAZJiFAABKrs1Upi0960.png

測(cè)試細(xì)節(jié)說(shuō)明:

在測(cè)試的時(shí)候我使用了一個(gè)按鍵線程寫 flash,最開始的時(shí)候使用的是 512 字節(jié)大小的線程棧:

poYBAGLCtzKAP3SqAABO8T2l2og905.png

使用函數(shù)sfud_erase_write 會(huì)比 sfud_write 函數(shù)占用更多的內(nèi)存。

結(jié)語(yǔ)

本文我們從上一篇文章剛學(xué)完的 SPI 設(shè)備相關(guān)的 SFUD 組件開始,接觸到了 RT-Thread 的組件與軟件包,可以看出,對(duì)于常用的設(shè)備使用 RT-Thread 開發(fā)有多么的方便了。

??
但是前提當(dāng)然是得對(duì) RT-Thread 的面向?qū)ο蟮乃枷?,I/O 設(shè)備模型等基礎(chǔ)有一定的認(rèn)識(shí),如果只是為了使用,看一篇文章即可,如果是為了理解掌握,還得多多了解 RT-Thread 基礎(chǔ)相關(guān)知識(shí),比如博主的 RT-Thread 專欄 = =! O(∩_∩)O哈哈~

再次申明一下,對(duì)于組件與軟件包,因?yàn)槎际谴罄虚_發(fā)者們寫好的驅(qū)動(dòng),所以我偏向的重點(diǎn)是在于學(xué)會(huì)使用,說(shuō)明文檔在每個(gè)組件或者軟件包都有作者詳細(xì)的說(shuō)明,那才是最好的參考資料。
??

希望大家多多支持!本文就到這里,謝謝!

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

    關(guān)注

    10

    文章

    1678

    瀏覽量

    151781
  • RTOS
    +關(guān)注

    關(guān)注

    24

    文章

    851

    瀏覽量

    121155
  • 組件
    +關(guān)注

    關(guān)注

    1

    文章

    532

    瀏覽量

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

    關(guān)注

    32

    文章

    1406

    瀏覽量

    41922
  • SFUD
    +關(guān)注

    關(guān)注

    0

    文章

    5

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    RT-Thread記錄(一、版本開發(fā)環(huán)境及配合CubeMX)

    RT-Thread 學(xué)習(xí)記錄的第一篇文章,RT-Thread記錄(一、RT-Thread 版本、RT-T
    的頭像 發(fā)表于 06-20 00:28 ?5959次閱讀
    <b class='flag-5'>RT-Thread</b><b class='flag-5'>記錄</b>(一、版本開發(fā)環(huán)境及配合CubeMX)

    RT-Thread記錄(十七、 AT組件-使用at軟件包)

    AT 組件RT-Thread 一個(gè)比較典型的組件, 解決了不同網(wǎng)絡(luò)模塊AT命令之間的差異導(dǎo)致的重復(fù)開發(fā)的問題,大幅度簡(jiǎn)化了MCU+無(wú)線模塊方案開發(fā)。
    的頭像 發(fā)表于 07-06 20:33 ?5476次閱讀
    <b class='flag-5'>RT-Thread</b><b class='flag-5'>記錄</b>(十七、 AT<b class='flag-5'>組件</b>-使用at軟件包)

    RT-Thread記錄(二、RT-Thread內(nèi)核啟動(dòng)流程)

    在前面我們RT-Thread Studio工程基礎(chǔ)之上講一講RT-Thread內(nèi)核啟動(dòng)流程.
    的頭像 發(fā)表于 06-20 00:30 ?5700次閱讀
    <b class='flag-5'>RT-Thread</b><b class='flag-5'>記錄</b>(二、<b class='flag-5'>RT-Thread</b>內(nèi)核啟動(dòng)流程)

    RT-Thread Studio配置QSPI和SFUD的相關(guān)資料推薦

    SFUD配置1前言本次采用的是正點(diǎn)原子STM32F767系列的板子,區(qū)別于F1及F4上的SPI,F(xiàn)7增加了QSPI。其上板載的W25Q256FV型號(hào)的Flash也是通過(guò)QSPI實(shí)現(xiàn)通信讀寫的。網(wǎng)上關(guān)于
    發(fā)表于 12-10 06:17

    如何使用RT-Thread AT組件

    文章目錄前言硬件準(zhǔn)備軟件準(zhǔn)備百問網(wǎng)STM32F103ESP8266 01SESP8266介紹ESP8266 01S 技術(shù)規(guī)格參數(shù)RT-Thread源碼RT-Thread AT組件前言本文介紹
    發(fā)表于 12-10 06:14

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

    、I/O 設(shè)備模型之SPI設(shè)備)RT-Thread記錄十六、SFUD組件 Flash
    發(fā)表于 07-26 14:56

    基于RT-Thread的EasyFlash移植參考示例

    1、簡(jiǎn)介本目錄下主要存放了基于 RT-Thread 的移植參考示例。主要基于以下兩種底層 Flash 驅(qū)動(dòng)fal : Flash 抽象層SFUD : 萬(wàn)能 SPI
    發(fā)表于 11-23 15:46

    RT-Thread軟件包定義和使用

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

    記錄——基于 RT-Thread 實(shí)現(xiàn) USB 虛擬串口

    記錄——基于 RT-Thread 實(shí)現(xiàn) USB 虛擬串口記錄一下我在正點(diǎn)原子 F429 阿波羅開發(fā)板上實(shí)現(xiàn) USB 虛擬串口的過(guò)程,希望可以幫助到其他想要學(xué)習(xí) USB 的人。首先,我更新了一下
    發(fā)表于 12-02 17:21 ?6次下載
    <b class='flag-5'>記錄</b>——基于 <b class='flag-5'>RT-Thread</b> 實(shí)現(xiàn) USB 虛擬串口

    RT-Thread 應(yīng)用筆記 - RTC Alarm 組件的使用

    RT-Thread 應(yīng)用筆記 - 不正確使用LOG也會(huì)引發(fā)hard faultRT-Thread 應(yīng)用筆記 - RTC Alarm 組件的使用RT-Thread 應(yīng)用筆記 - free
    發(fā)表于 01-25 18:18 ?10次下載
    <b class='flag-5'>RT-Thread</b> 應(yīng)用筆記 - RTC Alarm <b class='flag-5'>組件</b>的使用

    RT-Thread學(xué)習(xí)筆記 RT-Thread的架構(gòu)概述

    的種種優(yōu)越之處。RT-Thread 是一款完全由國(guó)內(nèi)團(tuán)隊(duì)開發(fā)維護(hù)的嵌入式實(shí)時(shí)操作系統(tǒng)(RTOS),具有完全的自主知識(shí)產(chǎn)權(quán)。經(jīng)過(guò) 16 個(gè)年頭的沉淀,伴隨著物聯(lián)網(wǎng)的興起,它正演變成一個(gè)功能強(qiáng)大、組件豐富的物
    的頭像 發(fā)表于 07-09 11:27 ?5026次閱讀
    <b class='flag-5'>RT-Thread</b>學(xué)習(xí)筆記 <b class='flag-5'>RT-Thread</b>的架構(gòu)概述

    RT-Thread文檔_RT-Thread 簡(jiǎn)介

    RT-Thread文檔_RT-Thread 簡(jiǎn)介
    發(fā)表于 02-22 18:22 ?5次下載
    <b class='flag-5'>RT-Thread</b>文檔_<b class='flag-5'>RT-Thread</b> 簡(jiǎn)介

    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文檔_FAL 組件

    RT-Thread文檔_FAL 組件
    發(fā)表于 02-22 18:41 ?0次下載
    <b class='flag-5'>RT-Thread</b>文檔_FAL <b class='flag-5'>組件</b>

    【S32K146 RT-Thread】之 使用SFUD組件驅(qū)動(dòng)spi flash

    【S32K146 RT-Thread】之 使用SFUD組件驅(qū)動(dòng)spi flash
    的頭像 發(fā)表于 11-21 01:05 ?1135次閱讀
    【S32K146 <b class='flag-5'>RT-Thread</b>】之 使用<b class='flag-5'>SFUD</b><b class='flag-5'>組件</b>驅(qū)動(dòng)spi <b class='flag-5'>flash</b>