女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

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

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

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

解決瑞薩RA2E1開(kāi)發(fā)板在RT-Thread的版本中編譯報(bào)錯(cuò) error: 'board_cfg.h' file not found

冬至子 ? 來(lái)源:recan ? 作者:recan ? 2023-09-28 14:47 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

1 寫(xiě)在前面
既上上周在RA2E1上把RT-Thread跑起來(lái)之后,在上周日的晚上,馬不停蹄地給《致敬未來(lái)的攻城獅計(jì)劃》的小伙伴們開(kāi)了一趟在線直播課,旨在輔導(dǎo)小伙伴們盡快上手基于RA2E1開(kāi)發(fā)板的開(kāi)發(fā),同時(shí)也把基于RT-Thread的一些開(kāi)發(fā)方法和基本操作流程給大家介紹了一遍。

期間遇到了一些小插曲,說(shuō)起來(lái)還是有點(diǎn)尷尬,都怪我這個(gè)直播沒(méi)做好充足的準(zhǔn)備,后面需要加強(qiáng)一下。

2 遇到問(wèn)題
在直播課程中,我主要基于KEIL、RASC、FSP這幾個(gè)軟件給大家演示,介紹如何在KEIL中打開(kāi)RASC,已經(jīng)從零開(kāi)始配置一個(gè)新的外設(shè)(以新增UART1為例)。在RASC中完成基本的配置之后,點(diǎn)擊右上角的 Generate Project Content 完成代碼生成,隨后回到KEIL這邊去編譯,沒(méi)想到遇到了一個(gè)很詭異的報(bào)錯(cuò),現(xiàn)場(chǎng)直播可把我整懵了。看大意就是 board_cfg.h 頭文件沒(méi)找到。蒙頭一看,還不知道咋回事,整了兩下沒(méi)搞定,還是一樣的編譯報(bào)錯(cuò),那直播現(xiàn)場(chǎng)可是 大寫(xiě)的尷尬 !

../libraries/HAL_Drivers/config/ra2l1/uart_config.h(15): warning: In file included from...
./ra_genhal_data.h(5): warning: In file included from...
./ra/fsp/inc/apibsp_api.h(32): warning: In file included from...
ra_cfg/fsp_cfg/bspbsp_cfg.h(6): error: 'board_cfg.h' file not found
#include "board_cfg.h"
^~~~~~~~~~~~~

1.jpg

3 分析問(wèn)題
現(xiàn)場(chǎng)直播的時(shí)候,我以為是我操作有誤,導(dǎo)致引入了什么配置失效;當(dāng)時(shí)看到頭文件找不到,我第一時(shí)間想到的是 頭文件的路徑?jīng)]有添加進(jìn)去,于是我去KEIL的配置中,新增頭文件搜索路徑,結(jié)果還是失敗:

1.jpg

直播現(xiàn)場(chǎng)快速驗(yàn)證發(fā)現(xiàn)不行,我就打圓場(chǎng)搪塞過(guò)去了,演示其他的了。

后面直播結(jié)束后,我以為記得這事,等到我有空坐下來(lái)的時(shí)候,我再好好思考并解決這個(gè)問(wèn)題。

前段時(shí)間參加瑞薩的設(shè)計(jì)大賽,我用的 RA4M2 這塊開(kāi)發(fā)板,基本也是KEIL+RASC的開(kāi)發(fā)環(huán)境,但是印象中是沒(méi)有出現(xiàn)這種更新了RASC的配置,導(dǎo)致KEIL編譯不過(guò)的問(wèn)題。我上網(wǎng)一搜,結(jié)果也是有人遇到類(lèi)似的

1.jpg

原來(lái)是RASC搞的鬼!這么一說(shuō),我回到我的git環(huán)境一看:git status,果然是 board_cfg.h 被刪除了。

1.jpg

有點(diǎn)想不明白的是為何之前 RA4M2的開(kāi)發(fā)配置卻沒(méi)有這樣的問(wèn)題。

突然我想到調(diào)試RA2E1要求瑞薩的FSP整個(gè)配套版本都需要使用 3.5.0 版本,而之前我用的是4.x 的版本,難道是版本不一樣導(dǎo)致的問(wèn)題?

于是我對(duì)比了一下,兩次KEIL工程里面對(duì)RASC/FSP版本的要求,確實(shí)不一樣:

1.jpg

打開(kāi)那個(gè)工程綁定的RASC,版本也確實(shí)不一樣:

1.jpg

但我嘗試過(guò),直接把RA2E1的FAP升級(jí)到RA4M2使用的版本,是不行的;這應(yīng)該就是兩個(gè)大版本沒(méi)有做好兼容吧。

4 解決問(wèn)題

明白了問(wèn)題的根源,解決起來(lái)了就有思路了。

要解決這個(gè)問(wèn)題,不外乎兩種方法:

第一種方式:就是每次執(zhí)行完RASC的配置更新之后,手動(dòng)把 board_cfg.h 文件恢復(fù)一下,再執(zhí)行KEIL的編譯。這種方式是比較笨重的,每次都需要人去接入,非常地 “不程序猿”!

第二種方式:采用自動(dòng)化腳本的方式來(lái)完成這個(gè)復(fù)制、還原的操作,使得在編譯過(guò)程無(wú)感知。作為程序猿,自然是要選擇這個(gè)方式比較聰明。

要使用這種方式,我想到了使用BAT腳本,這個(gè)腳本也很簡(jiǎn)單,就是預(yù)先把board_cfg.h文件備份在一個(gè)目錄,然后使用腳本檢測(cè)對(duì)應(yīng)目標(biāo)目錄下的board_cfg.h是否存在,如果不存在,則拷貝過(guò)去。對(duì)應(yīng)的BAT腳本如下:

@echo off
SET BoardCfgFile=board_cfg.h
SET SourceFile=ra_bak%BoardCfgFile%
SET DstFile=ra_cfgfsp_cfgbsp%BoardCfgFile%
if exist %SourceFile% (
if not exist %DstFile% (
echo f | xcopy %SourceFile% %DstFile% /i /y
) else (
echo %DstFile% is exist!
)
) else (
echo %SourceFile% is not exist!
)

把上面的腳本取名為 board_cfg.bat,在每次KEIL執(zhí)行編譯前調(diào)用一下就可以了。

但是,還是要手動(dòng)去執(zhí)行一下這個(gè)BAT腳本?

這就需要了解一下KEIL里面有個(gè)配置,編譯前、編譯后,可以自定義腳本運(yùn)行的小功能;在這里使用它就可以完美地解決我們的需求。見(jiàn)圖:

1.jpg

5 更多思考
其實(shí),這個(gè)問(wèn)題的引入本質(zhì)還是一個(gè) 版本兼容的問(wèn)題,由此我想到了幾點(diǎn):

版本兼容始終是個(gè)大難題,無(wú)論是小廟還是大廠,都或多或少遇到這樣的困擾,如果大家有什么好的思路,可以在評(píng)論席一起交流交流。
學(xué)會(huì)精準(zhǔn)地尋找問(wèn)題的答案,你遇到的問(wèn)題,保不準(zhǔn)別人早已經(jīng)遇到過(guò);善于發(fā)現(xiàn)它們,并整理成文,方便更多的用它解決問(wèn)題;
善于用腳本去解決一些機(jī)械操作的問(wèn)題;靈活解放自己的雙手這很重要;如果是windows下開(kāi)發(fā),自然少不了BAT腳本;如果是linux下開(kāi)發(fā),少不了SHELL腳本;當(dāng)然,如果你能掌握Python腳本開(kāi)發(fā),那就再好不過(guò)了;
涉及到編譯過(guò)程中,找不到頭文件的問(wèn)題,需要多思考一步。

聲明:本文內(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)投訴
  • python
    +關(guān)注

    關(guān)注

    56

    文章

    4827

    瀏覽量

    86734
  • UART接口
    +關(guān)注

    關(guān)注

    0

    文章

    124

    瀏覽量

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

    關(guān)注

    32

    文章

    1409

    瀏覽量

    41945
  • FSP
    FSP
    +關(guān)注

    關(guān)注

    0

    文章

    44

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    【Vision Board創(chuàng)客營(yíng)連載體驗(yàn)】RA8D1 Vision Board初體驗(yàn)

    1 RA8D1 Vision Board簡(jiǎn)介 Vision-Board 開(kāi)發(fā)板RT-Thread
    發(fā)表于 04-23 21:53

    RA-Eco-RA4M2開(kāi)發(fā)板評(píng)測(cè)】開(kāi)箱和RT-Thread上手操作

    首先感謝電子 & 電子發(fā)燒友給與的機(jī)會(huì)。 一、簡(jiǎn)介 RA-Eco-RA4M2-100PIN-V1.0
    發(fā)表于 04-25 23:33

    RA-Eco-RA4M2開(kāi)發(fā)板評(píng)測(cè)】RT-Thread上驅(qū)動(dòng)I2C溫濕度傳感器

    Elapsed:00:00:43 五、運(yùn)行 Reset開(kāi)發(fā)板后,熟悉的RT-Thread打印。 看看設(shè)備,I2C已經(jīng)OK。 msh />list device dev
    發(fā)表于 05-08 22:42

    如何在CPK-RA6M4 MCU評(píng)估上讓RT-Thread運(yùn)行起來(lái)

    1、打開(kāi) RT-Thread studio,新建 RT-Thread 項(xiàng)目 —> 基于開(kāi)發(fā)板,創(chuàng)建CPK-
    發(fā)表于 07-13 11:28

    RA4系列開(kāi)發(fā)板體驗(yàn)】+rt-thread移植

    hal_entry(void){ rt_kprintf("\\nHello RT-Thread!\\n"); while (1) &
    發(fā)表于 11-24 21:28

    基于 RT-Thread Studio的CPK-RA6M4 開(kāi)發(fā)板環(huán)境搭建

    RT-Thread 項(xiàng)目 —> 基于開(kāi)發(fā)板,創(chuàng)建CPK-RA6M4的工程2、打開(kāi)創(chuàng)建的工程,雙擊
    發(fā)表于 01-10 14:41

    RT-Thread聯(lián)合即將發(fā)布高性?xún)r(jià)比HMI Board

    、靈活性較差。為此,RT-Thread 聯(lián)合 推出了全新的 HMI Board 開(kāi)發(fā)模式,取代傳統(tǒng)的 HMI + 主控
    發(fā)表于 05-08 08:22

    FPB-RA6E1快速原型板】RT-Thread移植

    本篇主要在fpb-ra6e1上移植RT-Thread 5.0。 一、思路 通過(guò)RASC工具生成關(guān)于RA系列MCU的HAL驅(qū)動(dòng)程序,通過(guò)scons配置RT-Thread 相關(guān)參數(shù)。
    發(fā)表于 05-24 23:52

    RA2E1開(kāi)發(fā)板資料

    RA2E1開(kāi)發(fā)板資料
    發(fā)表于 11-07 19:50 ?5次下載
    <b class='flag-5'>RA2E1</b><b class='flag-5'>開(kāi)發(fā)板</b>資料

    工程師自述:如何將RA2E1并入到RT-Thread的主線倉(cāng)庫(kù)

    支持RT-Thread最新版本RA2E1開(kāi)發(fā)板終于要大展身手了 “ 熟悉
    的頭像 發(fā)表于 03-25 20:50 ?1129次閱讀

    支持RT-Thread最新版本RA2E1開(kāi)發(fā)板終于要大展身手了

    支持RT-Thread最新版本RA2E1開(kāi)發(fā)板終于要大展身手了
    的頭像 發(fā)表于 05-16 15:30 ?1301次閱讀
    支持<b class='flag-5'>RT-Thread</b>最新<b class='flag-5'>版本</b>的<b class='flag-5'>瑞</b><b class='flag-5'>薩</b><b class='flag-5'>RA2E1</b><b class='flag-5'>開(kāi)發(fā)板</b>終于要大展身手了

    RA6M3 開(kāi)發(fā)實(shí)踐指南-UART實(shí)踐

    RT-Thread即將發(fā)布一系列RA6M3外設(shè)驅(qū)動(dòng)的實(shí)踐指南,我們將使用RA6M3 HMI-Boar
    的頭像 發(fā)表于 09-23 12:15 ?1947次閱讀

    RA6M3 RT-Thread* LVGL HMI Board開(kāi)發(fā)實(shí)踐指南-GPIO實(shí)踐

    是最常見(jiàn)的外設(shè),GPIO可以實(shí)現(xiàn)對(duì)IO的高低電平控制,讀取IO的電平,以及配置為中斷輸入后,中斷函數(shù)處理相關(guān)事件待。 開(kāi)發(fā)板簡(jiǎn)介 HMI-Board
    的頭像 發(fā)表于 11-30 19:05 ?1894次閱讀
    <b class='flag-5'>RA</b>6M3 <b class='flag-5'>RT-Thread</b>* LVGL HMI <b class='flag-5'>Board</b><b class='flag-5'>開(kāi)發(fā)</b>實(shí)踐指南-GPIO實(shí)踐

    使用e2 studio FSP基于RA2E1定時(shí)器配置PWM輸出

    使用e2 studio FSP基于RA2E1定時(shí)器配置PWM輸出
    的頭像 發(fā)表于 08-01 00:13 ?1227次閱讀
    使用<b class='flag-5'>瑞</b><b class='flag-5'>薩</b><b class='flag-5'>e</b>2 studio FSP基于<b class='flag-5'>RA2E1</b>定時(shí)器配置PWM輸出

    RT-Thread推出基于RT-Thread&;amp;OpenMV的RA8人機(jī)交互方案

    與戰(zhàn)略合作伙伴RT-Thread攜手于2024年2月底正式發(fā)布了全新的硬件產(chǎn)品——基于RT-Thread&;OpenMV的
    的頭像 發(fā)表于 04-01 14:10 ?1593次閱讀
    <b class='flag-5'>瑞</b><b class='flag-5'>薩</b>與<b class='flag-5'>RT-Thread</b>推出基于<b class='flag-5'>RT-Thread&</b>;<b class='flag-5'>amp</b>;OpenMV的<b class='flag-5'>RA</b>8人機(jī)交互方案