基于GPRS的單片機固件升級系統設計

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

1 系統硬件設計

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




1.1 C8051F340介紹

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

C8051F340的主要特點(diǎn):

◆高速、流水線(xiàn)結構并與8051兼容的微控制器內核 (可達48 MIPS);
◆全速、非侵入式的在系統調試接口(片內);
◆精確校準的12 MHz內部振蕩器和4倍時(shí)鐘乘法器;
◆64 KB的片內Flash存儲器,4532字節的片內RAM;
◆硬件實(shí)現的SMBUS接口,2個(gè)增強型UART(TTL電平)、1個(gè)增強型SPI串行接口;
◆4個(gè)通用的16位定時(shí)器;
◆5個(gè)捕獲/比較模塊和具有看門(mén)狗定時(shí)器功能的可編程計數器/定時(shí)器陣列(PCA)。

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

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

◆支持850 MHz、900 MHz、1 800 MHz、1 900 MHz四種頻段;
◆E-GPRS下行速率可達460 kbps;
◆EDGE(E-GPRS)multi-slot ClasslO:
◆GPRS移動(dòng)基站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所示。




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

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



2 系統軟件設計

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

2.1 升級系統軟件設計

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








2.2 函數指針應用

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





結語(yǔ)

本文設計了基于GPRS網(wǎng)絡(luò )傳輸的終端固件升級系統,給出了合理的芯片選型,以及獨立的固件升級程序。該升級系統已應用到實(shí)際產(chǎn)品應用中,并取得了很好的效果。
本文地址:http://selenalain.com/thread-36877-1-1.html     【打印本頁(yè)】

本站部分文章為轉載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀(guān)點(diǎn)和對其真實(shí)性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問(wèn)題,我們將根據著(zhù)作權人的要求,第一時(shí)間更正或刪除。
您需要登錄后才可以發(fā)表評論 登錄 | 立即注冊

相關(guān)在線(xiàn)工具

相關(guān)視頻

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權所有   京ICP備16069177號 | 京公網(wǎng)安備11010502021702
快速回復 返回頂部 返回列表
午夜高清国产拍精品福利|亚洲色精品88色婷婷七月丁香|91久久精品无码一区|99久久国语露脸精品|动漫卡通亚洲综合专区48页