色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

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

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

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

RT-Thread中使用lwip自帶的tftp功能傳輸文件

RTThread物聯(lián)網(wǎng)操作系統(tǒng) ? 來(lái)源:未知 ? 2023-07-24 19:35 ? 次閱讀

TFTP協(xié)議


TFTP(簡(jiǎn)單文件傳輸協(xié)議)是TCP/IP協(xié)議族中的一個(gè)用來(lái)在客戶機(jī)與服務(wù)器之間進(jìn)行文件傳輸?shù)膮f(xié)議,端口號(hào)為69號(hào)。TFTP基于UDP協(xié)議,開(kāi)銷(xiāo)小、效率高,但是TFTP只能從服務(wù)器上獲得或者寫(xiě)入文件,不能列出目錄,也不進(jìn)行認(rèn)證

硬件框圖


ae5e9f44-2a13-11ee-a368-dac502259ad0.png

常見(jiàn)的組成框圖差異不大,以STM32H7為例,ARM內(nèi)核與MAC控制器集成在一個(gè)MCU芯片中,外部與PHY芯片相連,經(jīng)過(guò)網(wǎng)絡(luò)變壓器之后通過(guò)網(wǎng)線連接到PC端,后者是通過(guò)無(wú)線WIFI的方式連到遠(yuǎn)端服務(wù)器。

而從操作系統(tǒng)的層面來(lái)看,硬件框圖就顯得不重要了,對(duì)于rt-thread來(lái)說(shuō),只關(guān)注協(xié)議應(yīng)用本身,與硬件的交互在移植的時(shí)候做好適配即可。下面以RT-Thread源碼包中的QEMU虛擬開(kāi)發(fā)板為例,介紹如何使用lwip自帶的tftp功能傳輸文件。

RT-Thread構(gòu)建框架


ae74ed80-2a13-11ee-a368-dac502259ad0.jpg

RTThread源碼包提供了完整的操作系統(tǒng),從內(nèi)核再到組件服務(wù)層,以及經(jīng)過(guò)認(rèn)證的第三方的軟件包,非常便于開(kāi)發(fā)人員進(jìn)行應(yīng)用開(kāi)發(fā)。開(kāi)發(fā)者只需要關(guān)心和使用網(wǎng)絡(luò)應(yīng)用層提供的網(wǎng)絡(luò)接口,而無(wú)需關(guān)心底層具體網(wǎng)絡(luò) 協(xié)議棧類(lèi)型和實(shí)現(xiàn),使用tftp傳輸文件需要提前掛載好文件系統(tǒng),本文不多敘述,我們主要關(guān)注Lwip中的網(wǎng)絡(luò)app。

修改構(gòu)建配置


ae933588-2a13-11ee-a368-dac502259ad0.png

在lwip的apps文件夾下,有tftp相關(guān)的源文件,但是rtthread并未在構(gòu)建工具中開(kāi)放給用戶,以2.0.3版本為例,打開(kāi)對(duì)應(yīng)的SConscript文件,路徑為

1rt-thread/components/net/lwip/lwip-2.0.3/SConscript

61行到85行內(nèi)容為:


		1#ThesetofsourcefilesassociatedwiththisSConscriptfile.  2path=[GetCurrentDir()+'/src/include',  3GetCurrentDir()+'/src/include/ipv4',  4GetCurrentDir()+'/src/include/netif']  5ifnotGetDepend('RT_USING_SAL'):  6path+=[GetCurrentDir()+'/src/include/posix']  7ifGetDepend(['RT_LWIP_SNMP']):  8src+=snmp_src  9path+=[GetCurrentDir()+'/src/apps/snmp'] 10ifGetDepend(['RT_LWIP_PPP']): 11src+=ppp_src 12path+=[GetCurrentDir()+'/src/netif/ppp'] 13ifGetDepend(['RT_USING_LWIP_IPV6']): 14src+=ipv6_src 15ifGetDepend(['RT_LWIP_USING_PING']): 16src+=Glob('src/apps/ping/ping.c') 17group=DefineGroup('lwIP',src,depend=['RT_USING_LWIP','RT_USING_LWIP203'],CPPPATH=path) 18Return('group')這段腳本的功能是指,如果定義了相應(yīng)的宏定義,則把這部分的源代碼添加到工程中,參與編譯。但是從這里來(lái)看,是沒(méi)有添加lwip自帶的tftp的部分的,因此需要修改這部分腳本,增加一個(gè)宏的判斷,以及添加tftp文件夾下的.c文件,修改內(nèi)容為:


		

1.... 2ifGetDepend(['RT_LWIP_USING_PING']): 3src+=Glob('src/apps/ping/ping.c') 4ifGetDepend(['RT_LWIP_USING_TFTP']): 5src+=Glob('src/apps/tftp/*.c') 6group=DefineGroup('lwIP',src,depend=['RT_USING_LWIP','RT_USING_LWIP203'],CPPPATH=path)

構(gòu)建的腳本修改完成,還需要修改宏的添加,只有添加了RT_LWIP_USING_TFTP宏,才會(huì)把tftp下的c文件添加到工程中,這里有兩種方法,一種是直接在工程根目錄下的rtconfig.h中直接添加宏定義


		

1#defineRT_LWIP_USING_TFTP

另一種是修改menuconfig菜單選項(xiàng),增加宏的設(shè)置,修改方法為打開(kāi)rt-thread/components/net/lwip/Kconfig文件,第8行左右,增加RT_LWIP_USING_TFTP的設(shè)置


		1....  2ifRT_USING_LWIP  3configRT_LWIP_USING_TFTP  4bool"Usetftpapp"  5defaultn  6configRT_USING_LWIP_LOCAL_VERSION  7bool"UseLwIPlocalversiononly"  8defaultn  9help 10Ifdon'tselectthisoption,bothlocalversionandupstream 11....Kconfig修改完成之后,在配置界面就會(huì)多出一個(gè)菜單選項(xiàng),使能該菜單,然后使用scons構(gòu)建就會(huì)自動(dòng)在rtconfig.h文件中增加這個(gè)宏。

aeb52472-2a13-11ee-a368-dac502259ad0.jpg

效果演示


進(jìn)入msh終端,輸入help可查看支持的功能,其中 tftp_server 為以上操作實(shí)現(xiàn)的功能

aed2047a-2a13-11ee-a368-dac502259ad0.png

aee99d2e-2a13-11ee-a368-dac502259ad0.png

輸入tftp_server并回車(chē)運(yùn)行后,就啟動(dòng)了tftp服務(wù)器,輸入ifconfig可查看開(kāi)發(fā)板的ip地址,我的是192.168.75.130

af00ded0-2a13-11ee-a368-dac502259ad0.png

電腦端低開(kāi)tftp工具,作為tftp客戶端,在Host輸入開(kāi)發(fā)板的ip,端口設(shè)置為69,選擇一個(gè)電腦本地的文件然后點(diǎn)擊put即可將文件發(fā)送到開(kāi)發(fā)板,如我電腦上的TOP.bin文件

af18930e-2a13-11ee-a368-dac502259ad0.png

傳輸完成后,在開(kāi)發(fā)板msh終端輸入ls即可查看剛才傳輸?shù)奈募?/span>

af2b2ab4-2a13-11ee-a368-dac502259ad0.png

原文鏈接:http://club.rt-thread.org

———————End——————


點(diǎn)擊閱讀原文進(jìn)入官網(wǎng)


原文標(biāo)題:RT-Thread中使用lwip自帶的tftp功能傳輸文件

文章出處:【微信公眾號(hào):RTThread物聯(lián)網(wǎng)操作系統(tǒng)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。


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

    關(guān)注

    31

    文章

    1304

    瀏覽量

    40296

原文標(biāo)題:RT-Thread中使用lwip自帶的tftp功能傳輸文件

文章出處:【微信號(hào):RTThread,微信公眾號(hào):RTThread物聯(lián)網(wǎng)操作系統(tǒng)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    RT-Thread上CAN實(shí)踐

    開(kāi)箱測(cè)試RT-Thread官方已完成了對(duì)英飛凌XMC7200EVK的移植,通過(guò)shell可以看到做好了uart3的console。本文將介紹如何進(jìn)行RT-ThreadCan移植。接下來(lái)我們要完成CAN_FD的驅(qū)動(dòng)移植,并正常啟動(dòng)RT-T
    的頭像 發(fā)表于 11-13 01:03 ?1328次閱讀
    <b class='flag-5'>RT-Thread</b>上CAN實(shí)踐

    開(kāi)源共生 商業(yè)共贏 | RT-Thread 2024開(kāi)發(fā)者大會(huì)報(bào)名啟動(dòng)!

    親愛(ài)的RT-Thread開(kāi)發(fā)者我們很高興地宣布,一年一度的RDC(RT-ThreadDeveloperConference,RT-Thread開(kāi)發(fā)者大會(huì))正式啟動(dòng)報(bào)名!2024RT-Threa
    的頭像 發(fā)表于 10-29 08:06 ?466次閱讀
    開(kāi)源共生 商業(yè)共贏 | <b class='flag-5'>RT-Thread</b> 2024開(kāi)發(fā)者大會(huì)報(bào)名啟動(dòng)!

    2024 RT-Thread全球巡回 線下培訓(xùn)火熱來(lái)襲!

    親愛(ài)的RT-Thread社區(qū)成員們:我們非常高興地宣布,2024年RT-Thread全球開(kāi)發(fā)者線下培訓(xùn)即將拉開(kāi)帷幕!24年全球巡回培訓(xùn)將覆蓋超10座城市及國(guó)家,為開(kāi)發(fā)者提供一個(gè)深入學(xué)習(xí)RT-Thread嵌入式開(kāi)發(fā)的絕佳機(jī)會(huì)。
    的頭像 發(fā)表于 08-07 08:35 ?1411次閱讀
    2024 <b class='flag-5'>RT-Thread</b>全球巡回 線下培訓(xùn)火熱來(lái)襲!

    【好書(shū)推薦】RT-Thread設(shè)備驅(qū)動(dòng)開(kāi)發(fā)指南

    近年來(lái)國(guó)內(nèi)芯片產(chǎn)業(yè)和物聯(lián)網(wǎng)產(chǎn)業(yè)的快速崛起,行業(yè)發(fā)展迫切需要更多人才,尤其需要掌握嵌入式操作系統(tǒng)等底層技術(shù)的人才。隨著RT-Thread被更廣泛地應(yīng)用于行業(yè)中,開(kāi)發(fā)者對(duì)嵌入式驅(qū)動(dòng)開(kāi)發(fā)的需求越來(lái)越
    的頭像 發(fā)表于 08-01 08:35 ?692次閱讀
    【好書(shū)推薦】<b class='flag-5'>RT-Thread</b>設(shè)備驅(qū)動(dòng)開(kāi)發(fā)指南

    RT-Thread 新里程碑達(dá)成——GitHub Star 破萬(wàn)!

    RT-Thread實(shí)時(shí)操作系統(tǒng)開(kāi)源項(xiàng)目在GitHub上的star數(shù)量突破一萬(wàn)!截止發(fā)文,RT-Thread作為實(shí)時(shí)操作系統(tǒng)在業(yè)界Star數(shù)量排名第一!倉(cāng)庫(kù)地址:https://github.com
    的頭像 發(fā)表于 07-04 08:35 ?507次閱讀
    <b class='flag-5'>RT-Thread</b> 新里程碑達(dá)成——GitHub Star 破萬(wàn)!

    基于 RT-Thread專(zhuān)業(yè)版的EtherCAT主站方案

    (一)方案介紹本方案基于RT-Thread專(zhuān)業(yè)版,在RT-Thread端集成EtherCAT主站協(xié)議,通過(guò)EtherCAT對(duì)伺服電機(jī)或遠(yuǎn)程IO進(jìn)行實(shí)時(shí)控制,具備傳輸速度快,實(shí)時(shí)性高,擴(kuò)展設(shè)備靈活等
    的頭像 發(fā)表于 06-19 08:35 ?1031次閱讀
    基于 <b class='flag-5'>RT-Thread</b>專(zhuān)業(yè)版的EtherCAT主站方案

    6月6日杭州站RT-Thread線下workshop,探索RT-Thread混合部署新模式!

    6月6日下午我們將在杭州舉辦RT-Thread混合部署線下workshop,在瑞芯微RK3568平臺(tái)上實(shí)現(xiàn)同時(shí)運(yùn)行RT-Thread和linux,本次workshop邀請(qǐng)到RT-Thread資深
    的頭像 發(fā)表于 05-28 08:35 ?468次閱讀
    6月6日杭州站<b class='flag-5'>RT-Thread</b>線下workshop,探索<b class='flag-5'>RT-Thread</b>混合部署新模式!

    2024 RT-Thread 全球技術(shù)大會(huì)演講議程發(fā)布!

    RT-ThreadGlobalTechConference(RT-ThreadGTC,RT-Thread全球技術(shù)大會(huì))致力于圍繞RT-Thread基礎(chǔ)軟件技術(shù)發(fā)展、實(shí)踐創(chuàng)新、開(kāi)發(fā)者能力
    的頭像 發(fā)表于 05-16 08:34 ?590次閱讀
    2024 <b class='flag-5'>RT-Thread</b> 全球技術(shù)大會(huì)演講議程發(fā)布!

    5月16日南京站RT-Thread線下workshop,探索RT-Thread混合部署新模式!

    5月16日下午我們將在南京舉辦RT-Thread混合部署線下workshop,在瑞芯微RK3568平臺(tái)上實(shí)現(xiàn)同時(shí)運(yùn)行RT-Thread和linux,本次workshop邀請(qǐng)到RT-Thread資深
    的頭像 發(fā)表于 05-01 08:35 ?403次閱讀
    5月16日南京站<b class='flag-5'>RT-Thread</b>線下workshop,探索<b class='flag-5'>RT-Thread</b>混合部署新模式!

    RT-Thread混合部署Workshop北京站來(lái)啦!

    4月25日,下午我們將在北京舉辦RT-Thread混合部署線下workshop,在瑞芯微RK3568平臺(tái)上實(shí)現(xiàn)同時(shí)運(yùn)行RT-Thread和linux,本次workshop邀請(qǐng)到RT-Thread資深
    的頭像 發(fā)表于 04-19 08:34 ?463次閱讀
    <b class='flag-5'>RT-Thread</b>混合部署Workshop北京站來(lái)啦!

    4月25日北京站RT-Thread線下workshop,探索RT-Thread混合部署新模式

    4月25日,下午我們將在北京舉辦RT-Thread混合部署線下workshop,在瑞芯微RK3568平臺(tái)上實(shí)現(xiàn)同時(shí)運(yùn)行RT-Thread和linux,本次workshop邀請(qǐng)到RT-Thread資深
    的頭像 發(fā)表于 04-16 08:35 ?445次閱讀
    4月25日北京站<b class='flag-5'>RT-Thread</b>線下workshop,探索<b class='flag-5'>RT-Thread</b>混合部署新模式

    4月10日深圳場(chǎng)RT-Thread線下workshop,探索RT-Thread混合部署新模式!

    4月10日我們將在深圳福田舉辦RT-Thread混合部署線下workshop,在瑞芯微RK3568平臺(tái)上實(shí)現(xiàn)同時(shí)運(yùn)行RT-Thread和linux,本次workshop邀請(qǐng)到RT-Thread資深嵌入式軟件工程師農(nóng)曉明老師為您講
    的頭像 發(fā)表于 03-27 11:36 ?862次閱讀
    4月10日深圳場(chǎng)<b class='flag-5'>RT-Thread</b>線下workshop,探索<b class='flag-5'>RT-Thread</b>混合部署新模式!

    4月10日深圳場(chǎng)RT-Thread線下workshop,探索RT-Thread混合部署新模式!

    4月10日我們將在深圳福田舉辦RT-Thread混合部署線下workshop,在瑞芯微RK3568平臺(tái)上實(shí)現(xiàn)同時(shí)運(yùn)行RT-Thread和linux,本次workshop邀請(qǐng)到RT-Thread資深
    的頭像 發(fā)表于 03-27 08:34 ?555次閱讀
    4月10日深圳場(chǎng)<b class='flag-5'>RT-Thread</b>線下workshop,探索<b class='flag-5'>RT-Thread</b>混合部署新模式!

    RT-Thread成為恩智浦注冊(cè)合作伙伴,共同賦能工業(yè)與物聯(lián)網(wǎng)應(yīng)用開(kāi)發(fā)!

    前不久,恩智浦半導(dǎo)體加入RT-Thread全球合作伙伴計(jì)劃,成為RT-Thread高級(jí)會(huì)員合作伙伴。同時(shí),RT-Thread現(xiàn)已成為恩智浦注冊(cè)合作伙伴。
    的頭像 發(fā)表于 03-15 09:15 ?886次閱讀

    恩智浦半導(dǎo)體正式加入RT-Thread全球合作伙伴計(jì)劃!

    前不久,恩智浦半導(dǎo)體正式加入RT-Thread全球合作伙伴計(jì)劃,成為RT-Thread高級(jí)會(huì)員合作伙伴。同時(shí),RT-Thread現(xiàn)已成為恩智浦注冊(cè)合作伙伴(RT-Thread| 簡(jiǎn)介合
    的頭像 發(fā)表于 03-14 10:40 ?657次閱讀
    恩智浦半導(dǎo)體正式加入<b class='flag-5'>RT-Thread</b>全球合作伙伴計(jì)劃!
    主站蜘蛛池模板: 日日射夜夜干夜夜插在线播放| bl撅高扒开臀缝哦| 亚洲日本欧美国产在线视| 野花韩国免费高清电影| 97资源站超碰在线视频| 成人在线视频网站| 果冻传媒mv国产陈若瑶主演| 两百磅美女| 双腿打开揉弄高潮H苏安安秦慕深| 国产在线精品视频二区 | 欲香欲色天天影视大全| CHINA篮球体育飞机2023| 国产精品一区二区三区免费| 久久妇女高潮几次MBA| 日本黄色www| 亚洲中文字幕一二三四区苍井空| silk118中文字幕无删减| 狠狠撸亚洲视频| 欧洲馒头大肥p| 亚洲欧美中文在线一区| vr亚洲成年网址在线观看| 国产女人91精品嗷嗷嗷嗷| 免费一级片网站| 亚洲AV无码专区国产精品99| 91麻豆精品| 97精品国产自产在线观看永久| 俄罗斯兽交XXXXX在线| 久久www免费人成高清| 人妻少妇69式99偷拍| 伊人大香人妻在线播放| 丰满老熟好大bbbxxx| 久久这里只有精品国产99| 婷婷开心激情综合五月天| 51久久夜色精品国产| 国产午夜福利片| 青柠视频在线观看高清HD| 一个人HD在线观看免费高清视频 | 国产精品高清视频在线| 嗯啊插的好深啊使劲抽视频| 亚洲日韩一区精品射精| 国产69精品久久久久人妻刘玥|