999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于SST微控制器的MSAP系統在線升級方案的設計

2013-08-13 05:06:38胡小玉劉國輝
電視技術 2013年5期
關鍵詞:指令單片機程序

胡小玉,劉國輝

(武漢郵電科學研究院研究生院光纖通信技術和網絡國家重點實驗室,湖北 武漢 430074)

在MSAP(多業務接入平臺)系統中,要對位于基站中的設備進行升級,就必須安排工程人員去現場,這種升級方式浪費了大量的人力和物力,增加了后期的設備維護成本。

單片機(In Application Programming,IAP)技術的出現,有效地簡化了應用程序的升級過程,降低了后期維護的成本。本文根據IAP原理,研究并給出了該方案在嵌入式微控制器SST89E516RD2中的詳細實現技術和程序流程。該實現技術在SSDX公司的MSAP系統嵌入式程序的修改和升級中得到了應用和驗證,具有簡單、便捷、可靠、成本低等優點。

1 SST微控制器介紹

SST89E516RD2芯片是基于51內核的8位單片機,它包含1 kbyte的片內RAM和72 kbyte的片內ROM[1]。片內ROM分為2個存儲塊,主存儲塊Block 0占用64 kbyte,次存儲塊Block 1占用8 kbyte。整個內部程序空間被限制為64 kbyte,SFCF[1∶0]用于控制存儲塊的切換,如圖1 所示。

圖1 SST89E516RD2片內ROM空間配置圖

SST89E516RD2允許駐留于某一個存儲塊中的IAP程序對另一塊存儲塊進行重編程操作,而絕不允許對同一個存儲塊中的任意地址進行重編程操作。要實現在線升級的功能,必須用支持在線升級的IAP程序替換原來的ISP程序,用來引導在線升級程序。

2 MSAP升級系統

2.1 MSAP升級系統結構

升級系統主要組成部分是網管中心、傳輸網絡和MSAP設備。傳輸網絡可以是PSTN(公共電話交換網)、互聯網等傳輸網絡,用來承載中心機房到設備傳輸的數據。MSAP系統由網管設備和終端設備構成,網管設備用于接收網管中心發送來的升級程序,終端設備即為要升級程序的對象,升級系統如圖2所示。

圖2 遠程升級系統框圖

2.2 單片機與片外Flash的連接方式

SST89E516RD2單片機自帶高速異步串行口,支持IAP下的并行操作,所以本系統硬件組成較簡單。除單片機之外,只需要擴展1片Flash用來存儲升級的程序文件,單片機其他外圍電路按照設備功能需求設計,單片機與片外Flash的連接方式如圖3所示。片外Flash采用SST25VF080B芯片[2],它的存儲空間為1 Mbyte,最小擦除塊的容量為4 kbyte。單片機與片外Flash采用SPI總線進行通信,對片外Flash的讀寫、擦除等操作只需要使用相應的命令字即可,SST25VF080B常用功能表如圖4所示。

圖3 連接圖

圖4 SST25VF080B常用功能表

片外Flash首地址00000H~01000H存儲升級保護標志。地址01000H~5F000H分配給出廠時的配置和用戶最近一次的配置。隔離區用于保證存儲文件的獨立性。地址60000H~80000H分配給應用程序文件存儲區,其中程序文件A存儲出廠程序,程序文件B存儲接收到的升級程序[3-4]。根據以上分析,將外部Flash做如圖5所示的邏輯劃分。

圖5 SST25VF080B內存分配

2.3 MSAP系統遠程升級程序設計

2.3.1 遠程升級流程

PC網管軟件選擇一個子業務卡進行遠程升級,通過FTP協議發送升級數據包給網管盤,網管盤將接收到的升級數據包校驗OK后存儲至ARM的Flash中。網管盤發送復位指令將子業務卡的MCU復位,單片機復位啟動后進入IAP引導程序模式,準備進行升級。

2.3.2 單片機IAP程序流程

1)單片機IAP程序主循環處理流程

單片機復位后,從Block 1中運行IAP程序。當單片機運行IAP程序時,先判斷保護標志是否有效,如果該標志有效,表示上一次升級過程中遇到故障(斷電等異常情況),則單片機自動將程序恢復至出廠程序。否則單片機主程序待機15 s,等待單片機處理串口中斷接收到的數據,判斷是否有升級任務。如果有升級任務,則將單片機升級標志置為有效,如果該標志有效,則單片機IAP主程序待機15 min,等待在線升級完成。升級完成后,開啟看門狗等待單片機復位。單片機IAP程序主循環運行如圖6所示。

2)單片機IAP程序中斷處理流程

圖6 單片機IAP程序流程圖

網管盤收到文件傳輸命令后,發送一幀文件傳輸開始的指令,將待升級的應用程序包分解成適合本系統私有協議傳輸的小段,按照文件塊序號逐段發送給子業務卡,子業務卡收到數據包,CRC校驗無誤后將單片機升級標志置為有效,并開始擦除片外Flash文件B部分的塊。程序文件傳輸中,MCU開始接收數據,此時單片機將接收到的程序文件寫入片外Flash從文件B部分的塊;程序傳輸結束時,MCU將升級文件的文件名、文件長度和文件CRC16的校驗和寫入片外Flash從7FFFFH~80000H部分的扇區,共4 kbyte,單片機對接收到的文件整體校驗,發送應答幀通知網管盤校驗結果。

網管盤收到執行升級命令后,通知子業務卡準備執行升級。單片機會先運行Block 1的IAP程序,校驗升級的應用程序文件,如果校驗通過,將保護標志置為有效。然后開始擦除單片機片內ROM整個Block 0的塊,當SFST寄存器的標志位置位后,表示擦除完成。接著,單片機將片外Flash存儲區B中的升級文件讀出并寫入到單片機片內ROM的Block 0塊中,開啟看門狗,等待單片機復位,整個升級程序完成。

當開門狗溢出后,單片機復位令升級標志也復位,單片機程序跳轉到Block 0起始位置運行。單片機程序正常運行后將保護標志復位。執行程序升級模塊如圖7所示。

圖7 單片機IAP程序中斷處理流程

2.3.3 網管盤與子業務卡的通信設計

網管盤與子業務卡之間的SPI通信采用SSDX私有協議,該協議具有一定的糾錯機制和異常處理機制。在網管盤ARM與子業務卡MCU通信中采用發送一幀數據,確認一幀數據,收到錯幀,請求重發的通信形式[5]。SSDX私有協議設計的SPI通信幀最大幀長不超過500 byte,接收程序可以通過文件塊序號n在終端進行文件整理組合,單片機發送應答幀給網管盤通知文件塊n接收OK,否則網管盤重傳文件塊5次,如果5次以內傳送失敗,則標志此次升級失敗。SSDX私有協議數據幀格式如圖8所示。

圖8 SSDX私有協議幀格式

幀頭:表示數據包的開始,固定為0xFE,0xFA 2個字節。

子卡地址:表示子卡在1個MSAP網元中的位置。

命令字:文件傳輸命令還是執行升級命令。

指令值:命令字的子命令。如果命令字是文件傳輸命令,則指令值有傳輸開始、傳輸中、傳輸結束3個指令;如果命令字是升級命令,則指令值就是執行在線升級指令。

文件塊序號:表示升級程序所分割的報文所處的序號。

文件塊內容:程序內容字節。

CRC16校驗和:一幀數據的校驗和,采用CRC16校驗。

2.3.4 單片機IAP主要函數代碼

單片機在進行升級過程中,對片內ROM主要進行塊擦除和字節編程操作,該操作的程序代碼如下所示:

//單片機片內ROM塊擦除函數

Void block Erase(void)

{

SFCF|=0x40; //IAP功能使能

SFAH=0x00; //擦除的塊為Block 0

SFDT=0x55;

SFCM=0x0D;

SFCF=SFCF& ~0x40;//IAP功能禁止

}

//單片機片內ROM字節編程函數

Void SST_byte_program(unsigned short dataAddr,

unsigned char dataByte)

{

SFCF=SFCF|0x40;//IAP功能使能

SFAH=dataAddr> >8;

SFAL=dataAddr;//裝入地址SFDT=dataByte;//填入數據

SFCM=0x0D; //填入字節編程命令

while(SFST&0x40){;}

SFCF=SFCF& ~0x40;//IAP功能禁止

return;

}

單片機對片外Flash的操作主要用到擦除片外Flash塊函數和讀片外Flash數據函數[6],通過單片機與片外Flash的SPI讀指令(spi_SendByte)和寫指令(spi_Read-Byte)向SST25VF080B發送相應的命令字,各常用功能命令字如圖3所示。它們的程序源代碼如下所示:

//擦除以Dst為起始地址大小為64 k的塊

void FlashBlock_Erase(unsigned long Dst)

{

spi_SendByte(0xD8);//一次擦除64 k的塊

spi_SendByte(((Dst&0xFFFFFF)>>16));

spi_SendByte(((Dst&0xFFFF)>>8));

spi_SendByte(Dst&0xFF);

Wait_Busy();

}

//讀取地址Dst的數據

unsigned char FlashRead(unsigned long Dst)

{

spi_SendByte(0x03);//讀命令

spi_SendByte(((Dst&0xFFFFFF)>>16));

spi_SendByte(((Dst&0xFFFF)>>8));

spi_SendByte(Dst&0xFF);

return(Spi_ReadByte());//返回值

}

3 測試結果

按照上述的升級系統搭建好測試環境后,將MCU的IAP程序下載到Block 1中,通過PC網管對終端設備進行遠程升級。測試結果證明子業務卡的軟件版本能夠成功地進行更新,如圖9所示。在遇到異常情況時,如升級的過程中出現斷電故障,子業務卡能自動恢復到出廠程序運行,等待再次響應網管中心下達升級命令,直至升級成功。

圖9 升級前后版本對比圖(截圖)

4 結論

本方案以SST89E516RD2芯片的IAP功能為基礎,利用擴展的Flash存儲分區,提供了一種MSAP系統遠程在線升級的方法,有效地降低了后期設備的維護成本。本方案在SSDX的MSAP系統中已得到廣泛應用,在實際應用中得到了用戶很高的評價,大大增加了產品的競爭力。

[1]SST89E516RD2[EB/OL].[2012-05-25].http://wenku.baidu.com/view/d542fc0cf12d 2af90242e6ba.html.

[2]SST25VF080B[EB/OL].[2012-05-25].http://wenku.baidu.com/view/e5b7a579168884868762d6aa.html.

[3]趙炯,賈培源,李中山,等.嵌入式設備遠程在線升級技術[J].計算機工程,2010,36(12):262-264.

[4]曾浩,呂華,王銘偉.IPTV機頂盒升級方案的設計與實現[J].電視技術,2010,34(5):54-56.

[5]鄧中亮,孫靜.嵌入式設備在線系統升級的設計與實現[J].計算機工程與設計,2009,30(13):3085-3087.

[6]邵貝貝.單片機嵌入式應用的在線開發方法[M].北京:機械工業出版社,2004.

猜你喜歡
指令單片機程序
聽我指令:大催眠術
基于單片機的SPWM控制逆變器的設計與實現
電子制作(2019年13期)2020-01-14 03:15:28
基于單片機的層次漸變暖燈的研究
電子制作(2019年15期)2019-08-27 01:12:10
基于單片機的便捷式LCF測量儀
電子制作(2019年9期)2019-05-30 09:42:02
試論我國未決羈押程序的立法完善
人大建設(2019年12期)2019-05-21 02:55:44
ARINC661顯控指令快速驗證方法
測控技術(2018年5期)2018-12-09 09:04:26
LED照明產品歐盟ErP指令要求解讀
電子測試(2018年18期)2018-11-14 02:30:34
“程序猿”的生活什么樣
英國與歐盟正式啟動“離婚”程序程序
環球時報(2017-03-30)2017-03-30 06:44:45
創衛暗訪程序有待改進
中國衛生(2015年3期)2015-11-19 02:53:32
主站蜘蛛池模板: 国产综合色在线视频播放线视 | 亚洲成人黄色在线| 国产天天射| 99热这里只有免费国产精品| 亚洲第一天堂无码专区| 精品无码一区二区三区在线视频| 国产日本欧美亚洲精品视| 国产麻豆精品久久一二三| 欧美中文字幕一区| 最新亚洲人成无码网站欣赏网| 欧洲亚洲欧美国产日本高清| 91在线精品免费免费播放| 黄色在线不卡| 国产免费福利网站| 欧美国产在线精品17p| 亚洲国产精品日韩欧美一区| 亚洲中文字幕在线一区播放| 九九免费观看全部免费视频| 美女无遮挡免费网站| 一级做a爰片久久毛片毛片| 91热爆在线| 色播五月婷婷| 亚洲精品午夜无码电影网| 蜜臀AV在线播放| 亚洲欧美国产五月天综合| 欧美日韩在线国产| 国产成人精品一区二区不卡| 国产菊爆视频在线观看| 91无码网站| 亚洲精品动漫| 91无码人妻精品一区| 亚洲精品无码在线播放网站| 国产精品美女免费视频大全| 日本91在线| 91精品日韩人妻无码久久| 日韩福利视频导航| 又黄又爽视频好爽视频| 国产精品原创不卡在线| 91年精品国产福利线观看久久 | 亚洲av无码成人专区| 试看120秒男女啪啪免费| 91精品国产自产在线观看| 亚洲综合二区| 国产熟女一级毛片| 中文字幕资源站| 久热这里只有精品6| 日韩成人免费网站| 国产精品午夜福利麻豆| 国产精品人莉莉成在线播放| a级毛片免费看| 亚洲欧洲日韩国产综合在线二区| 视频在线观看一区二区| 国产成人精品日本亚洲| 91精品国产自产在线老师啪l| 99热这里只有精品国产99| 中文成人在线| 一级一毛片a级毛片| AV片亚洲国产男人的天堂| 在线另类稀缺国产呦| 久久亚洲综合伊人| 久久国产精品夜色| 亚洲视频色图| 国产欧美精品一区二区| 一级毛片在线免费视频| 亚洲AV无码久久精品色欲| 国产免费人成视频网| 色综合a怡红院怡红院首页| 亚洲精品久综合蜜| 午夜爽爽视频| 亚洲AV电影不卡在线观看| 性网站在线观看| 国产呦视频免费视频在线观看| 91成人在线免费观看| 波多野结衣中文字幕一区| 欧美中文字幕在线二区| 久久久久亚洲精品成人网| 国产精品手机视频| 亚洲第一黄色网址| 四虎影视8848永久精品| 暴力调教一区二区三区| 国产欧美日本在线观看| 日韩免费成人|