www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當前位置:首頁 > 工業(yè)控制 > 工業(yè)控制
[導讀]摘要:短消息服務作為GSM網絡提供的一種基本服務,已成為諸多領域遠程控制的一種通信手段。討論一類通用的SMS短消息收發(fā)系統(tǒng)的實現方法,主要內容包含短消息調度和SMS短消息處理控制機制。特別對STM32微處理器下短消

摘要:短消息服務作為GSM網絡提供的一種基本服務,已成為諸多領域遠程控制的一種通信手段。討論一類通用的SMS短消息收發(fā)系統(tǒng)的實現方法,主要內容包含短消息調度和SMS短消息處理控制機制。特別對STM32微處理器下短消息收發(fā)調度的實現過程與短消息處理狀態(tài)機進行了詳細討論。通過對超時時間的控制和不同條件的切換,使得對短消息的收發(fā)處理動作在一個時間段內顯示出并發(fā)特性。
關鍵詞:狀態(tài)機;STM32;SMS;短消息收發(fā)

    短消息服務(Short Message Senice)作為GSM網絡提供給用戶的一種基本的數字業(yè)務,已成為諸多領域遠程監(jiān)控的一種通信手段。在很多應用場合中都通過PC機直接控制短消息收發(fā)模塊完成系統(tǒng)的數據采集或遠程信息傳輸,但對于偏遠地區(qū)、架設通信線路比較困難的地方,需要一種方便攜帶的設備控制短消息收發(fā)模塊。系統(tǒng)通過在STM32上完成對短消息模塊的控制,提出了一種嵌入式短消息收發(fā)系統(tǒng)的實現方法。
    本文討論一類通用的SMS短消息收發(fā)系統(tǒng)的實現方法,包含短消息調度和SMS短消息處理控制器的實現機制,特別對STM32嵌入式微處理器下短消息收發(fā)調度的實現過程和短消息處理狀態(tài)機進行了詳細討論。在嵌入式系統(tǒng)中,時間和并行性(concurrency)是必不可少的。通過對超時時間的控制和不同條件的切換,使得對短消息的收發(fā)處理在較小時間段內顯示出并發(fā)特性。能夠處理多條短消息同時控制的情況,具有良好的通用性。

1 系統(tǒng)的功能與結構
    SMS是GSM系統(tǒng)提供給廣大移動用戶的一種雙向通信、具有一定的交互能力、占用GSM網絡的信令信道的數字業(yè)務。SMS提供了在GSM移動站臺(MS)與一個短消息實體(SME)之間通過服務中心(SC)傳送短消息的方法。SC提供了在MS與SME之間消息傳送的相互聯系和轉播的功能。SMS采用存儲轉發(fā)模式,短消息被發(fā)送出去之后,不是直接地發(fā)送給接收方,而是先存儲在短消息服務中心,然后再由服務中心將其轉發(fā)給接收方。如果接收方當時關機或不在服務區(qū)內,服務中心會自動保存該短消息,捧隊并嘗試再次發(fā)送給接收方。由于短消息使用了服務中心的這種存儲和轉發(fā)機制,因此SMS具有較高的可靠性。這也意味著GSM模塊收發(fā)SMS的響應速度受運營商服務中心的限制。因此,要提高響應速度,需要一個持續(xù)在線的終端一直運行。
    系統(tǒng)在兩個短消息實體間增加本地SMSC(短消息服務中心),通過SMSC完成短消息的解析并執(zhí)行相應的動作、控制、無線通信功能。確保GSM終端模塊持續(xù)運行,以提高響應速度。
    系統(tǒng)由TC35i GSM模塊和運行在STM32微處理器上的短消息處理控制機兩部分組成。TC35i負責短消息的收發(fā)。短消息處理控制機用來向GSM模塊發(fā)送或讀取TC35i收到的短消息,并執(zhí)行相應的動作和控制。二者之間通過RS232串口實現數據交換。用戶可以利用手機通過GSM網絡和系統(tǒng)進行交互完成控制功能。

2 STM32片上資源的分配和使用
   
STM32是意法半導體基于Cortex—M3的32位嵌入式處理器,Cortex—M3核性價比高,價格低,可以與8位51核單片機競爭。
    處理器和GSM模塊之間通過RS232串口實現數據交換,TC35i集成了標準的RS232接口,通過MAX232芯片做電平轉換,與處理器USART接口進行通信。因此處理器需要提供兩個串行通信接口,其中一個串口用于和GSM模塊進行通信,另一個串口用于和上位機軟件交換數據或調試。在處理器選型時需要考慮這個問題,而STM32全系列微處理器均能滿足這個要求。系統(tǒng)選用的處理器型號為F103RBT6,該產品系列帶有128k片內FLASH,20kRAM,無需外擴存儲器即可以滿足系統(tǒng)對于多條控制短消息同時處理耗費內存空間的需要。STM32F103RB帶有3個USART接口,可以滿足系統(tǒng)對串口資源的需求。芯片帶有4個獨立定時器,1個RTC實時時鐘,系統(tǒng)只用到其中2路:1路用于產生較準確的系統(tǒng)延時,用于一般延時定時和狀態(tài)切換超時判斷。一路用于通過定時輪詢方式讀取短消息。GSM模塊短消息收發(fā)和運行狀態(tài)的監(jiān)測通過USART的中斷處理程序實現。

3 SMS短消息控制狀態(tài)機的實現
   
由于系統(tǒng)旨在完成一類通用的SMS短消息控制機實現方法,因此在系統(tǒng)實現時從邏輯上將SMS提供方和使用方剝離,將發(fā)送子系統(tǒng)和接收子系統(tǒng)分離。這通過兩個全局隊列實現,發(fā)送隊列和接收隊列。
    定義一個結構體類型:
   
    作為短消息的基本數據單元。
    并定義SMS_PDU類型的隊列,分別作為發(fā)送隊列和接收隊列,即,SMS_PDU類型的結構體數組。如下:
    SMS_PDU m_QuerySend[MAX_SMS_SEND];
    SMS_PDU m_QueryRecv[MAX_SMS_RECV];
    以上定義均為全局隊列。對全局變量的操作會涉及到并發(fā)和多線程訪問技術,本系統(tǒng)考慮到實時性采用前后臺系統(tǒng)實現方式,通過STM32多路定時和中斷功能來完成多線程的模擬,主程序調用一個無限循環(huán)的控制器處理函數,在控制器循環(huán)中調用相應的驅動函數完成相應的功能。同時中斷系統(tǒng)作為前臺,遇到外部觸發(fā)條件則立即構造短消息并加入到輸出隊列中。
    對發(fā)送隊列緩沖區(qū)的操作分為人隊操作和出隊操作,入隊操作是由外部采集模塊產生的中斷事件,在該中斷的處理例程中構造好具有發(fā)送具體內容PDU編碼、目標手機號等資訊的結構體,并將構造好的結構體存放到發(fā)送隊列中,此時一旦主程序中的短消息控制器在進行收發(fā)處理完畢后處于idle狀態(tài),將立即切換到開始發(fā)送狀態(tài),完成對發(fā)送隊列中歷史積累SMS的發(fā)送處理,在發(fā)送前首先進行出隊操作。
    對接收隊列緩沖區(qū)的操作也分為輸入和輸出部分。系統(tǒng)設定條件為一旦狀態(tài)機處于idle狀態(tài)達到5 ms時間(意味著發(fā)送隊列中待發(fā)短消息已全部處理完畢)則狀態(tài)切換到開始接收狀態(tài),即通過AT指令從模塊讀取短消息協議數據單元,解析為SMS-PDU格式并將其放入接收隊列。輸出部分主要通過定時器設置10 ms輪詢,一旦有解析好的短消息到來,則馬上控制被控設備產生相應動作。
    系統(tǒng)實現中,通過main函數調用短消息控制器循環(huán)運作狀態(tài)遷移轉換處理程序來實時完成與GSM模塊的交互,通過TIM2中斷處理例程完成對接收隊列中已到達短消息的調度(dispatch)處理,該處理程序會根據接收到的短消息內容的不同來實現具體的控制功能。發(fā)送SMS時,也采用類似的中斷方式和隊列形式來完成多線程的模擬。為了防止對接收指令的誤響應和減小與模塊交互讀取時間,每次接收短消息后都將GSM模塊上已收短消息刪除。
    系統(tǒng)采用狀態(tài)機來實現不同狀態(tài)處理的切換,過程中短消息數據收發(fā)的狀態(tài)遷移圖如圖1所示。



4 STM32處理控制機與GSM模塊的交互
   
STM32通過AT指令完成與GSM模塊交互。與GSM模塊交互讀取短消息有多種方式,如AT+CMGR;AT+CMGL等。由于多個用戶可以同時操作,考慮到可能到來的多條短消息,系統(tǒng)中使用CMGL AT指令完成STM32對GSM模塊的通信操作,以便利一次讀取,提高系統(tǒng)的響應速度。
    CMGL指令在SMS PDU mode下的格式如下:
   
    SMS規(guī)范中定義了message_status的5種不同狀態(tài)下的操作:
    0表示已接收到的未讀短信,
    1表示已接收到的已讀短信,
    2表示已存儲的未發(fā)送短信,
    3表示已存儲的已發(fā)送短信,
    4表示列出全部SMS短信。
    如果GSM模塊成功從存儲區(qū)讀到短消息,將會返回到形如:
   
   
    格式的反饋信息。其中+CMGL后第一個1所在字段作為索引index,指示短消息在短消息存儲區(qū)中的位置。注意這個位置小并不表明該短消息是先到達的控制短消息。第二個1所在的字段指示短消息的狀態(tài),同上述message_status的狀態(tài),但只有0~4的取值范圍。24所在字段指示僅隨其后的的TPDU編碼的有效部分長度,以10進制表示。如果CMGL后面不加“=”號和任何數字,默認為“CMGL=0”的效果。系統(tǒng)中根據TPDU編碼的內容進行解析,并將解析結果保存到一個臨時SMS_PDU結構體類型的數據單元中。然后交由短消息處理狀態(tài)機保存到隊列中進行處理。

5 結束語
   
由于GSM模塊收發(fā)SMS的響應速度受運營商服務的限制,短消息控制器的狀態(tài)設計中需要把發(fā)送AT指令給模塊和從GSM模塊收到響應字符串區(qū)分為兩種不同的狀態(tài),以及區(qū)分其它預備和執(zhí)行狀態(tài),并利用MPU定時器產生精準毫秒延時來判定響應是否超時。但這只能提高狀態(tài)切換精度,無法保證SMS服務響應的時間精度,即,系統(tǒng)必須等待GSM模塊返回響應信息,這意味著系統(tǒng)實時性的高低瓶頸仍然取決與運營商。

本站聲明: 本文章由作者或相關機構授權發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內容真實性等。需要轉載請聯系該專欄作者,如若文章內容侵犯您的權益,請及時聯系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或將催生出更大的獨角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數字化轉型技術解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關鍵字: AWS AN BSP 數字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術公司SODA.Auto推出其旗艦產品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關鍵字: 汽車 人工智能 智能驅動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務中斷的風險,如企業(yè)系統(tǒng)復雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務連續(xù)性,提升韌性,成...

關鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據媒體報道,騰訊和網易近期正在縮減他們對日本游戲市場的投資。

關鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數據產業(yè)博覽會開幕式在貴陽舉行,華為董事、質量流程IT總裁陶景文發(fā)表了演講。

關鍵字: 華為 12nm EDA 半導體

8月28日消息,在2024中國國際大數據產業(yè)博覽會上,華為常務董事、華為云CEO張平安發(fā)表演講稱,數字世界的話語權最終是由生態(tài)的繁榮決定的。

關鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應對環(huán)境變化,經營業(yè)績穩(wěn)中有升 落實提質增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務引領增長 以科技創(chuàng)新為引領,提升企業(yè)核心競爭力 堅持高質量發(fā)展策略,塑強核心競爭優(yōu)勢...

關鍵字: 通信 BSP 電信運營商 數字經濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術學會聯合牽頭組建的NVI技術創(chuàng)新聯盟在BIRTV2024超高清全產業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現場 NVI技術創(chuàng)新聯...

關鍵字: VI 傳輸協議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯合招商會上,軟通動力信息技術(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關鍵字: BSP 信息技術
關閉
關閉