吴忠躺衫网络科技有限公司

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

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

3天內不再提示

基于P89LPC936微控制器和Q2406B模塊實現遠程IAP功能系統的設計

電子設計 ? 來源:單片機與嵌入式系統應用 ? 作者:胡靜靜 ? 2021-06-11 15:29 ? 次閱讀

引 言

針對地下水資源已經嚴重透支,水資源受到嚴重破壞的問題設計本系統,目的就是為了監控農用機井的用水情況。農用機井分布站點廣,站點之間距離幾十m到一兩百km,采用人工抄表監控會浪費大量的人力和物力,而且實時性差。以前采用GSM方式也存在實時性差、控制困難的問題。

目前,對此類問題可靠的、現實的解決方案就是,將現場設備接入Internet上的服務器,在上層實現實時監控、管理;但是現場沒有專門Internet接入點和設備。采用GPRS接入Internet進行遠程數據傳輸,是近兩年企業、研究所等科研機構的熱門課題。隨著GPRS技術的日益成熟,GPRS已經成功地應用在遠程抄表、夜燈照明、油田監測、自動測量、智能儀表等不方便甚至根本不可能人工操作的遠程數據傳輸系統中。因此,本系統選用GPRS和GSM混合工作模式:在網絡狀況通暢的情況使用GPRS工作模式;反之可以切換到GSM工作模式。每個站點數據傳輸終端定時登陸到GPRS,接入Internet上的主機服務器,把采集數據和站點狀態下載到服務器硬盤上;上層采用B/S瀏覽器方式供地級、區級、市級等不同級別設置權限瀏覽;同時可以隨時監控站點的實時狀態,報告實時現場狀況,調用系統歷史數據信息

市場的機遇和應用技術的成熟常常是一對矛盾,尤其對于GPRS這類新技術,通常不得不一邊開拓市場一邊完善技術。然而實踐是檢驗真理的唯一標準。系統交接使用之后,用戶反饋一些改善功能的意見,另外,長時間使用之后,終端程序隱藏的“bug”也可能會隨之浮出水面。這就需要對數據傳輸終端的程序進行升級,但是設想一下,假如投入使用了200個站點,就算用ISP現場在線編程,工作人員得到每個站點把程序更新一遍。不但浪費大量的人力、物力,而且直接貽誤了開辟市場的時機,對企業造成的后果可能是致命的。

本設計方案就是應用在此類GPRS遠程監控系統上,融合GPRS網絡通信技術解決數據傳輸終端程序升級問題的。

1 IAP功能簡介與系統應用

IAP(In?Application Programming)是應用在Flash程序存儲器的一種編程模式。簡單地說就是在應用程序控制下,對程序某段存儲空間進行讀取、擦除、寫入操作。與ISP(In?System?Programming)操作非常相似,都不需要從電路板上取下芯片用編程器燒寫再安裝上去運行新程序,即具有在線編程功能。但是它們有其不同點:ISP通常是整片擦除、編程,在手工操作下通過PC串口下載程序到Flash,需要簡單的硬件資源——串口RX、TX和RS232驅動芯片;而IAP卻是在某段程序的控制下對另外一段程序Flash進行讀寫操作,可以控制對某段、某頁甚至某個字節的讀寫操作。

根據IAP的功能特點,可以制作仿真軟件替代仿真器功能。在PC上做個簡單的界面應用程序就可以直接實現用戶程序在線仿真:設置斷點、單步運行、改變運行結果調試等功能。同理,根據ISP的功能特點可以替代編程器。本系統就是把IAP模式融入到GPRS通信系統中,用GPRS遠程升級指定目標芯片的軟件。

2 IAP功能系統架構

IAP功能系統架構如圖1所示。

P89LPC936是Philips公司推出的一款高穩定性、多功能的51內核MCU;集成了I2C總線,讀寫操作I2C器件FM24C256速度快、穩定性高;增強型UART,具有幀錯誤檢測、幀間隔檢測、可選雙緩沖、接收和發送中斷可選分開等強大串口通信功能,增強了和GPRS模塊串口通信的可靠性;內置AD/DA轉換器;16 KB Flash存取器,支持ISP和IAP;采用TSSOP28或HWQFN28低成本封裝。設計系統的外圍電路可以減少到最少,不但提高了系統的性能,甚至可以IAP升級終端部分功能而不用改變外圍硬件電路。

FM24C256,256 Kb的FRAM (鐵電存儲器),兼有ROM的掉電數據保存特性和RAM的讀寫速度和次數,讀寫次數達到1000億次,采用I2C總線讀寫操作,使用穩定可靠;用8腳SOIC封裝,與MCU的接口電路簡單、通信可靠。通信速率0~400 kHz可調。P89LPC936的I2SCLH和I2SCLL 兩個SFR的值就是確定串行時鐘發生器占空比。本系統選擇7.372 8 MHz晶振,I2SCLH=I2SCLL=75,I2C速率為25 Kbps。

GPRS模塊使用WAVECOM公司生產的Q2406B,雙頻GPRS/GSM模塊(EGSM900/1 800 MHz或EGSM900/1 900 MHz),內置TCP/IP,與標準AT指令完全兼容;其設計開發符合ETSI GSM Phase 2+標準。本系統模塊使用9.6 kbps波特率,而模塊出廠波特率為115 200 bps,用串口終端初始化模塊時,特別要注意這一點。

3 IAP功能的軟件編程

3.1系統工作狀態分析

① 用戶程序工作狀態,在遠程數據傳輸系統中,用戶程序完成數據采集、存儲、發送,系統監控、報警,接收執行上位機設置、控制命令等正常用戶功能。

② IAP工作狀態,如圖2所示。上位機發送升級程序信令,數傳終端收到并回復確認信息后,開始等待下載信令;收到正確下載信令后開始下載代碼到FM24C256暫存。按幀順序號發送、接收數據,校驗幀的正確性,采用握手數據流保證每幀完全正確接收、存儲。代碼發送完畢后,發送下載完畢信令,包括代碼總長度和塊校驗碼;每階段都采取延時處理:延時時間到繼續重發過程三次,還沒收到就報告出錯信息,強行下線,切換到待升級用戶程序運行。如果通信正常,就進入最關鍵一步——Flash擦除和編程。

Philips在P89LPC936地址FF00H~FFFFH的空間里固化一個256字節的引導ROM,所有MCU對內部Flash的操作都可以調用這個子程序完成。使用IAP功能時就是提供這個子程序的入口參數(參考Philips的數據手冊),然后調用程序的入口地址FF00H,就可以實現讀、寫、擦除Flash。擦除、編程Flash時需要關閉所有中斷,不能對同一塊Flash同時進行擦除和編程,而且編程之前要先把扇區清除。對Flash的扇區進行擦除操作的程序清單(入口參數A、R7、R4和R5,返回參數(F0(C)、R7)如下:

ERASE_FLASH:

MOVA,#04H; A為操作類型(A=04H,告訴IAP; 執行的是擦除操作)

MOVR7,#01H ; R7刪除操作方式(00H表示刪除; 頁;01H表示刪除扇區)

MOVR4,#HIGH; 操作的Flash地址高8位

MOVR5,#LOW ; 操作的Flash地址低8位

LCALLFF00H

JCERASE_FLASH; F0(C): 0表示擦除成功,1表示

; 擦除失敗

3.2IAP功能系統SFR配置

(1) 用戶保密扇區設置MOVSEC6,#04H;禁止對Flash扇區6的擦除MOVSEC7,#04H;禁止對Flash扇區7的擦除扇區6和扇區7代碼是控制擦除、編程Flash。為保證不被誤操作,只允許在出廠時用專門的編程器擦寫。

(2) IAP特許關鍵值設置執行擦除或寫Flash的IAP功能,需要在調用IAP功能程序前,把96H寫入RAM單元FFH來設置特許關鍵值。程序代碼如下:MOVR0,#0FFHMOV@R0,#96HIAP程序處理完功能調用后,特許關鍵值被清除。因此在每次調用IAP功能程序前必須設置特許關鍵值。

3.3IAP功能實現流程

IAP功能實現流程如圖3、圖4所示。flagIAP為下載程序完畢,并且校驗碼確認后,準備擦寫Flash的標志。在FM24C256開辟單元存儲功能很重要:在程序擦寫發生異常,如掉電復位,可以在程序啟動后,與上位機確認擦寫后,繼續完成升級任務。每次編程的字節數和上位機傳輸的1幀數據中,代碼字節數保持一致,幀序號數表示程序分成多少幀傳輸和多少次編程操作。

3.4協議設計

GPRS網絡速度理論上有117 kbps,實際上遠遠沒達到;GPRS與Internet連接建立后,進入數據透明傳輸階段。本系統在完善的TCP/IP機制基礎上設計用戶應用層協議。為實現對系統某個終端的系統軟件升級,可將要升級的程序代碼通過寫碼軟件轉化為系統信令,接入Internet到GPRS網絡,透明傳輸下載到目標數傳終端。本系統的信令格式采用如下代碼幀格式:

開始信令幀和結束信令幀代碼數據段都是FFH。同步碼設置為AAH,55H;字節長度(1B)表示此數據幀包含代碼數據的字節數,通常小于64;下載目標地址(5B)設定為出廠ID號,賦予一個特定代碼含義,只有校驗ID號正確后數據傳輸終端才可能接收命令,而且是唯一標識,不可改變;從安全性出發,本系統中設置為出廠日期和編號的組合:0501160000表示2005年1月16號出廠的第一個產品。幀序號(1B)表明此次升級程序分成的傳送幀數,在命令傳送過程中,此域為00H。控制字段(1B)表示傳送的是操作命令還是數據。結束碼設置55H,AAH。數據傳輸終端上行和下行數據格式完全相同,上行響應數據除代碼數據段不同之外,其他字段都是下行控制數據的復制,實現數據流控制。

4 IAP功能可靠性探討

系統升級過程不免受到環境的干擾,如系統斷電或網絡通信阻塞、故障等意外事故,而導致IAP升級失敗。因此必須有一套可靠的軟、硬件機制來保障IAP的完全正常工作。以下介紹本系統所采取的一些措施:

① 掉電情況處理。現場環境的電網波動相當大,而且經常性停電,甚至影響到系統的正常工作。可采用蓄電池供電,提供穩定的、可靠的工作電源;外加一充電板電路,能在有電的時候直接給電路充電。此外,軟件上還做了完善的握手機制,信令設置回執,確保通信正確不會發生誤操作;下載和擦寫Flash部分時序上隔離,網絡通信性能和掉電異常對系統正常工作的影響減到最小。

② 數據傳輸過程產生的誤碼。通用的、有效的解決辦法就是用CRC循環冗余效驗和重傳機制。數據校驗碼正確后存入FM24C256,錯誤或超時就發幀序號請求重發,直到檢測到結束幀。 3823 最后一幀數據長度不夠就用FFH填滿一幀發送。

③ 數據傳輸過程大延遲或阻塞情況處理。數據傳輸采用超時處理,三次握手失敗,作異常處理機制。

該技術方案從根本上解決了本系統現場升級困難的問題,大大提高了系統的可維護性,加速了新產品上市時間,可以提供更快、更完美的用戶服務,增強產品的市場競爭力。以GPRS網絡為載體,在廣大接入Internet困難的監控現場或農村地區,該技術提出了一個解決方案。

責任編輯:Gt

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 微控制器
    +關注

    關注

    48

    文章

    7651

    瀏覽量

    152124
  • 服務器
    +關注

    關注

    12

    文章

    9308

    瀏覽量

    86073
  • GPRS
    +關注

    關注

    21

    文章

    984

    瀏覽量

    129659
收藏 人收藏

    評論

    相關推薦

    微控制器模塊和DS18B20 的連接電路圖

    STC89C52RC 微控制器模塊和DS18B20 的連接電路圖如下圖所示: 圖 STC89C52RC
    發表于 08-28 16:25 ?6752次閱讀
    <b class='flag-5'>微控制器</b><b class='flag-5'>模塊</b>和DS18<b class='flag-5'>B</b>20 的連接電路圖

    基于嵌入式微控制器LPC2214的遠程圖像監控系統

    基于嵌入式微控制器LPC2214的遠程圖像監控系統摘要:針對傳統圖像監控系統所存在的缺陷,綜合應用嵌入式
    發表于 12-01 10:23

    P89LPC930/P89LPC931使用指南

    P89LPC930/931是一款單片封裝的微控制器,適合于許多要求高集成度、低成本的場合。可以滿足多方面的性能要求。P89LPC930/931采用了高性能的處理結構,指令執行時間只需
    發表于 03-07 10:50

    恩智浦NXP LPC800系列微控制器

    存儲LPC800系列微控制器集成靈活的外設模塊,包括硬件CRC計算及校驗模塊,1路I2C總線接口,多達3路UART,2路SPI接口,1個
    發表于 02-20 11:22

    LPC81x系列微控制器IAP編程說明.zip

    LPC81x系列微控制器IAP編程說明.zip
    發表于 09-19 08:31

    P89LPC915單片機相關資料分享

    概述:P89LPC915是飛利浦半導體公司生產的一款8位微控制器與加速兩個時鐘80C51核心2kB的3V閃存與8位A/ D轉換。它采用高性能的處理結構,指令執行時間只需2到4個時鐘
    發表于 05-18 07:20

    P89LPC917單片機相關資料分享

    概述:P89LPC917是飛利浦半導體公司生產的一款8位微控制器與加速兩個時鐘80C51核心2kB的3V閃存與8位A/ D轉換。它采用高性能的處理結構,指令執行時間只需2到4個時鐘
    發表于 05-18 06:43

    基于P89LPC934單片機實現的熱流道溫度控制器

    為了更好地滿足熱流道系統中對溫度控制的需要,確保制品質量,介紹了一種基于P89LPC934單片機的熱流道溫度控制器硬件實現和軟件
    發表于 03-17 14:13 ?29次下載

    P89LPC906/P89LPC907/P89LPC908,

    P89LPC906/P89LPC907/P89LPC908是一款單片封裝的微控制器,適合于許多要求高集成、度低成本的場合。可以滿足多方面的性能要求。
    發表于 07-24 09:49 ?18次下載

    基于P89LPC920FDH的溫濕度控制器

    設計了一種溫濕度控制器,該控制器采用P89LPC920FDH 單片機為核心。P89LPC920FDH 微控制器內部集成有比較
    發表于 08-31 14:17 ?52次下載

    基于P89LPC922單片機的汽車后車窗控制器設計

    介紹一種應用于長城賽弗SUV汽車后門車窗多功能控制器,能實現對電動玻璃車窗、車窗雨刮器、噴水以及電加熱除霜
    發表于 12-16 11:33 ?58次下載

    P89LPC915/P89LPC916/P89LPC917

    概述 P89LPC915/916/917是一款低成本的14腳和16腳單片微控制器。它們采用高性能的處理結構,指令執行時間只需2到4個時鐘周期。6倍于標準80C51器件。P89LPC
    發表于 12-19 22:13 ?33次下載

    Q2406B內嵌TCP協議模塊測試

    本內容提供了Q2406B內嵌 TCP協議 模塊測試 TCP指令顯示狀態指令 顯示當前狀態 #VSTATE,可能的回復有: #STATE:IDLE 空閑狀態 #STATE:DIALING 撥號ISP狀態,還沒連接 #STATE:AUTHENTICATING 驗證
    發表于 07-05 16:52 ?14次下載

    使用PHILIPS_LPC微控制器實現低成本A/D轉換

    PHILIPS 的 LPC 微控制器系列 P87LPC76x 和 P89LPC900 具有包括 ADC 在內的各種不同的外圍功能 該應用手
    發表于 01-19 16:05 ?7次下載

    使用USART實現對STM32F3xx系列微控制器的在線編程IAP

    使用USART實現對STM32F3xx系列微控制器的在線編程IAP
    發表于 09-29 14:12 ?9次下載
    使用USART<b class='flag-5'>實現</b>對STM32F3xx系列<b class='flag-5'>微控制器</b>的在線編程<b class='flag-5'>IAP</b>
    大发888大发888官方| 真人百家乐官网导航| 新葡京百家乐现金网| 循化| 韩国百家乐官网的玩法技巧和规则| 大发888下载大发888娱乐城| 真人百家乐官网出售| 大发888备用网址大发娱乐城| 香港百家乐官网赌场娱乐网规则 | 洪雅县| 百家乐网络真人斗地主| 平台百家乐官网的区别| 大发888怎样存款| 百家乐官网大| 京城国际| 百家乐赌博大赢家| 赌博百家乐官网的乐趣| 大发888客户端官方下载| 百家乐斗牛稳赚| 百家乐官网从哪而来| 澳门百家乐规| 曼哈顿百家乐官网的玩法技巧和规则| 华人博彩网| 真人百家乐软件云南景| 百家乐官网博百家乐官网| 威尼斯人娱乐网网上百家乐的玩法技巧和规则 | 香港百家乐官网赌城| 现金网排行| 什么是百家乐的大路| 在线百家乐官网纸牌| 百家乐转盘| 百家乐游戏大| 利记百家乐官网现金网| 威尼斯人娱乐平台网址| 百家乐的必胜方法| 百家乐官网平台信誉排名| 皇冠现金网骗钱| 百家乐赌场代理| 长江百家乐官网的玩法技巧和规则| bet365备用网| 广州百家乐扫描分析|