日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁(yè) > 通信技術(shù) > 通信技術(shù)
[導(dǎo)讀]摘要:移動(dòng)通信中的短消息是人們無(wú)線溝通的重要方式,更以其方便、可靠性得到廣泛應(yīng)用。針對(duì)嵌入式無(wú)線路由的迅速普及,為實(shí)現(xiàn)良好人機(jī)交互,提出將短消息功能植入可使用上網(wǎng)卡的無(wú)線路由的動(dòng)態(tài)Web中。用C語(yǔ)言進(jìn)行CG

摘要:移動(dòng)通信中的短消息是人們無(wú)線溝通的重要方式,更以其方便、可靠性得到廣泛應(yīng)用。針對(duì)嵌入式無(wú)線路由的迅速普及,為實(shí)現(xiàn)良好人機(jī)交互,提出將短消息功能植入可使用上網(wǎng)卡的無(wú)線路由的動(dòng)態(tài)Web中。用C語(yǔ)言進(jìn)行CGI程序設(shè)計(jì),采用PDU短信模式,實(shí)現(xiàn)無(wú)線路由設(shè)備中短信的收發(fā)。實(shí)驗(yàn)結(jié)果也證實(shí)了此方案的正確性、實(shí)用性和可擴(kuò)展性。
關(guān)鍵詞:無(wú)線路由;動(dòng)態(tài)Web;CGI;短信;PDU

    為實(shí)現(xiàn)良好的人機(jī)交互及遠(yuǎn)程控制功能,如今大部分嵌入式Linux設(shè)備均引入Web服務(wù)器技術(shù),無(wú)線路由的迅速普及更體現(xiàn)了這一點(diǎn)。Goa head是一款主要面向嵌入式系統(tǒng)的Web服務(wù)器,因其支持asp、cgi且兼容性良好備受無(wú)線路由等嵌入式設(shè)備的青睞。而通用網(wǎng)關(guān)接口(CGI)則是Web服務(wù)器與為添加功能編寫(xiě)的外部程序之間的一個(gè)接口。市面普及的無(wú)線路由器,管理界面鮮有收發(fā)短信的功能,這樣用戶(hù)可用功能受到限制。通過(guò)這個(gè)CGI接口實(shí)現(xiàn)從Web端編輯短信并發(fā)送,及上網(wǎng)卡接收短信并顯示與Web端等功能,實(shí)現(xiàn)了無(wú)線路由更智能的一面。

1 嵌入式無(wú)線路由中的CGI技術(shù)
1.1 CGI工作原理
   
通用網(wǎng)關(guān)接口是Web服務(wù)器和外部擴(kuò)展程序之間的一個(gè)接口。CGI可以使編寫(xiě)的程序處理WWW上客戶(hù)端送來(lái)的表單和數(shù)據(jù)并對(duì)此做出相應(yīng)反應(yīng)。而且基于CGI的網(wǎng)頁(yè)應(yīng)用程序可工作于不同的瀏覽器平臺(tái),兼容性良好。
    CGI程序的工作一般分為以下幾個(gè)步驟:
    1)客戶(hù)端發(fā)出請(qǐng)求;
    2)Web服務(wù)器激活相應(yīng)的CGI程序;
    3)CGI程序?qū)蛻?hù)端的請(qǐng)求做出反應(yīng);
    4)Web服務(wù)器將CGI程序的處理結(jié)果傳送給客戶(hù)端;
    5)Web服務(wù)器中斷和客戶(hù)端瀏覽器的連接;
    6)Web服務(wù)器將CGI程序的輸出顯示在瀏覽器的窗體上。
1.2 CGIC函數(shù)庫(kù)
    CGIC是用來(lái)生成基于CGI的WWW應(yīng)用程序的C語(yǔ)言函數(shù)庫(kù),C語(yǔ)言編程是一項(xiàng)復(fù)雜且容易出錯(cuò)的工作,選擇合適的庫(kù)CGIC成為必要。一般的Linux系統(tǒng)都支持ANSIC,增加相應(yīng)的庫(kù)函數(shù)和相應(yīng)的h文件就可以實(shí)現(xiàn)CGI;而CGIC是一個(gè)完全符合ANSIC標(biāo)準(zhǔn)的程序庫(kù),在任何支持ANSIC標(biāo)準(zhǔn)的系統(tǒng)平臺(tái)上都可以使用。
    它有以下功能:
    1)對(duì)數(shù)據(jù)進(jìn)行語(yǔ)法分析;
    2)接收以GET和POST兩種方式發(fā)送的數(shù)據(jù);
    3)把FORM中的不同域連接成連續(xù)的串;
    4)為檢索FORM數(shù)據(jù)而提供字符串,整數(shù),浮點(diǎn)以及單項(xiàng)和多項(xiàng)選擇功能;
    5)為數(shù)字字段提供邊界檢測(cè);
    6)把CGI環(huán)境變量加載到非空的C串中;
    7)為調(diào)試而捕捉CGI狀態(tài);
    8)提供相對(duì)安全的系統(tǒng)調(diào)用功能。
    CGIC本身提供了一個(gè)main()函數(shù),CGIC的用戶(hù)編寫(xiě)的程序代碼應(yīng)該放在函數(shù)cgiMain()中。CGIC的main()函數(shù)主要用來(lái)完成CGI程序的初始化工作、獲取客戶(hù)端用戶(hù)的輸入以及相應(yīng)的解碼工作,最后main()函數(shù)會(huì)調(diào)用cgiMain()以執(zhí)行用戶(hù)編寫(xiě)的程序代碼。

2 短信功能設(shè)計(jì)
   
短信息服務(wù)作為目前最方便快捷的交流方式,工作原理也變得越來(lái)越標(biāo)準(zhǔn)化。通常對(duì)短消息的控制有3種實(shí)現(xiàn)途徑:Block模式,基于AT命令的Text模式和基于AT命令的PDU模式。使用Text模式收發(fā)短信代碼簡(jiǎn)單,但最大的缺點(diǎn)是不能收發(fā)中文短信;而PDU模式不僅支持中文短信,也能發(fā)送英文短信。本文主要使用的是在Linux下用C語(yǔ)言來(lái)實(shí)現(xiàn)PDU模式的SMS收發(fā)。
2.1 PDU模式下短信發(fā)送原理
   
一個(gè)完整的SMS消息所包含的所有報(bào)頭信息被以二進(jìn)制字符串格式傳送。這個(gè)二進(jìn)制由十六進(jìn)制格式的IA5字符組合而成。一般的PDU碼由13項(xiàng)組成:1)短信息中心地址長(zhǎng)度,2位十六進(jìn)制數(shù)(1字節(jié));2)短信息中心號(hào)碼類(lèi)型,2位十六進(jìn)制數(shù);3)短信息中心號(hào)碼,2)和3)的長(zhǎng)度由1)中數(shù)據(jù)決定;4)文件頭字節(jié),2位十六進(jìn)制數(shù);5)信息類(lèi)型,2位十六進(jìn)制數(shù);6)被叫號(hào)碼長(zhǎng)度,2位十六進(jìn)制數(shù);7)被叫號(hào)碼類(lèi)型,2位十六進(jìn)制數(shù),取值同短信息中心號(hào)碼類(lèi)型;8)被叫號(hào)碼,長(zhǎng)度由被叫號(hào)碼長(zhǎng)度中的數(shù)據(jù)決定;9)協(xié)議標(biāo)識(shí),2位十六進(jìn)制數(shù);10)數(shù)據(jù)編碼方案,2位十六進(jìn)制數(shù);11)有效期,2位十六進(jìn)制數(shù);12)用戶(hù)數(shù)據(jù)長(zhǎng)度,2位十六進(jìn)制數(shù)。13)用戶(hù)數(shù)據(jù),其長(zhǎng)度由用戶(hù)數(shù)據(jù)長(zhǎng)度中的數(shù)據(jù)決定。數(shù)據(jù)編碼方案中設(shè)定采用UCS2編碼,這里是中英文的Unicode字符。
    常用AT命令如下表所示:


2.2 PDU模式編碼
   
用PDU模式收發(fā)短消息可以使用3種編碼:7-bit編碼、8-bit編碼和USC2編碼。7-bit編碼用于發(fā)送普通的ASCII字符;8-bit編碼通常用于發(fā)送數(shù)據(jù)消息,如圖片或鈴聲等;USC2編碼用于發(fā)送Unicode字符。由于短信需實(shí)現(xiàn)中文短信的發(fā)送,所以選擇用UCS2編碼,即中文Unico de碼。這些編碼均有標(biāo)準(zhǔn)算法。

3 軟件設(shè)計(jì)
3.1 串口通信
   
嵌入式無(wú)線路由是通過(guò)串口發(fā)送一系列AT命令實(shí)現(xiàn)與無(wú)線路由的各種通信,短消息的收發(fā)也是通過(guò)這種方式。串口通信是計(jì)算機(jī)與其他設(shè)備通信的常用方法,本系統(tǒng)采用libcsms這個(gè)基于Linux的串行通信函數(shù)庫(kù),來(lái)實(shí)現(xiàn)串行接口的異步事件驅(qū)動(dòng)并發(fā)。采用該方法,只需要在cgi中編寫(xiě)數(shù)據(jù)處理函數(shù),大大提高了工作效率。
3.2 短信發(fā)送頁(yè)面設(shè)計(jì)
   
Html代碼發(fā)送短信部分,為簡(jiǎn)化cgi程序工作,在web端通過(guò)腳本函數(shù)ucs2_code()將短信內(nèi)容先做處理。ucs2_code()函數(shù)具體功能為:讀取短信內(nèi)容,循環(huán)獲取短信的每一位并通過(guò)charCodeAt()和toString()方法結(jié)合轉(zhuǎn)換為單獨(dú)的Unicode碼,再根據(jù)長(zhǎng)度補(bǔ)齊;如此得到整個(gè)短信內(nèi)容的Unicode碼及此編碼的長(zhǎng)度。
    再通過(guò)form提交表單,提交內(nèi)容有:手機(jī)號(hào)碼,手機(jī)內(nèi)存寫(xiě)入狀態(tài),處理后的短信Unicode碼和長(zhǎng)度。部分代碼如下:

3.3 CGI發(fā)送短消息
    Cgi發(fā)送短信主函數(shù)處理消息部分通過(guò)環(huán)境變量,讀取form表單提交的值;先讀取手機(jī)號(hào)碼,若成功則處理手機(jī)號(hào)碼后繼續(xù)讀取短信內(nèi)容的Unicode碼,若成功則讀取短信長(zhǎng)度,若成功則將短消息參數(shù)結(jié)構(gòu)中的SMSC地址的變量賦相應(yīng)值。再讀取短信是發(fā)送還是保存的狀態(tài)。如此完成整個(gè)web頁(yè)面短消息的處理過(guò)程。
    發(fā)送短信主函數(shù)部分代碼如下所示:

   
    發(fā)送短消息在gsmSendMessage中實(shí)現(xiàn),先根據(jù)PDU參數(shù),編碼PDU串;再通過(guò)PDU串和其中SMSC信息的長(zhǎng)度,生成發(fā)送命令。向串口輸入命令,根據(jù)返回值ans判斷模塊是否準(zhǔn)備就緒,是則繼續(xù)輸入PDU串,返回TRUE,則發(fā)送成功;否則返回FALSE。
    發(fā)送短信流程圖如圖1所示。



4 結(jié)束語(yǔ)
   
設(shè)計(jì)的創(chuàng)新之處在于提供了基于CGI的嵌入式無(wú)線路由中上網(wǎng)卡模塊的短信收發(fā)功能的設(shè)計(jì)方法。短信收發(fā)采用PDU模式處理中文、英文短信;功能是通過(guò)用C語(yǔ)言編寫(xiě)的CGI實(shí)現(xiàn)。在web端與iavascript結(jié)合,實(shí)現(xiàn)動(dòng)態(tài)web的高效運(yùn)行。對(duì)于基于Linux的無(wú)線路由設(shè)備已慢慢滲透人們?nèi)沼玫母鱾€(gè)角落成為必需品,如果將短信收發(fā)功能添加其中,更能增加此設(shè)備智能的功能,為用戶(hù)提供更便利的服務(wù)。

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

LED驅(qū)動(dòng)電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: 驅(qū)動(dòng)電源

在工業(yè)自動(dòng)化蓬勃發(fā)展的當(dāng)下,工業(yè)電機(jī)作為核心動(dòng)力設(shè)備,其驅(qū)動(dòng)電源的性能直接關(guān)系到整個(gè)系統(tǒng)的穩(wěn)定性和可靠性。其中,反電動(dòng)勢(shì)抑制與過(guò)流保護(hù)是驅(qū)動(dòng)電源設(shè)計(jì)中至關(guān)重要的兩個(gè)環(huán)節(jié),集成化方案的設(shè)計(jì)成為提升電機(jī)驅(qū)動(dòng)性能的關(guān)鍵。

關(guān)鍵字: 工業(yè)電機(jī) 驅(qū)動(dòng)電源

LED 驅(qū)動(dòng)電源作為 LED 照明系統(tǒng)的 “心臟”,其穩(wěn)定性直接決定了整個(gè)照明設(shè)備的使用壽命。然而,在實(shí)際應(yīng)用中,LED 驅(qū)動(dòng)電源易損壞的問(wèn)題卻十分常見(jiàn),不僅增加了維護(hù)成本,還影響了用戶(hù)體驗(yàn)。要解決這一問(wèn)題,需從設(shè)計(jì)、生...

關(guān)鍵字: 驅(qū)動(dòng)電源 照明系統(tǒng) 散熱

根據(jù)LED驅(qū)動(dòng)電源的公式,電感內(nèi)電流波動(dòng)大小和電感值成反比,輸出紋波和輸出電容值成反比。所以加大電感值和輸出電容值可以減小紋波。

關(guān)鍵字: LED 設(shè)計(jì) 驅(qū)動(dòng)電源

電動(dòng)汽車(chē)(EV)作為新能源汽車(chē)的重要代表,正逐漸成為全球汽車(chē)產(chǎn)業(yè)的重要發(fā)展方向。電動(dòng)汽車(chē)的核心技術(shù)之一是電機(jī)驅(qū)動(dòng)控制系統(tǒng),而絕緣柵雙極型晶體管(IGBT)作為電機(jī)驅(qū)動(dòng)系統(tǒng)中的關(guān)鍵元件,其性能直接影響到電動(dòng)汽車(chē)的動(dòng)力性能和...

關(guān)鍵字: 電動(dòng)汽車(chē) 新能源 驅(qū)動(dòng)電源

在現(xiàn)代城市建設(shè)中,街道及停車(chē)場(chǎng)照明作為基礎(chǔ)設(shè)施的重要組成部分,其質(zhì)量和效率直接關(guān)系到城市的公共安全、居民生活質(zhì)量和能源利用效率。隨著科技的進(jìn)步,高亮度白光發(fā)光二極管(LED)因其獨(dú)特的優(yōu)勢(shì)逐漸取代傳統(tǒng)光源,成為大功率區(qū)域...

關(guān)鍵字: 發(fā)光二極管 驅(qū)動(dòng)電源 LED

LED通用照明設(shè)計(jì)工程師會(huì)遇到許多挑戰(zhàn),如功率密度、功率因數(shù)校正(PFC)、空間受限和可靠性等。

關(guān)鍵字: LED 驅(qū)動(dòng)電源 功率因數(shù)校正

在LED照明技術(shù)日益普及的今天,LED驅(qū)動(dòng)電源的電磁干擾(EMI)問(wèn)題成為了一個(gè)不可忽視的挑戰(zhàn)。電磁干擾不僅會(huì)影響LED燈具的正常工作,還可能對(duì)周?chē)娮釉O(shè)備造成不利影響,甚至引發(fā)系統(tǒng)故障。因此,采取有效的硬件措施來(lái)解決L...

關(guān)鍵字: LED照明技術(shù) 電磁干擾 驅(qū)動(dòng)電源

開(kāi)關(guān)電源具有效率高的特性,而且開(kāi)關(guān)電源的變壓器體積比串聯(lián)穩(wěn)壓型電源的要小得多,電源電路比較整潔,整機(jī)重量也有所下降,所以,現(xiàn)在的LED驅(qū)動(dòng)電源

關(guān)鍵字: LED 驅(qū)動(dòng)電源 開(kāi)關(guān)電源

LED驅(qū)動(dòng)電源是把電源供應(yīng)轉(zhuǎn)換為特定的電壓電流以驅(qū)動(dòng)LED發(fā)光的電壓轉(zhuǎn)換器,通常情況下:LED驅(qū)動(dòng)電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: LED 隧道燈 驅(qū)動(dòng)電源
關(guān)閉