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

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

基于GPRS網(wǎng)絡傳輸?shù)慕K端固件升級系統(tǒng)設計

電子設計 ? 2018-09-17 09:51 ? 次閱讀

設計基于中國移動GPRS無線網(wǎng)絡,以C8051F340單片機為核心,GSM/GPRS/EDGE無線模塊MC75作為通信模塊開發(fā)的網(wǎng)絡測試終端設備。當該終端設備的固件需要升級時,在遠程服務器端開啟FTP服務器并與終端建立連接,終端從該FTP服務器上下載已更新的二進制升級文件并存儲在外部Flash中,在主程序進行校驗后跳轉到升級程序段覆蓋掉片內Flash中原有的固件程序,完成系統(tǒng)固件遠程更新。

引言

嵌入式技術的迅速發(fā)展使得越來越多的嵌入式終端設備應用在人們的日常生活中,其中不乏應用在一些偏遠地方,甚至工作在無人看管的場合下。人口比較稀少的地方,由于基站分布比較分散,加之人口比較稀疏,基站維護等操作常難以執(zhí)行,這就需要在某些地方放置網(wǎng)絡信號測試儀檢測該地區(qū)的通信信號質量,并將該信息反饋到遠程服務器。同時,由于硬件系統(tǒng)程序設計固有的局限性,固件程序的升級在所難免。針對實際情況,本文開發(fā)了網(wǎng)絡信號測試儀的單片機遠程升級系統(tǒng)。

1 系統(tǒng)硬件設計

整個系統(tǒng)以Silicon Labs公司推出的混合信號片上系統(tǒng)型單片機C8051F340作為核心控制單元,采用GSM/GPRS/EDGE無線模塊MC75作為與遠程服務器的通信模塊,采用上海麗浪電子有限公司推出的R36模塊作為GPS模塊,通過GPS衛(wèi)星接收RMC格式的導航電文供終端設備定位用。C8051F340單片機包含兩個TTL電平的串行接口,分別與GPRS模塊和GPS模塊進行通信。GPRS模塊可接收遠程控制臺發(fā)來的控制指令,并傳輸給單片機進行處理。系統(tǒng)總體框圖如圖1所示。

基于GPRS網(wǎng)絡傳輸?shù)慕K端固件升級系統(tǒng)設計

1.1 C8051F340介紹

C8051F340具有片內上電復位、VDD監(jiān)視器、電壓調整器、看門狗定時器時鐘振蕩器等內部資源,是真正能獨立工作的片上系統(tǒng)。Flash存儲器還具有在系統(tǒng)重新編程能力,可用于非易失性數(shù)據(jù)存儲,并允許遠程更新8051固件程序。用戶軟件對所有外設具有完全的控制,可以關斷任何一個或所有外設以降低功耗。

C8051F340的主要特點:

◆高速、流水線結構并與8051兼容的微控制器內核 (可達48 MIPS);

◆全速、非侵入式的在系統(tǒng)調試接口(片內);

◆精確校準的12 MHz內部振蕩器和4倍時鐘乘法器;

◆64 KB的片內Flash存儲器,4532字節(jié)的片內RAM

◆硬件實現(xiàn)的SMBUS接口,2個增強型UART(TTL電平)、1個增強型SPI串行接口;

◆4個通用的16位定時器;

◆5個捕獲/比較模塊和具有看門狗定時器功能的可編程計數(shù)器/定時器陣列(PCA)。

1.2 單片機與GPRS模塊通信電路設計

MC75模塊是Siemens公司推出的第三代GSM/GPRS/EDGE無線模塊。這種模塊能處理高數(shù)據(jù)密集型多媒體設施,可以應用于全球的GSM網(wǎng)絡。其主要特點為:

◆支持850 MHz、900 MHz、1 800 MHz、1 900 MHz四種頻段;

◆E-GPRS下行速率可達460 kbps;

◆EDGE(E-GPRS)multi-slot ClasslO:

◆GPRS移動基站ClassB;

◆SMS及SMS蜂窩廣播;

◆板載SIM卡捅槽或外接SIM卡讀卡器,支持USB接口;

◆AT指令GSM07.05及GSM07.07;

◆輸入電壓為3.2~4.5 V,建議使用3.8 V±O.2 V。

C8051F340與MC75模塊的通信電路如圖2所示。

基于GPRS網(wǎng)絡傳輸?shù)慕K端固件升級系統(tǒng)設計

1.3 單片機與串行FIash接口設計

C8051F340內部有64 KB的Flash,而整個系統(tǒng)程序為40 KB左右,為了實現(xiàn)遠程升級功能,需將更新的程序存儲在外部擴展Flash中。在此選用了Atmel公司的串行Flash,型號為AT45DBl61D。其電壓工作范圍為2.7~3.6 V,快速串行接口工作頻率最高可達到66 MHz,空間大小為17 301 504位,由4096頁組成(每頁包含512字節(jié)或者528字節(jié))。除了主存儲器外,它還包括2片512或528字節(jié)的靜態(tài)隨機存儲單元。在本系統(tǒng)設計中,AT45DB161D可存儲系統(tǒng)中所需的一些網(wǎng)絡信號參數(shù),以便經(jīng)過GPRS網(wǎng)絡傳遞給遠程主機;另外,還可以存儲遠程服務器發(fā)送的二進制升級文件。其與C8051F340的接口電路如圖3所示。

基于GPRS網(wǎng)絡傳輸?shù)慕K端固件升級系統(tǒng)設計

2 系統(tǒng)軟件設計

該終端設備在工作期間,會收到遠程服務器發(fā)送來的一系列控制命令,如測試周圍附近的網(wǎng)絡信號指令,給某個手機撥打電話并記錄通話狀態(tài)下的信號指令等。這些操作都是由單片機通過串口發(fā)送給GRPS模塊的AT指令實現(xiàn)的。例如SEND String(”AT-SMONC\r”),單片機將“AT-SMONC”這條命令通過串口發(fā)送給GPRS模塊,該模塊可自動測得主小區(qū)及相鄰小區(qū)的信號指令數(shù)據(jù),并通過串口發(fā)送給單片機以供其處理。同樣,單片機可接收到遠程升級指令,從而啟動遠程升級功能。

2.1 升級系統(tǒng)軟件設計

本系統(tǒng)軟件由兩部分組成:主程序和升級程序,分別對應于Main工程和Update工程。Main工程負責與遠端服務器進行通信,接收服務器發(fā)送的指令并進行相應操作;而Update工程編譯、鏈接時,在其編譯器鏈接選項中設置CODE(OxE000,PR?MAIN?UPDATE(0xE000)),可將Upd-ate工程編譯、鏈接后生成的hex文件燒寫到單片機內部Flash以0xE000作為起始地址處,同時默認地將Main工程編譯、鏈接生成的二進制文件燒寫到內部Flash的起始地址處。單片機在執(zhí)行主程序過程中,檢測到升級標志置1后,單片機跳轉到升級程序地址處執(zhí)行固件升級程序;升級完畢后,復位單片機,程序又從內部Flash的零地址開始執(zhí)行更新的固件程序。圖4為主程序流程,圖5為相應的固件升級程序流程。主程序在運行過程中受遠程服務器的實時控制。當固件程序需要更新時,在服務器端將準備更新的固件編譯、鏈接后生成的hex或bin文件放入某一固定目錄內,啟用FTP服務器(如FtpMan),通過TCP/IP協(xié)議發(fā)送遠程升級指令給測試終端;終端收到升級指令后啟動相應的FTP接收功能,將遠端文件分解成多個數(shù)據(jù)包并逐個存儲在外部Flash中;存儲完畢后,主程序會對該接收文件進行CRC校驗,若校驗無誤,則通過函數(shù)指針跳轉到升級程序功能區(qū),啟動升級程序,將二進制文件從外部Flash中轉移到內部Flash對應的地址空間中去。單片機復位重啟后,就可以從內部Flash的起始地址處執(zhí)行更新完畢的程序。

基于GPRS網(wǎng)絡傳輸?shù)慕K端固件升級系統(tǒng)設計

基于GPRS網(wǎng)絡傳輸?shù)慕K端固件升級系統(tǒng)設計

2.2 函數(shù)指針應用

當主程序檢測到升級標志后,主程序跳轉到升級程序地址處執(zhí)行升級固件程序,此處使用了函數(shù)指針的功能。

結語

本文設計了基于GPRS網(wǎng)絡傳輸?shù)慕K端固件升級系統(tǒng),給出了合理的芯片選型,以及獨立的固件升級程序。該升級系統(tǒng)已應用到實際產品應用中,并取得了很好的效果。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 單片機
    +關注

    關注

    6037

    文章

    44561

    瀏覽量

    635666
  • GPRS
    +關注

    關注

    21

    文章

    984

    瀏覽量

    129467
  • 通信模塊
    +關注

    關注

    2

    文章

    150

    瀏覽量

    33086
收藏 人收藏

    評論

    相關推薦

    【OTA升級】無需數(shù)據(jù)線,一條命令即可完成固件升級!

    的位置特殊、沒有預留硬件有線升級接口等原因,用戶往往無法人為的通過有線方式更新設備固件,這時候就可以通過OTA進行網(wǎng)絡升級。UpdateEngine介紹Firefly
    的頭像 發(fā)表于 12-11 01:00 ?608次閱讀
    【OTA<b class='flag-5'>升級</b>】無需數(shù)據(jù)線,一條命令即可完成<b class='flag-5'>固件</b><b class='flag-5'>升級</b>!

    脈沖全閉環(huán)EtherCAT運動控制器的固件升級

    本文導讀 隨著產品的發(fā)展,正運動技術產品的固件也在不斷更新與完善,新固件較老固件會解決一些客戶的新需求與軟件上的bug,增加了一些指令和功能,添加了更多的EtherCAT從站與io模塊。因此,
    的頭像 發(fā)表于 11-07 10:58 ?284次閱讀
    脈沖全閉環(huán)EtherCAT運動控制器的<b class='flag-5'>固件</b><b class='flag-5'>升級</b>

    低功耗4G模組Air780E的固件的遠程升級操作方法

    ?今天我們學習Air780E快速入門之固件的遠程升級,小伙伴們,學起來吧! 一、 生成差分包 合宙的遠程升級支持使用合宙云平臺和自建服務器,此例程使用的是合宙云平臺。 1.1 準備新舊版的core
    的頭像 發(fā)表于 10-12 07:04 ?410次閱讀
    低功耗4G模組Air780E的<b class='flag-5'>固件</b>的遠程<b class='flag-5'>升級</b>操作方法

    ip網(wǎng)絡音頻終端是什么

    IP網(wǎng)絡音頻終端是一種數(shù)字通信設備,它結合了網(wǎng)絡技術和音頻處理技術,用于實現(xiàn)網(wǎng)絡環(huán)境下的音頻通信和傳輸。 一、基本概念 IP
    的頭像 發(fā)表于 10-08 14:52 ?437次閱讀

    求助,INBOX300固件升級方法是什么?

    求INBOX300固件升級方法?
    發(fā)表于 07-25 07:46

    DM平臺管理設備如何進行固件升級?

    )查看注冊狀態(tài) 4)DM平臺中添加設備,設備序列號通過設備系統(tǒng)界面或背板獲得。 5)添加升級固件 6)配置超時時間,默認即可。 7)選擇需要升級的設備 8)查看
    發(fā)表于 07-25 06:22

    ESP8266 12E如何升級到最新固件?

    ESP8266 12E如何升級到最新固件
    發(fā)表于 07-22 07:03

    GPRS抄表技術是什么?

    1.GPRS抄表技術概述GPRS(GeneralPacketRadioService)抄表是一種基于移動通信網(wǎng)絡的遠程抄表技術,它利用GPRS網(wǎng)絡
    的頭像 發(fā)表于 06-17 16:11 ?445次閱讀
    <b class='flag-5'>GPRS</b>抄表技術是什么?

    求助,通過UART進行基本設備固件升級的問題求解

    我正在研究設備固件升級代碼 我可以修改代碼,通過修改 common.mk 使其通過 UART 運行固件升級、 當我使用帶有 I2C 接口的原始樣品時,我注意到了不同之處,即
    發(fā)表于 05-28 07:45

    STM32 IIC通信升級系統(tǒng)

    諸神,需求一套可以使用IIC通信升級固件系統(tǒng) 1,STM32燒錄板,型號自定,盡量低成本,程序 2,STM32G031G8U6目標板示例程序 有人能做這項目嗎?或者大家有好的思路嗎? 如果能接請聯(lián)系425453660@qq.c
    發(fā)表于 03-20 12:40

    如何對miniprog4進行升級Firnware,需要下載固件嗎?

    請問如何對miniprog4進行升級 Firnware,需要下載固件嗎? 能否提供一個升級步驟,謝謝!
    發(fā)表于 03-06 06:43

    EtherCAT總線如何對從站固件進行升級?

    EtherCATFOE是一種主站對從站設備固件升級的技術,通過利用EtherCAT的數(shù)據(jù)鏈路層來處理數(shù)據(jù)實現(xiàn)文件傳輸,可以確保文件傳輸的完整性和準確性,為設備的維護、
    的頭像 發(fā)表于 02-27 08:23 ?846次閱讀
    EtherCAT總線如何對從站<b class='flag-5'>固件</b>進行<b class='flag-5'>升級</b>?

    單片機通過USB升級固件的方法

    單片機升級固件的方法有很多中,比如:ISP(在系統(tǒng)編程)、ICP(在電路編程)、IAP(在應用編程)等。
    的頭像 發(fā)表于 01-11 09:37 ?2003次閱讀
    單片機通過USB<b class='flag-5'>升級</b><b class='flag-5'>固件</b>的方法

    網(wǎng)絡對講終端網(wǎng)絡廣播終端SV-7011V使用說明

    高速路sip廣播對講求助 隧道sip對講調度SIP-7011 網(wǎng)絡廣播終端SV-7011 壁掛式對講終端網(wǎng)絡監(jiān)聽終端SIP廣播
    的頭像 發(fā)表于 01-04 14:24 ?497次閱讀
    <b class='flag-5'>網(wǎng)絡</b>對講<b class='flag-5'>終端</b>、<b class='flag-5'>網(wǎng)絡</b>廣播<b class='flag-5'>終端</b>SV-7011V使用說明

    tl-wda5532re固件升級

    固件是硬件設備的內置軟件,它控制設備的各種功能和特性。固件升級是指將設備的原有固件替換為新版本的固件,以提供更好的性能、功能和安全性。本文將
    的頭像 發(fā)表于 01-04 10:40 ?873次閱讀