一種基于YModem協(xié)議的極簡(jiǎn)遠(yuǎn)程加載實(shí)現(xiàn)方法
發(fā)布時(shí)間:2021-09-04 17:03
針對(duì)外場(chǎng)環(huán)境中無(wú)法使用JTAG調(diào)試口對(duì)數(shù)字信號(hào)處理器(DSP)代碼進(jìn)行在線升級(jí)的問(wèn)題,對(duì)YModem數(shù)據(jù)傳輸協(xié)議及遠(yuǎn)程加載基本原理進(jìn)行簡(jiǎn)要介紹。提出了一種基于YModem協(xié)議的極簡(jiǎn)遠(yuǎn)程加載實(shí)現(xiàn)方法,可以用最小的代碼量,利用串口對(duì)DSP代碼進(jìn)行遠(yuǎn)程升級(jí),解決外場(chǎng)升級(jí)DSP的障礙。通過(guò)實(shí)驗(yàn)證明了極簡(jiǎn)遠(yuǎn)程加載實(shí)現(xiàn)方法的完整性及可用性。
【文章來(lái)源】:計(jì)算機(jī)與網(wǎng)絡(luò). 2020,46(18)
【文章頁(yè)數(shù)】:4 頁(yè)
【部分圖文】:
YModem通信協(xié)議握手流程
遠(yuǎn)程加載工作流程
在Bootloader與上位機(jī)之間的數(shù)據(jù)交互過(guò)程中,如果將所有數(shù)據(jù)幀內(nèi)的有效數(shù)據(jù)都存入寄存器中,待數(shù)據(jù)傳輸完成之后再一起進(jìn)行Flash燒寫(xiě),那么勢(shì)必需要在Bootloader中開(kāi)辟一個(gè)很大的存儲(chǔ)空間。本著節(jié)省內(nèi)存空間的原則本例只開(kāi)辟收、寫(xiě)2個(gè)獨(dú)立的1 KB寄存器空間,一個(gè)寄存器用來(lái)存放當(dāng)前收到的一幀1 KB數(shù)據(jù)內(nèi)容;另一個(gè)寄存器存放待寫(xiě)入Flash的數(shù)據(jù)。當(dāng)收寄存器收到數(shù)據(jù)并校驗(yàn)無(wú)誤后,將其寫(xiě)入寫(xiě)寄存器,同時(shí)清空收寄存器,用以繼續(xù)接收上位機(jī)軟件發(fā)送的數(shù)據(jù);寫(xiě)寄存器判斷有數(shù)據(jù)寫(xiě)入后,開(kāi)始向Flash寫(xiě)入,具體實(shí)現(xiàn)流程如圖3所示。通過(guò)分析,以燒錄一個(gè)大小為1 MB的應(yīng)用程序?yàn)槔藰O簡(jiǎn)加載方法可以節(jié)約DSP中原本為存儲(chǔ)數(shù)據(jù)而開(kāi)辟的950 300 Byte的RAM內(nèi)存空間。3.2 實(shí)現(xiàn)過(guò)程
【參考文獻(xiàn)】:
期刊論文
[1]DSP系統(tǒng)的CAN總線遠(yuǎn)程升級(jí)方法[J]. 劉瑞. 微型機(jī)與應(yīng)用. 2016(13)
[2]基于STM32的在應(yīng)用編程(IAP)開(kāi)發(fā)[J]. 雷衛(wèi)延,敖振浪,周欽強(qiáng). 電子測(cè)量技術(shù). 2015(05)
[3]基于μC/OS-Ⅱ的嵌入式設(shè)備遠(yuǎn)程程序升級(jí)的實(shí)現(xiàn)(英文)[J]. 孟輝,潘煉. Journal of Measurement Science and Instrumentation. 2014(03)
[4]CAN總線分布式系統(tǒng)程序的以太網(wǎng)在線更新[J]. 戈潤(rùn)棟,馬旭東. 工業(yè)控制計(jì)算機(jī). 2013(11)
[5]ARM平臺(tái)多進(jìn)程微內(nèi)核嵌入式操作系統(tǒng)Ymodem下載功能設(shè)計(jì)與實(shí)現(xiàn)[J]. 吳兆芝. 南京曉莊學(xué)院學(xué)報(bào). 2013(03)
[6]基于GPRS的嵌入式系統(tǒng)遠(yuǎn)程監(jiān)控和升級(jí)[J]. 羅文,王莉娜,肖鯤. 電子技術(shù)應(yīng)用. 2010(05)
碩士論文
[1]嵌入式遠(yuǎn)程工業(yè)監(jiān)控系統(tǒng)的終端設(shè)備軟件設(shè)計(jì)與實(shí)現(xiàn)[D]. 吳佳敏.電子科技大學(xué) 2010
本文編號(hào):3383657
【文章來(lái)源】:計(jì)算機(jī)與網(wǎng)絡(luò). 2020,46(18)
【文章頁(yè)數(shù)】:4 頁(yè)
【部分圖文】:
YModem通信協(xié)議握手流程
遠(yuǎn)程加載工作流程
在Bootloader與上位機(jī)之間的數(shù)據(jù)交互過(guò)程中,如果將所有數(shù)據(jù)幀內(nèi)的有效數(shù)據(jù)都存入寄存器中,待數(shù)據(jù)傳輸完成之后再一起進(jìn)行Flash燒寫(xiě),那么勢(shì)必需要在Bootloader中開(kāi)辟一個(gè)很大的存儲(chǔ)空間。本著節(jié)省內(nèi)存空間的原則本例只開(kāi)辟收、寫(xiě)2個(gè)獨(dú)立的1 KB寄存器空間,一個(gè)寄存器用來(lái)存放當(dāng)前收到的一幀1 KB數(shù)據(jù)內(nèi)容;另一個(gè)寄存器存放待寫(xiě)入Flash的數(shù)據(jù)。當(dāng)收寄存器收到數(shù)據(jù)并校驗(yàn)無(wú)誤后,將其寫(xiě)入寫(xiě)寄存器,同時(shí)清空收寄存器,用以繼續(xù)接收上位機(jī)軟件發(fā)送的數(shù)據(jù);寫(xiě)寄存器判斷有數(shù)據(jù)寫(xiě)入后,開(kāi)始向Flash寫(xiě)入,具體實(shí)現(xiàn)流程如圖3所示。通過(guò)分析,以燒錄一個(gè)大小為1 MB的應(yīng)用程序?yàn)槔藰O簡(jiǎn)加載方法可以節(jié)約DSP中原本為存儲(chǔ)數(shù)據(jù)而開(kāi)辟的950 300 Byte的RAM內(nèi)存空間。3.2 實(shí)現(xiàn)過(guò)程
【參考文獻(xiàn)】:
期刊論文
[1]DSP系統(tǒng)的CAN總線遠(yuǎn)程升級(jí)方法[J]. 劉瑞. 微型機(jī)與應(yīng)用. 2016(13)
[2]基于STM32的在應(yīng)用編程(IAP)開(kāi)發(fā)[J]. 雷衛(wèi)延,敖振浪,周欽強(qiáng). 電子測(cè)量技術(shù). 2015(05)
[3]基于μC/OS-Ⅱ的嵌入式設(shè)備遠(yuǎn)程程序升級(jí)的實(shí)現(xiàn)(英文)[J]. 孟輝,潘煉. Journal of Measurement Science and Instrumentation. 2014(03)
[4]CAN總線分布式系統(tǒng)程序的以太網(wǎng)在線更新[J]. 戈潤(rùn)棟,馬旭東. 工業(yè)控制計(jì)算機(jī). 2013(11)
[5]ARM平臺(tái)多進(jìn)程微內(nèi)核嵌入式操作系統(tǒng)Ymodem下載功能設(shè)計(jì)與實(shí)現(xiàn)[J]. 吳兆芝. 南京曉莊學(xué)院學(xué)報(bào). 2013(03)
[6]基于GPRS的嵌入式系統(tǒng)遠(yuǎn)程監(jiān)控和升級(jí)[J]. 羅文,王莉娜,肖鯤. 電子技術(shù)應(yīng)用. 2010(05)
碩士論文
[1]嵌入式遠(yuǎn)程工業(yè)監(jiān)控系統(tǒng)的終端設(shè)備軟件設(shè)計(jì)與實(shí)現(xiàn)[D]. 吳佳敏.電子科技大學(xué) 2010
本文編號(hào):3383657
本文鏈接:http://www.sikaile.net/kejilunwen/wltx/3383657.html
最近更新
教材專著