新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于mPSD32xx系列單片機無線遠程IAP的實現

        基于mPSD32xx系列單片機無線遠程IAP的實現

        作者: 時間:2013-09-11 來源:網絡 收藏

        引言
          傳統的MCU控制系統在下載程序時一般都是通過取下芯片用編程器燒寫,或者采用ISP方式進行在線編程。隨著用戶需求和使用環境的不斷變化,就會要求系統程序被升級,而采用上述兩種方式進行程序升級時都必須要有開發人員進行現場操作。這種升級方式對于終端分散的控制系統來說無疑極大地增加了開發成本,也延緩了程序的更新時間。因此,本文結合無線基站動態環境監控系統, 給出了基于(應用內編程)的具體實現方法,解決了上述問題。

        系統架構
          無線基站電源、空調、基站的室內環境等條件對整個系統能否正常運行是至關重要的,為了讓無線基站有一個穩定、可靠的運行環境,因而設計了此采集系統。

          針對以上環境,本采集系統下位機將基站電源、空調、基站內溫度、濕度、煙霧、門控等集于一體,實時采集該系統所需要的各種數據,同時提供自動告警功能;上位機采用C/S模式設置不同級別的權限提供給各個監控中心。系統的數據傳輸采用GPRS/GSM無線通信網絡接入Internet進行遠程傳輸:下位機通過GPRS/GSM把告警信息自動上傳到監控中心或手機等;同時,監控中心或手機可以通過GPRS/GSM網絡對采集器進行查詢、配置等操作,以滿足不同的實際需要。在整個系統的設計過程中,為了對多任務進行高效的調度,選用了源碼開放的mCOSII嵌入式實時操作系統。

        硬件設計原理
        mPSD32xx芯片簡介
          mPSD32xx包含一個標準的8032微控制器模塊和一個PSD模塊。采用模塊化設計技術,不僅將構成一個應用系統所需的多個功能塊(如8032核、兩個Flash、SRAM、I/O、PLD、USB接口、I2C接口、雙UART口、用于液晶顯示的DDC通道、PWM控制器、4路ADC等)集成在單一硅片上,同時還可以通過JTAG ISP方式進行在系統編程,可簡化嵌入式應用系統的設計、縮短產品的開發周期、提高系統的可靠性、降低成本并縮小產品尺寸。

          由于產品有主Flash和第二Flash兩塊存儲器,使得設計人員可以在無需外加存儲器的情況下對Flash進行遠程更新的同時對其執行應用內編程。

        硬件接口設計
          串口中的電平轉換選用Maxim公司的MAX202CPE芯片。由于在mPSD3234A的串口0中同時連接了GPRS模塊和門控系統模塊,所以在其串口0接收中采用74LS11與門芯片。

        硬件配置
          主Flash存儲器由8個扇區組成,第二Flash存儲器由4個扇區組成。對Flash的配置可以通過軟件PSD EXPRESS來實現,配置結果如下:
        第一Flash僅作為數據空間: FS0:? 0~0x1FFF 0x8000~0xFFFF(頁碼序號為0)
        ? FS1~FS7: 0x8000~0xFFFF(頁碼序號為1-7)
        第二Flash僅作為程序空間: CSBOOT0: 0~0x1FFF 0x8000~0x9FF
        CSBOOT1: 0xA000~0xBFFF
        CSBOOT2: 0xC000~0xDFFF
        CSBOOT3: 0xE000~0xFFFF
        RS0: 0x2000~0x3FFF
        CSIOP: 0x200~0x2FF
        下載程序時將啟動程序分別下載到FS0、 0~0x1FFF和CSBOOT0、0~0x1FFF部分。用戶程序下載到FS0~FS7、0x8000~0xFFFF部分。


        軟件設計與實現
        GPRS及模塊
          本設計選用的GPRS模塊是WAVECOM公司的Q2406B,它是雙頻GPRS/GSM模塊(EGSM900/1800MHz或EGSM900/1900 MHz),內嵌完整的TCP/IP協議棧,直接通過AT指令就可以接入Internet,并且其設計開發符合ETSI GSM Phase 2 標準。完全按照標準AT指令使用9.6 kbps波特率通過串口與此模塊進行通信。
        模塊的初始化程序如下:
        void GPRS_init()
        {
        mPSD_UART_Putchar ("AT+CMGD=1,4",0);?? //刪除所有短信
        mPSD_UART_Putchar ("AT+CRES",0);?????? //釋放GPRS模塊內存
        mPSD_UART_Putchar ("AT+CSCA?",0);????? //查詢短消息中心號碼
        mPSD_UART_Putchar ("AT+CMGF=0",0);???? //0:PDU模式,1:文本模式
        mPSD_UART_Putchar ("AT+CMEE=1",0);?????? //打開錯誤代碼提示信息
        mPSD_UART_Putchar ("AT+CNMI=0,1",0);???? //打開短消息提示信息
        mPSD_UART_Putchar("ATE0",0);??????????? //關閉回顯
        mPSD_UART_Putchar ("ATW",0);
        ?}
        其中,mPSD_UART_Putchar ("ABCD",0)函數功能是:mPSD3234A通過串口0向GPRS模塊發送字符串“ABCD”。

        簡介
          是應用在Flash程序存儲器的一種編程模式??梢栽趹贸绦蚩刂葡?,對程序存儲空間進行讀取、擦除、寫入操作。與ISP操作非常相似,不需要從電路板上取下芯片用編程器燒寫,都具有在線編程功能。兩者之間的不同點是:ISP通常是整片擦除、編程,在手工操作下通過PC串口下載程序到Flash,而IAP卻是在某段程序的控制下對另外一段程序Flash進行讀寫操作。


        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 墨竹工卡县| 南通市| 莒南县| 那坡县| 东宁县| 大足县| 台南县| 岢岚县| 原阳县| 应城市| 兴义市| 呈贡县| 马尔康县| 乐亭县| 乌什县| 府谷县| 久治县| 达孜县| 郧西县| 汤原县| 南郑县| 海口市| 太和县| 法库县| 青铜峡市| 利川市| 佛学| 小金县| 满洲里市| 黔西| 明溪县| 湘潭市| 瓮安县| 伊金霍洛旗| 化州市| 丘北县| 从江县| 隆子县| 松潘县| 长宁县| 平利县|