久久久国产精品视频袁燕,99re久久精品国产,亚洲欧美日韩国产综合v,天天躁夜夜躁狠狠久久,激情五月婷婷激情五月婷婷

  • 回復
  • 收藏
  • 點贊
  • 分享
  • 發(fā)新帖

【Rt-thread學習記】工具介紹及移植篇

此篇開始講如何將rtt移植到我們的目標開發(fā)板上,移植的過程實際是一個適配的過程,這個過程可以很簡單,也可以很復雜,這里講下這兩者的區(qū)別,先說下最傳統(tǒng)的os的移植:基本上拷貝核心C文件到你的工程內部,然后再指定的位置編寫代碼進行調整,然后編譯工程進行仿真驗證是否移植成,這種方式很原始,優(yōu)點是節(jié)省內存開銷,你要啥就打開啥,不要的全部都注釋掉,或者是刪掉,缺點也是很明顯,移植過程很麻煩,相對繁瑣,可以能要花費很長的時間反復調整,最終等你移植成功了,感覺太麻煩了,反而失去了進一步了解的興趣。

所以這里我推薦官方給出的一種移植方法,不需要你直接操作底層C文件,也不需要你手動進行代碼調整,就可以輕松的創(chuàng)建一個已經加入RTT的項目工程,所需要做的就是打開它,編譯它,燒錄它,至此整個移植的過程就結束了,移植的目的是讓你能盡快的上手,盡快的開始玩耍這款操作系統(tǒng),這樣能保持持續(xù)學習的動力,等你把它撩的差不多了,反過來,你可以不依靠工具,進行手工改和移植,想怎么玩就怎么玩。這樣做的代價就是內存開銷,不論rom還是ram,既然是體驗和學習階段就先不要考慮成本因素了,先搞定它才是我們的目標。

實際在應用的時候,你只需要兩個工具和rtt的源碼庫就ok了,所有這些都可以直接在RTT官網免費down。like下圖:

1111


全部回復(19)
正序查看
倒序查看
lingyan
LV.8
2
2019-02-13 15:08
等著學習
0
回復
2019-02-16 13:26

具體的如何安裝GIT ENV工具就不介紹了,官網的文檔介紹的很詳細,這里還是談一些理解,關于GIT ENV 和RTT源碼,有了這三部分就可以量體定做自己需要的項目,舉個不太恰當的例子來闡述下三者之間的關系,打個比方,今天是2019年2月16日,剛過完情人節(jié),兜里毛爺爺有限,今天想去吃點好吃的,找了家不錯的小店,進去看了一下菜譜,發(fā)現兜里錢連個宮保雞丁都吃不起,沒辦法,還是決定去找事買肉菜調味料回家自己做,這里的肉菜調味料就是我們的RTT源碼,接下來回到家,用刀把肉切好,然后刷干凈鍋碗瓢盆,準備開始烹飪時候發(fā)現家里的沒有花生油,怎么辦就要找個小商店去買咯,這里的鍋碗瓢盆刀叉槍棒就是我們的ENV工具,小商店可以理解為GIT倉庫,缺啥就去那里下載,準備好,就展現廚藝,一到豐盛的RTT工程盛宴或許很快就可以端上桌面了(比喻不太恰當)。

這里強調下此篇移植的重點,不談如何挑肉買菜,也不講怎么去小商店買油,而是把重點放在當你準備好肉菜,買好油回來以后怎么做出一道菜,這是此篇的核心,這里就是我們所說的ENV工具的使用,在繼續(xù)深入介紹使用ENV之前,還是看下肉菜長什么模樣,省的拿錯了材料(rt-thread V3.0.4):



0
回復
2019-02-16 14:18
@程序小白
具體的如何安裝GITENV工具就不介紹了,官網的文檔介紹的很詳細,這里還是談一些理解,關于GITENV和RTT源碼,有了這三部分就可以量體定做自己需要的項目,舉個不太恰當的例子來闡述下三者之間的關系,打個比方,今天是2019年2月16日,剛過完情人節(jié),兜里毛爺爺有限,今天想去吃點好吃的,找了家不錯的小店,進去看了一下菜譜,發(fā)現兜里錢連個宮保雞丁都吃不起,沒辦法,還是決定去找事買肉菜調味料回家自己做,這里的肉菜調味料就是我們的RTT源碼,接下來回到家,用刀把肉切好,然后刷干凈鍋碗瓢盆,準備開始烹飪時候發(fā)現家里的沒有花生油,怎么辦就要找個小商店去買咯,這里的鍋碗瓢盆刀叉槍棒就是我們的ENV工具,小商店可以理解為GIT倉庫,缺啥就去那里下載,準備好,就展現廚藝,一到豐盛的RTT工程盛宴或許很快就可以端上桌面了(比喻不太恰當)。這里強調下此篇移植的重點,不談如何挑肉買菜,也不講怎么去小商店買油,而是把重點放在當你準備好肉菜,買好油回來以后怎么做出一道菜,這是此篇的核心,這里就是我們所說的ENV工具的使用,在繼續(xù)深入介紹使用ENV之前,還是看下肉菜長什么模樣,省的拿錯了材料(rt-threadV3.0.4):[圖片]

繼續(xù),在開始ENV之前,先找到適合你的板子的類型的bsp目錄,RTT給你準備了很多BSP類型:

在這里針對我的MCU平臺,我選擇stmf10x-HAL,于是乎找到她,點擊進入,然后空白處右鍵鼠標,準備ENV:

ComEmu Here  ~!??!

0
回復
2019-02-16 15:16
@程序小白
繼續(xù),在開始ENV之前,先找到適合你的板子的類型的bsp目錄,RTT給你準備了很多BSP類型:[圖片]在這里針對我的MCU平臺,我選擇stmf10x-HAL,于是乎找到她,點擊進入,然后空白處右鍵鼠標,準備ENV:[圖片]ComEmuHere ~!??!

基于3.0.4存在一些問題,改用master版本,進行ENV學習(說實話,RTT相對還是年輕,有許多不足需要完善,但是這不耽誤我們的學習和使用):

先看下3.0.4存在的問題(目前無法解決,):


0
回復
2019-02-17 20:25
@程序小白
基于3.0.4存在一些問題,改用master版本,進行ENV學習(說實話,RTT相對還是年輕,有許多不足需要完善,但是這不耽誤我們的學習和使用):先看下3.0.4存在的問題(目前無法解決,):[圖片]

在介紹命令之前,先簡單熟悉下env的操作,這個非圖形化的軟件,看著還是比較高端大氣上檔次,命令式的操作對于第二次接觸這種類型,感覺有些懷念,想起了小上學時候用的dos命令,很快便愛上了這種方式,linux從未離去,想要玩的高端還是要學習,接下里看下env一個很重要的設置,幫助筒子們快速進行裁剪。

當你打開env時,它是在你目前打開的根目錄,like this:

在工具界面打開:

如何進入響應的BSP目錄,如何使用cd命令,對于第一次接觸env的筒子們要不小的難度:

like this:

這時候可以設置一下ENV工具,然后單擊右鍵就可以在相應的目錄下進行裁剪編譯工程了,不需要繁瑣的cd(當然如果你能愛上這種方式,或許會誕生另一個大神):

0
回復
2019-02-17 20:34
@程序小白
在介紹命令之前,先簡單熟悉下env的操作,這個非圖形化的軟件,看著還是比較高端大氣上檔次,命令式的操作對于第二次接觸這種類型,感覺有些懷念,想起了小上學時候用的dos命令,很快便愛上了這種方式,linux從未離去,想要玩的高端還是要學習,接下里看下env一個很重要的設置,幫助筒子們快速進行裁剪。當你打開env時,它是在你目前打開的根目錄,likethis:在工具界面打開:[圖片]如何進入響應的BSP目錄,如何使用cd命令,對于第一次接觸env的筒子們要不小的難度:likethis:[圖片]這時候可以設置一下ENV工具,然后單擊右鍵就可以在相應的目錄下進行裁剪編譯工程了,不需要繁瑣的cd(當然如果你能愛上這種方式,或許會誕生另一個大神):[圖片]

接下來介紹一下:如何設置ENV,通過右擊菜單進入相應目錄進行操作:

one step:

two step:

==》Register   ==》Save setting,到這里軟件的設置就結束了,剩下來講一下如何使用,這里分兩步,多余的命令一概不講:

想要了解可以參考文檔:

接下來先看一下這個編譯功能該怎么用:

0
回復
2019-02-17 20:43
@程序小白
接下來介紹一下:如何設置ENV,通過右擊菜單進入相應目錄進行操作:onestep:[圖片]twostep:[圖片]==》Register  ==》Savesetting,到這里軟件的設置就結束了,剩下來講一下如何使用,這里分兩步,多余的命令一概不講:想要了解可以參考文檔:接下來先看一下這個編譯功能該怎么用:

編譯的第一個命令:scons

找到對應MCU系列的bsp,右擊ENV here:

這時候默認你看到的目錄like this:

因為我們電腦裝了MDK,所以你能看到目標工程的圖標,一個是MDK4 一個是MDK5:說明目前存在一個工程模板:這時候你可以點擊MDK打開,并進行編譯工程,還可以直接輸入scons命令:

like this:不需要打開MDK 編譯工程:

請直接忽略 warning: 

done building targets. 完成工程編譯。


0
回復
2019-02-17 20:51
@程序小白
編譯的第一個命令:scons找到對應MCU系列的bsp,右擊ENVhere:這時候默認你看到的目錄likethis:[圖片]因為我們電腦裝了MDK,所以你能看到目標工程的圖標,一個是MDK4一個是MDK5:說明目前存在一個工程模板:這時候你可以點擊MDK打開,并進行編譯工程,還可以直接輸入scons命令:likethis:不需要打開MDK編譯工程:[圖片]請直接忽略warning: donebuildingtargets.完成工程編譯。
接下來我們試一下創(chuàng)建工程的命令,先把已經存在的工程刪除:

這時候輸入命令:scons --target=mdk5

點擊回車,gogogo:

輸出:done building targets. 再次打開根目錄,這時:


0
回復
2019-02-17 20:52
@程序小白
接下來我們試一下創(chuàng)建工程的命令,先把已經存在的工程刪除:[圖片]這時候輸入命令:scons--target=mdk5點擊回車,gogogo:[圖片][圖片]輸出:donebuildingtargets.再次打開根目錄,這時:[圖片]
先到這里,先哄娃睡覺,筒子們晚安,希望明天繼續(xù),生命不息,like不止。。。
0
回復
2019-02-19 17:08
@程序小白
先到這里,先哄娃睡覺,筒子們晚安,希望明天繼續(xù),生命不息,like不止。。。

繼續(xù)學習,接下來看一下ENV 圖形化的功能,這里才是重點,是否還記得用u盤裝系統(tǒng)時候,進的PE, 打開ENV,輸入:menuconfig

神奇開始


0
回復
2019-02-19 17:12
@程序小白
繼續(xù)學習,接下來看一下ENV圖形化的功能,這里才是重點,是否還記得用u盤裝系統(tǒng)時候,進的PE,打開ENV,輸入:menuconfig神奇開始:[圖片][圖片]

這里展開看下講一下每一項:

                            1》Rt-Thread Kernel:這一項是rtt  os內核的相關參數配置,主要是應用一個標準os需要根據硬件資源和自己的需求進行相應的配置。通用os 的內核在這里

                            

0
回復
2019-02-19 17:17
@程序小白
這里展開看下講一下每一項:                           1》Rt-ThreadKernel:這一項是rtt os內核的相關參數配置,主要是應用一個標準os需要根據硬件資源和自己的需求進行相應的配置。通用os的內核在這里                            [圖片]

2》Rt-thread components:組件層:你需要使用哪種組件在這里面可以選,也可以配置,例如comand shell組件,這里進行使能或者關閉。

0
回復
2019-02-19 17:34
@程序小白
2》Rt-threadcomponents:組件層:你需要使用哪種組件在這里面可以選,也可以配置,例如comandshell組件,這里進行使能或者關閉。[圖片]

3》RT-thread online packages :RTT軟件包:基于應用層軟件封裝,以包的形式進行管理,因為rtt是一個面向物聯(lián)網的os,所以這里著重看一下 iot底下都有些什么好玩的東東:

0
回復
sabrina9988
LV.7
15
2019-02-25 15:00
@程序小白
3》RT-threadonlinepackages:RTT軟件包:基于應用層軟件封裝,以包的形式進行管理,因為rtt是一個面向物聯(lián)網的os,所以這里著重看一下iot底下都有些什么好玩的東東:[圖片]
 學習一下
0
回復
2019-02-27 08:39
@sabrina9988
 學習一下
謝謝支持
0
回復
2019-02-27 09:00
@程序小白
謝謝支持

在這里,當你選中軟件包以后會基于當前的軟件包進行編譯,在這里還需要介紹一個命令功能,就是軟件包的更新,我們之前安裝git實際上就是為本項功能做準備的,因為軟件包實際是在不停的更新的,所以有時候需要獲取最新的軟件包,或者選中的軟件包,當前的工具中沒有,這時候需要你下載軟件包,就需要用到,下面的命令了:

pkgs --update

我這里已經下載了最新的軟件包,所以,使用此命令時,如下:

0
回復
2019-02-27 09:38
@程序小白
在這里,當你選中軟件包以后會基于當前的軟件包進行編譯,在這里還需要介紹一個命令功能,就是軟件包的更新,我們之前安裝git實際上就是為本項功能做準備的,因為軟件包實際是在不停的更新的,所以有時候需要獲取最新的軟件包,或者選中的軟件包,當前的工具中沒有,這時候需要你下載軟件包,就需要用到,下面的命令了:pkgs--update我這里已經下載了最新的軟件包,所以,使用此命令時,如下:[圖片]

還有一個命令差點拉下:有關于ENV軟件更新的,目前ENV的最新版本為V1.1.0,這個軟件是個命令式的處理軟件,當然也支持本地更新,不需要去下載最新的軟件,只需要通過命令,在本地進行更新就可以,這里涉及的命令如下:

pkgs --upgrade,具體操作如下:

0
回復
2019-02-27 09:47
@程序小白
還有一個命令差點拉下:有關于ENV軟件更新的,目前ENV的最新版本為V1.1.0,這個軟件是個命令式的處理軟件,當然也支持本地更新,不需要去下載最新的軟件,只需要通過命令,在本地進行更新就可以,這里涉及的命令如下:pkgs--upgrade,具體操作如下:[圖片]

到這里,基本上工具介紹和移植篇就講完了,其實更多的是針對工具講下RTT的裁剪 移植  編譯等操作,這些在以后的開發(fā)中,可能會經常用得到,雖然帖子篇幅略長,但大部分都是廢話吧,主要還有些自己的感想感觸加里面了,希望對大家有所幫助。

最后來一張大神做的經典圖來結束此篇學習吧,等到以后可能真的不需要看帖子了,翻開看一下這張圖片就夠了:


0
回復
sabrina9988
LV.7
20
2019-03-12 15:45
頂一下
0
回復
發(fā)