隨著中國(guó)移動(dòng)通信的飛速發(fā)展,中國(guó)移動(dòng)網(wǎng)絡(luò)已經(jīng)在全國(guó)范圍內(nèi)全面鋪開(kāi), 人們對(duì)移動(dòng)電子商務(wù)的出現(xiàn)的呼聲越來(lái)越高! 移動(dòng)電話自動(dòng)售貨機(jī)的出現(xiàn)適應(yīng)了人們的這種要求。
移動(dòng)電話自動(dòng)售貨機(jī)可以在移動(dòng)通信網(wǎng)絡(luò)覆蓋的范圍內(nèi)!通過(guò)手機(jī)支付方式,為用戶提供新穎、方便、即時(shí)#不間斷的自動(dòng)售貨服務(wù)。 因此!大量原有的投幣式自動(dòng)售貨機(jī)面臨更新?lián)Q代的危機(jī),而這種以MSP430單片機(jī)及WAVECOM公司的GSM手機(jī)模塊為基礎(chǔ)的改 造方案, 可以使其在保留原來(lái)投幣功能的同時(shí)擁有移動(dòng)電話購(gòu)物功能。
1 系統(tǒng)結(jié)構(gòu) 改造方案系統(tǒng)框圖如圖1所示。
以前的硬幣自動(dòng)識(shí)別器以硬幣下落擊打金屬板的聲音來(lái)進(jìn)行識(shí)別!現(xiàn)在這種方法已經(jīng)被淘汰。而根據(jù)其下落的速度來(lái)判斷。這種方法更簡(jiǎn)單也更可靠, 當(dāng)硬幣通過(guò)光敏器件時(shí)阻斷光線。 根據(jù)輸出脈沖的寬度就可以判斷出硬幣的面值和真?zhèn)危?以單片機(jī)直接輸出脈沖即可模擬投幣過(guò)程, 紙幣識(shí)別器以磁信號(hào)為基礎(chǔ)。輸出同樣可以模擬, 此方案稍加改進(jìn)也可適用于使用紙幣的自動(dòng)售貨機(jī)。
2 硬件設(shè)計(jì) 本設(shè)計(jì)采用德州儀器公司MSP430F13X/14X FLASH系列的MSP430F149單片機(jī)。MSP430系列是一組超低功耗的微控制器!設(shè)計(jì)成可使用電池長(zhǎng)期工作!電源電 壓范圍1.8-3.6V。 由于具有16位RISC結(jié)構(gòu),16位寄存器和常數(shù)寄存器,MSP430達(dá)到了最大的代碼效率。數(shù)字控制的振蕩器提供快速?gòu)乃械凸哪J教K醒到活動(dòng)模式的能力時(shí)間少于6us。MSP430F14X帶有兩個(gè)帶看門狗功能的16位定時(shí)器、速度極快的8通道12位ADC轉(zhuǎn)換器、一個(gè)內(nèi)部比較器和兩個(gè)通用同步1異步發(fā)射接收器、48個(gè)IO口(均可獨(dú)立控制)的微處理器結(jié)構(gòu)。硬件乘法器提高了單片機(jī)的性能并使單片機(jī)在編碼和硬件上可兼容。MSP430FLASH擦寫次數(shù)高達(dá)10萬(wàn)次!強(qiáng)力抗干擾,具有工業(yè)級(jí)的品質(zhì)。
MSP430F149有60K的FLASH ROM和2KB的RAM。其中FLASH又分為120段(每段512B)的主存儲(chǔ)器和兩段(每段128B)的信息存儲(chǔ)器。FLASH可以整個(gè)擦除也可以分段擦除,這給系統(tǒng)的軟硬件設(shè)計(jì)都帶來(lái)了極大的便利和靈活性。
短消息模塊選用的是WAVECOM公司的M1206雙波段GSM調(diào)制解調(diào)器。M1206支持EGSM900/1800MHZ,專為數(shù)據(jù)、傳真、短信服務(wù)和語(yǔ)音應(yīng)用產(chǎn)品設(shè)計(jì)。采用堅(jiān)固的框架和可靠的WISMO Within技術(shù),使用簡(jiǎn)單的串行RS232接口與外設(shè)連接設(shè)計(jì)中MSP430F149使用MAXIM的MAX3232作為電平轉(zhuǎn)換器件與其通信!端口參數(shù)設(shè)置為:傳輸速率115200bps、8數(shù)據(jù)位、校驗(yàn)位、1位停止位。
顯示器件選擇帶國(guó)標(biāo)中文字庫(kù)的圖形點(diǎn)陣LCD模塊LCM16032,LCD為160X32點(diǎn)陣,可實(shí)現(xiàn)雙排、每排10個(gè)漢字的顯示。LCD與單片機(jī)的接口界面靈活(三種模式并行8位/4位,串行3線/2線),設(shè)計(jì)中采用8位并行接口,以CPU的一組8位IO口對(duì)其進(jìn)行控制。
MSP430F149的IO口P1、P2具有可設(shè)定的中斷功能,與自動(dòng)售貨機(jī)的鍵盤相連!按鍵時(shí)觸發(fā)脈沖,使CPU進(jìn)入中斷處理程序。 以一個(gè)GPIO口輸出脈沖模擬投幣過(guò)程!時(shí)間由定時(shí)器TIMER_A設(shè)定!驅(qū)動(dòng)電路如圖2所示。 MSP430F149的接口資源豐富,可預(yù)留出具有中斷能力的開(kāi)關(guān)量對(duì)貨機(jī)的電源、滿貨、缺貨、機(jī)門等狀態(tài)進(jìn)行檢測(cè),對(duì)燈箱廣告電源#冷氣機(jī)進(jìn)行控制,以GSM網(wǎng)絡(luò)為載體,完成自動(dòng)售貨的交互信、狀態(tài)信息的傳遞,對(duì)整個(gè)運(yùn)營(yíng)網(wǎng)絡(luò)進(jìn)行組網(wǎng)等豐富的功能。

3 軟件設(shè)計(jì) 3.1命令簡(jiǎn)介 AT命令是主要的移動(dòng)電話生產(chǎn)廠商諾基亞、愛(ài)立信、摩托羅拉和HP共同為GSM研制了一套指令,其中包含對(duì)SMS(short Messaging Service)的控制。AT命令在此基礎(chǔ)上演化并被加入GSM07.05標(biāo)準(zhǔn),以及之后的GSM07.7標(biāo)準(zhǔn)。對(duì)SMS的控制共有三種實(shí)現(xiàn)途徑:Block Mode、Text Mode和PDU Mode。
設(shè)計(jì)中初始化時(shí)設(shè)置為PDU Mode,它是發(fā)送或接收手機(jī)SMS消息的一種方法,消息正文經(jīng)過(guò)十六進(jìn)制編碼后進(jìn)行傳送。PDU串不僅包含了消息!而且還有很多發(fā)送者的信息、它的SMS服務(wù)中心、時(shí)間標(biāo)志等等。這些都是以8位字節(jié)的16進(jìn)制數(shù),或者半8位字節(jié)的十進(jìn)制數(shù)。
當(dāng)短信模塊收到顧客發(fā)送的短信“BUY”時(shí),將會(huì)自動(dòng)通過(guò)串口將以下字符串發(fā)給處理器:08 91 683108100005F0 11 00 0B 91 318612620F1 00000003 C26A16。
其中“6831081000005F0”是所使用的服務(wù)中心地址。由于位置上略有處理,實(shí)際號(hào)碼應(yīng)為:86138000100500(字母F意指長(zhǎng)度減1);“3186012620F1”是被叫號(hào)碼,也經(jīng)過(guò)了移位處理,實(shí)際號(hào)碼為13681062021;“C26A16”是經(jīng)過(guò)編碼后的短信息內(nèi)容“BUY”。缺省的GSM字符集為7位編碼,可以簡(jiǎn)單地理解為ASCII碼,依次將下一7位編碼的后幾位逐次移至前面,形成新的8位編碼。
發(fā)送短消息的AT命令是:AT+CMGS=“+8613xxxxxxxx”回車
>輸入短消息。Crtl+Z MSP430將命令翻譯成對(duì)應(yīng)的ASCII碼,通過(guò)RS232發(fā)送給短消息模塊,即可將交易信息發(fā)送給基站。
3.2主程序設(shè)計(jì) 程序流程圖如圖3所示(由于原PDF資料不清晰,所以未作列出此圖)
MSP430上電后對(duì)自身并通過(guò)串口對(duì)M1206進(jìn)行初始化設(shè)置后即進(jìn)入等待狀態(tài)。GSM模塊收到短消息后直接發(fā)送給處理器,MSP430在串口中斷中進(jìn)行解碼,提取用戶電話號(hào)碼及短消息內(nèi)容,通過(guò)并口驅(qū)動(dòng)LCD顯示提示語(yǔ)&用戶按自動(dòng)售貨機(jī)鍵盤選擇商品后,MSP430以帶中斷能力的口捕獲該開(kāi)關(guān)量!將顧客電話號(hào)碼、交易金額、時(shí)間發(fā)送給運(yùn)營(yíng)商,信譽(yù)確認(rèn)后,產(chǎn)生模擬的投幣脈沖,自動(dòng) 售貨機(jī)由機(jī)械驅(qū)動(dòng)裝置彈出用戶所需要的商品。
整個(gè)保持了與自動(dòng)售貨機(jī)的兼容性,完全模擬投幣購(gòu)物過(guò)程,并且不影響原系統(tǒng)的正常運(yùn)行。
4 總結(jié) 本系統(tǒng)采用MSP430F149與M1206短消息模塊完成了對(duì)普通投幣式自動(dòng)售貨機(jī)的升級(jí),使其具有了移動(dòng)電話購(gòu)物功能。其結(jié)構(gòu)簡(jiǎn)單,可靠性高,處理功能強(qiáng)大,成本低廉,實(shí)踐證明其能整個(gè)系統(tǒng)進(jìn)行高效可靠的控制。 |