chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

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

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

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

FreeRTOS_003 _讓系統(tǒng)在板子上跑起來

黃工的嵌入式技術圈 ? 來源:黃工的嵌入式技術圈 ? 2020-03-14 11:25 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

寫在前面

為滿足大家的好奇心,本文將講述幾個步驟可以讓FreeRTOS系統(tǒng)直接在芯片上運行,源代碼里面的許多細節(jié)將在下一篇文章呈現(xiàn)。最后提供可以直接運行的Demo工程給大家,方便大家直接拿來修改測試。

為什么不先講述源代碼?

相信很多朋友開始學習的時候都是參看別人寫好的,可以直接使用的源代碼。在正確代碼工程的基礎上,我們可以展開很多測試,從而可以知道為什么這樣才可以運行。

整個FreeRTOS工程源代碼里面的內(nèi)容牽涉到許多東西,而只需要簡單幾個步驟就能將代碼運行起來,看到效果。如果我一一給你們講述源代碼,估計沒怎么講述幾條,大家都暈了,不知道為什么這個地方是這樣。

所以,給你看寫好源代碼工程,讓你們自己測試,并分析才是最好的。

移植幾個步驟

源代碼里面的內(nèi)容有很少變動,本篇文章不具體講述,只講述移植的幾個步驟,最終讓代碼工程可以運行在板子上。只需要如下簡單幾步即可:

1.提取源碼添加到工程

上一篇文章講述了下載FreeRTOS源碼中各個目錄及文件的意思,也大概講述了一下需要提取源碼。

主要提取:Source目錄+FreeRTOSConfig.h

(里面有部分內(nèi)容未使用,為了不讓大家感覺文件比較多,或者雜,我刪除了)

將這些源碼添加到自己的工程(之前講述并建立好的STM32工程),具體提取的源碼和添加到工程中的效果,請下載代碼查看。

2.添加路徑

我們添加源碼到工程,有部分頭文件include需要添加到工程。因此,我們需要添加相應路徑。

.c源代碼添加路徑的方法見文章:

1.MDK-ARM_新建軟件工程詳細過程

2.EWARM_新建軟件工程詳細過程

這里主要想提醒的是:在IAR工程中有個匯編文件portasm.s包含了,需要我們添加所在文件下的路徑。

注意:是在EWARM的Project -> Options -> Assembler -> Preprocessor中添加。

3.創(chuàng)建自己任務和添加相應代碼

我們創(chuàng)建四個任務,還是使用比較經(jīng)典的LED燈任務。

void AppTaskCreate(void)

{

xTaskCreate(vAppTask1, "Task1", TASK1_STACK_SIZE, NULL, TASK1_PRIORITY, NULL);

xTaskCreate(vAppTask2, "Task2", TASK2_STACK_SIZE, NULL, TASK2_PRIORITY, NULL);

xTaskCreate(vAppTask3, "Task3", TASK3_STACK_SIZE, NULL, TASK3_PRIORITY, NULL);

xTaskCreate(vAppTask4, "Task4", TASK4_STACK_SIZE, NULL, TASK4_PRIORITY, NULL);

}

void vAppTask1(void *pvParameters)

{

for(;;)

{

LED1_TOGGLE;

vTaskDelay(50);

}

}

我新建了app_task.c和app_task.h文件添加任務的源代碼。

4.修改FreeRTOSConfig.h配置文件

這個文件是必須配置的,而且根據(jù)實際情況而定。我們系統(tǒng)的裁剪也與該文件有關,類似于UCOS中的os_cfg.h文件。

比如:主頻、系統(tǒng)滴答、系統(tǒng)堆棧大小等。

#define configCPU_CLOCK_HZ ((unsigned long)72000000)

#define configTICK_RATE_HZ ((TickType_t)100)

#define configTOTAL_HEAP_SIZE ((size_t)(4 * 1024))

本文不講述具體內(nèi)容。后期詳細分析FreeRTOSConfig.h中的每一個參數(shù)。

至此,基本的步驟算是完成了。

代碼下載

目前只提供了STM32F0、F1和F4的Demo工程,后期更新。

【提示:微信公眾號不支持外鏈接】

FreeRTOS_STM32F0_Demo下載地址:

http://pan.baidu.com/s/1qYbmfy0

FreeRTOS_STM32F1_Demo下載地址:

http://pan.baidu.com/s/1jHDHRPc

FreeRTOS_STM32F4_Demo下載地址:

http://pan.baidu.com/s/1bplLZ7x

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

    關注

    3

    文章

    13

    瀏覽量

    8512
  • 源代碼
    +關注

    關注

    96

    文章

    2953

    瀏覽量

    70627
  • FreeRTOS
    +關注

    關注

    14

    文章

    499

    瀏覽量

    67217
  • Source
    +關注

    關注

    0

    文章

    19

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    用一天時間AI重寫一個超輕量的AI 助手,并在60塊的開發(fā)板跑起來!

    2026年初,個人AIAget火得一塌糊涂。OpenClaw"養(yǎng)龍蝦"成了AI圈的社交貨幣,用戶紛紛MacMini和云服務器上部署自己的AI助手。但有個問題一直沒人認真回答過
    的頭像 發(fā)表于 04-01 07:59 ?248次閱讀
    用一天時間<b class='flag-5'>讓</b>AI重寫一個超輕量的AI 助手,并在60塊的開發(fā)板<b class='flag-5'>上</b><b class='flag-5'>跑起來</b>!

    Zephyr OS啟用NPU的實用方案

    今天,我們將正式 Zephyr中加入NPU軟件支持,模型不僅能“跑起來”,還能“跑得飛快”。是的,本期開始就是實戰(zhàn)環(huán)節(jié)!
    的頭像 發(fā)表于 03-09 10:37 ?987次閱讀
    <b class='flag-5'>在</b>Zephyr OS<b class='flag-5'>上</b>啟用NPU的實用方案

    Linux設備樹到底是啥?一張圖看懂硬件適配的「翻譯官」

    你有沒有想過:同一份 Linux 內(nèi)核鏡像,為啥能在不同型號的開發(fā)板跑起來?比如一塊 ARM 架構(gòu)的開發(fā)板,今天換個顯示屏、明天加個傳感器,內(nèi)核不用重新編譯就能識別新硬件 —— 這背后,設備樹(Devicetree) 功不可沒。
    的頭像 發(fā)表于 02-09 17:01 ?1262次閱讀
    Linux設備樹到底是啥?一張圖看懂硬件適配的「翻譯官」

    其利天下:論“高速風筒驅(qū)動方案”中那些看不見的設計關鍵

    聊到高速風筒,大家首先想到的可能是十萬轉(zhuǎn)的電機、超大風量。但很多工程師朋友都知道,這些參數(shù)穩(wěn)定、安全、可靠地跑起來,真正決定用戶體驗“下限”的,往往是藏在里面那顆不顯眼的MCU(微控制器)及其整體方案。
    的頭像 發(fā)表于 02-05 16:44 ?1379次閱讀
    其利天下:論“高速風筒驅(qū)動方案”中那些看不見的設計關鍵

    Linux 下交叉編譯實戰(zhàn):跑起來你的第一個 STM32 程序

    跑起來你的第一個STM32程序。一、準備工作開始之前,需要準備:1、Linux開發(fā)環(huán)境Ubuntu、Debian或其他主流發(fā)行版都可以。2、ARMGCC交叉編譯工具
    的頭像 發(fā)表于 11-24 19:04 ?1024次閱讀
    Linux 下交叉編譯實戰(zhàn):<b class='flag-5'>跑起來</b>你的第一個 STM32 程序

    RTOS 必學概念:任務、信號量、隊列一次搞懂

    個FIFO緩沖區(qū)?”這些問題聽起來基礎,但又總是繞在初學者腦子里。很多人直接拿FreeRTOS、RTX這樣的RTOS例程開搞,能跑起來,卻完全沒理解任務調(diào)度、信號
    的頭像 發(fā)表于 11-17 10:53 ?657次閱讀
    RTOS 必學概念:任務、信號量、隊列一次搞懂

    如何自己設計一個基于RISC-V的SoC架構(gòu),最后可以FPGA跑起來?

    如何自己設計一個基于RISC-V的SoC架構(gòu),最后可以FPGA跑起來
    發(fā)表于 11-11 08:03

    RT Studio 創(chuàng)建 STM32G4xx的板子,LPUART1的初始化存在錯誤怎么解決?

    我是一個新手,剛開始探索RT-Thread+STM32 在用RT Studio創(chuàng)建工程后順利把板子跑起來了,不是開發(fā)板,是自己的板子;但是發(fā)現(xiàn)LPUART1不能使用,后面有折騰了下Studio鏈接
    發(fā)表于 10-11 08:34

    rtthread studio dubuge在線調(diào)試無法查看寄存器和外設寄存器,怎么解決?

    程序也跑起來了,SVDpath也沒問題。
    發(fā)表于 10-09 09:13

    請問rt-thread 能在msp430跑起來嗎?

    剛看到tr-thread,認為很不錯,關注中… 我想問一下,rt-thread能在msp430跑起來嗎? 有沒有人打算往上移植的? [s:175][s:175]
    發(fā)表于 09-22 07:54

    盤點那些電腦“跑起來”的“隱形高速公路”

    PCIe是一種高速串行計算機擴展總線標準,用于計算機主板與外部硬件設備的連接(如顯卡、擴展卡、數(shù)據(jù)采集卡等)。它相對比PCI并行總線,解決了數(shù)據(jù)傳輸帶寬不足、信號干擾的問題。
    的頭像 發(fā)表于 07-29 17:57 ?708次閱讀
    盤點那些<b class='flag-5'>讓</b>電腦“<b class='flag-5'>跑起來</b>”的“隱形高速公路”

    儲能BMS通信“卡殼”?CAN轉(zhuǎn)EtherCAT電池數(shù)據(jù)“跑起來

    儲能電站的“神經(jīng)中樞”里,BMS(電池管理系統(tǒng))就像電池的“健康管家”,但當百節(jié)電池串聯(lián)成儲能集群,傳統(tǒng)CAN總線常陷入“數(shù)據(jù)堵車”——這時候,耐達訊通信技術CAN轉(zhuǎn)EtherCAT方案就成了打通
    發(fā)表于 07-18 15:32

    扎根業(yè)務,這個618商業(yè)智能體先跑起來

    首個人機協(xié)同作戰(zhàn)的京東618,誰在制造數(shù)字員工?
    的頭像 發(fā)表于 06-10 18:09 ?2480次閱讀
    扎根業(yè)務,這個618商業(yè)智能體先<b class='flag-5'>跑起來</b>

    智能車淺談——手把手跑起來(電磁篇)

    前言電磁尋跡小車之前智能車系列已經(jīng)做了一個比較詳細的解析,但是美中不足是知識點被拆的太零散,可能對于新手來說不太友好,所以借著有空就再寫一點能讓車跑起來的方案。當然,也就僅僅限于可以跑起來,元素
    的頭像 發(fā)表于 05-22 19:32 ?3052次閱讀
    智能車淺談——手把手<b class='flag-5'>讓</b>車<b class='flag-5'>跑起來</b>(電磁篇)

    同樣的代碼官方開發(fā)板運行正常,自己板子就跑不起來,怎么辦?

    同樣的代碼Nordic官方開發(fā)板可以運行正常,但在自己板子就跑不起來,如果你碰到了上述情況,建議按照如下步驟進行自檢: 首先確認用戶板
    的頭像 發(fā)表于 05-12 15:26 ?888次閱讀
    同樣的代碼<b class='flag-5'>在</b>官方開發(fā)板<b class='flag-5'>上</b>運行正常,<b class='flag-5'>在</b>自己<b class='flag-5'>板子</b><b class='flag-5'>上</b>就跑不<b class='flag-5'>起來</b>,怎么辦?