国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

自動售貨機中MDB/ICP協(xié)議通訊的實現(xiàn)

2015-10-19 12:38:38趙政
科技視界 2015年29期
關(guān)鍵詞:單片機

趙政

【摘 要】MDB協(xié)議又名ICP協(xié)議是由國家自動機械銷售協(xié)會(NAMA)和歐洲售貨機協(xié)會(EVA)的有關(guān)成員制訂,是一套用于協(xié)調(diào)自動售賣機的主控制器(VMC)與多個外設(shè)之間通信的協(xié)議。本文提出以STC單片機為例,實現(xiàn)VMC與外設(shè)的MDB/ICP協(xié)議通訊。

【關(guān)鍵詞】自動售貨機;單片機;MDB/ICP協(xié)議

【Abstract】MDB protocol, also known as the ICP protocol is formulated by the concerned members of the National Automated Machinery Sales Association (NAMA) and European vending machine Association (EVA), it is set for the communication between vending machine main controller (VMC) and multiple peripherals. This paper introduces and presents the MDB/ICP protocol communication between VMC and peripheral using STC Single chip microcomputer.

【Key words】Vending machine; Single chip microcomputer; MDB/ICP protocol

0 引言

自動售貨機被稱為“永不下班的超級營業(yè)員”。是20世紀70年代在日本和歐美發(fā)展起來的高新技術(shù)產(chǎn)品,這種零售方式已經(jīng)在世界65個國家和地區(qū)出現(xiàn)。自動售貨機在日本被親切地稱為“微型小店”。 “微型小店”出售的商品,從咖啡、香煙、各種酒類已經(jīng)發(fā)展到部分日常生活用品,就連報紙、大米、郵票、明信片、電池、錄像帶等也可以自動出售。在自動售貨機的使用過程中,VMC(Vending Machine Controller)與外設(shè)(讀卡器、硬幣器、紙幣器等)的通訊是很重要的,因此,采用一種可靠的內(nèi)部通訊總線協(xié)議非常必要。MDB/ICP協(xié)議是由國家自動機械銷售協(xié)會(NAMA)和歐洲售貨機協(xié)會(EVA)的有關(guān)成員制訂,用于協(xié)調(diào)自動售賣機的主控制器(VMC)與多個外設(shè)之間通信的協(xié)議。

1 MDB/ICP 協(xié)議

1.1 簡介

MDB 為一個主從結(jié)構(gòu)的串行總線接口標準,采用9600bps 的波特率通信。主從操作模式,MDB 規(guī)定總線有唯一1個主機和最多32個外設(shè)。每個外設(shè)有唯一的地址和命令。所有通信的外設(shè)都是主機完成初始化的。

1.2 通信格式

a.字節(jié)格式

一個字節(jié)被定義為11位的格式,1個起始位+8個數(shù)據(jù)位+1個模式位+1位停止位;其中,模式位根據(jù)傳遞方式的不同分別置0或置1:當控制器VMC 發(fā)送數(shù)據(jù)到外設(shè)時,模式位置1表示為地址字節(jié),置0表示數(shù)據(jù)字節(jié);當外設(shè)發(fā)送數(shù)據(jù)到控制器VMC時,模式位置1表示所有字節(jié)發(fā)送完畢。

b.塊格式

主到從:

控制器VMC 傳送給外設(shè)的數(shù)據(jù)由1個地址字節(jié)、若干數(shù)據(jù)字節(jié)和1個校驗字節(jié)組成,總數(shù)不超過36個字節(jié)。

地址字節(jié)包含兩部分命令,高5 位是外設(shè)的地址,低3 位是外設(shè)的命令。

主控器響應(yīng)外設(shè)時發(fā)送應(yīng)答(ACK)、非應(yīng)答(NAK)、重發(fā)(RET)。5ms 超時(無響應(yīng))等價于非應(yīng)答。

如果從機地址在5mS 內(nèi)無響應(yīng),主控器重發(fā)相同的命令或不同的命令,直到收到從機的響應(yīng)或達到最大無響應(yīng)時間(硬幣器為2S、紙幣器為5S)。在這期間,主控器同時應(yīng)該訪問其他外設(shè)。

主控器可以通過拉低發(fā)送線(至少100mS)對總線進行復位。

從到主:

一幀數(shù)據(jù)包含一個數(shù)據(jù)塊、1字節(jié)校驗和、1字節(jié)應(yīng)答或非應(yīng)答。校驗和字節(jié)包含在最大數(shù)據(jù)塊(36 字節(jié))之內(nèi)。

外設(shè)響應(yīng)主控器時,主控器必須響應(yīng)一個應(yīng)答,非應(yīng)答或重發(fā)。

外設(shè)在相應(yīng)ACK或NAK時無需校驗和。

當外設(shè)發(fā)送一個數(shù)據(jù)塊之后,主控器在5ms無響應(yīng)時間之內(nèi)必須響應(yīng)一個ACK、NAK或RET。

c.校驗和

校驗和字節(jié)在每個數(shù)據(jù)塊的最后發(fā)送。校驗和字節(jié)是地址字節(jié)和所有數(shù)據(jù)字節(jié)的累加,校驗和字節(jié)并不包含在總和中。

1.3 MDB/ICP通訊模式

每次通訊過程都由VMC發(fā)起,外設(shè)響應(yīng),這種方式可以避免總線沖突,同時利用校驗和(CHK)和重發(fā)機制實現(xiàn)錯誤檢查和更正,提高了內(nèi)部通訊的可靠性。

幾種典型的通訊過程下圖(圖1)所示。其中:ADD表示地址字節(jié),DAT表示數(shù)據(jù)字節(jié),CHK表示校驗和(計算ADD和所有DAT之和的字節(jié)),“*”表示模式位置1。

2 硬件結(jié)構(gòu)

在MDB總線協(xié)議基礎(chǔ)上,采用51系列單片機通過MDB總線與投幣機、讀鈔機和讀卡器交互,控制外設(shè)的運轉(zhuǎn),并從外設(shè)獲得用戶的支付情況。同時也負責處理與用戶之間的交互,驅(qū)動液晶顯示,處理鍵盤輸入,控制電機運轉(zhuǎn)出貨。系統(tǒng)結(jié)構(gòu)圖(圖2)如下:

3 軟件構(gòu)架

3.1 程序流程圖(圖3)

3.2 軟件代碼

a.串口初始化

初始化串口時,主要工作是設(shè)置波特率為9600和傳輸方式為11位傳輸。為順利獲得9600波特率,本項目單片機采用11.0592Mhz晶振為。源代碼如下(采用C語言編寫,Keil編譯):

b.MDB協(xié)議通訊

這是通訊的核心部分。根據(jù)需要傳送數(shù)據(jù)包,計算校驗字節(jié),控制方式位,在時序允許的響應(yīng)時間內(nèi)接受外設(shè)返回的數(shù)據(jù),做出NAK或ACK等反應(yīng)。并且按照MDB/ICP標準中推薦的方式處理異常情況,當接受數(shù)據(jù)超時或校驗和錯時, 重復發(fā)送命令多次,以增強容錯性能。將接收到的數(shù)據(jù)返回給調(diào)用者,并返回結(jié)果碼。源代碼如下(采用C語言編寫,Keil編譯):

【參考文獻】

[1]徐愛鈞,彭秀華.Keil C51單片機高級語言應(yīng)用編程與實踐[M].電子工業(yè)出版社,2013.

[2]Stephen Prata. C Primer Plus [M] Addison-Wesley Educational Publishers Inc.2004.

[3]NAMA. Multi-Drop Bus/Internal Communication Protocol MDB/ICP[EB/OL]. [2003].http://ww.vending.org.

[4]洪強寧,齊國生,葉丹.基于MDB/ICP 協(xié)議的自動售賣系統(tǒng)的主控制器實現(xiàn)[J].電子技術(shù)應(yīng)用,2002(9):28-30.

[5]陳安寶.基于MDB/ICP 協(xié)議的紙幣識別器與自動售貨機通訊的研究[J].機械管理開發(fā),2004(4):77-78.

[責任編輯:楊玉潔]

猜你喜歡
單片機
基于單片機的SPWM控制逆變器的設(shè)計與實現(xiàn)
電子制作(2019年13期)2020-01-14 03:15:28
基于單片機的層次漸變暖燈的研究
電子制作(2019年15期)2019-08-27 01:12:10
基于單片機的多功能智能插排
電子制作(2019年11期)2019-07-04 00:34:48
基于單片機的便捷式LCF測量儀
電子制作(2019年9期)2019-05-30 09:42:02
小議PLC與單片機之間的串行通信及應(yīng)用
電子制作(2018年12期)2018-08-01 00:48:04
MSP430單片機在仿真中要注意的幾點問題
電子制作(2017年9期)2017-04-17 03:00:53
基于單片機的平衡控制系統(tǒng)設(shè)計
電子制作(2017年19期)2017-02-02 07:08:27
基于單片機的三維LED點陣設(shè)計
電子制作(2016年21期)2016-05-17 03:52:51
Microchip推出兩個全新PIC單片機系列
基于Proteus的單片機控制系統(tǒng)的仿真設(shè)計
从江县| 新平| 佛教| 洪湖市| 韶山市| 方正县| 呼图壁县| 诸暨市| 万年县| 安庆市| 荆门市| 新建县| 宁晋县| 甘肃省| 格尔木市| 长沙县| 泰来县| 迭部县| 偃师市| 襄垣县| 卫辉市| 丹棱县| 屏山县| 奎屯市| 榆社县| 莲花县| 苏州市| 新安县| 南京市| 潢川县| 灌南县| 子洲县| 易门县| 彭州市| 余干县| 任丘市| 太保市| 龙口市| 平乐县| 威宁| 天津市|