將FreeRTOS-Plus-CLI項目加入工程使用歩驟

來源:互聯網
上載者:User

標籤:freertos   cli   freertos-plus-cli   

FreeRTOS+CLI  An Extensible Command Line Interface FrameworkIntroduction

FreeRTOS+CLI (Command Line Interface) provides a simple, small, extensible and RAM efficient method of enabling your FreeRTOS application to process command line input. The steps required to add a command are shown in the clickable diagram below - click each stage in the process individually to be taken to a worked example.

上面是官網關於FreeRTOS+CLI的簡單介紹,在網上搜尋了好久沒看到相關人員的使用,於是憑著感覺開始將源碼加入工程使用,下面是我的步驟經曆。開發環境:系統:win7開發IDE:CoIDE_V2Beta編譯器:GNU Tools ARM Embedded\4.7 2014q2(arm-none-eabi-gcc)嵌入式環境:stm32f103vet6
第一步:首先建立一個簡單的FreeRTOS工程,這個很簡單,請自行參考網上資料。
第二步:下載FreeRTOSV8.2.1原始碼並解壓。
第三步:將“\FreeRTOSV8.2.1\FreeRTOS-Plus\Source\FreeRTOS-Plus-CLI”下的兩個檔案加入工程。其中在標頭檔“FreeRTOS_CLI.h”中加入一個沒定義的資料(這個是我在編譯的時候報錯發現的):#define configCOMMAND_INT_MAX_OUTPUT_SIZE 1000 
第三步:在“\FreeRTOSV8.2.1\FreeRTOS-Plus\Demo\Common\FreeRTOS_Plus_CLI_Demos”是幾個使用的demo,由於我使用的是串口,所以就使用“UARTCommandConsole.c”和“Sample-CLI-commands.c”,所以就將這兩個檔案也加入工程。        在““UARTCommandConsole.c””中修改參數:#define cmdQUEUE_LENGTH 1000  這個資料是串口一下子輸出的資料大小,盡量大點,這樣輸出可以完全,太小的話可能串口輸出不完全,這個是我實際使用發現的。
第四步:由於我使用的串口互動,那麼需要底層的硬體支援,所以就是硬體驅動了。在“UARTCommandConsole.c”中引入了個標頭檔“#include "serial.h"”  。此檔案在FreeRTOS中的關於stm32f10X的demo中有這個標頭檔和.c檔案的實現,直接拷貝過來然後加入工程。
第五步:按自己硬體修改“serial.c”檔案。1:/* Library includes. *///#include "stm32f10x_lib.h"#include "stm32f10x_conf.h"2:xSerialPortInitMinimal()函數中對使用的串口初始化。
3:中斷函數的修改//void vUARTInterruptHandler( void )void USART3_IRQHandler( void )
4:反正在“serial.c”中每個函數要根據自己硬體去修改,最好從頭至尾檢查一遍,防止一個函數參數和使用的硬體介面不同都可能照成使用不成功。
第六步:在main函數中加入相關初始化和CLI任務。vRegisterSampleCLICommands();//此函數是官方提供的例子,可以不加入,如果加入注意裡面的一些函數使用需要開啟一些依靠的宏。vUARTCommandConsoleStart( 1000, 1 );
第七步:編譯無問題後下載和PC通訊,設定好傳輸速率,然後使用官方的幾個例子測試。測試成功,以後就可以自己添加一下互動命令了。
我提供我的工程檔案在github中。下面是工程目錄局部視圖:

著作權聲明:本文為博主原創文章,未經博主允許不得轉載。

將FreeRTOS-Plus-CLI項目加入工程使用歩驟

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.