基于MDB/ICP協(xié)議的自動(dòng)售賣系統(tǒng)的主控制器
隨著國(guó)你經(jīng)濟(jì)和技術(shù)的發(fā)展,自動(dòng)售賣系統(tǒng)由于其方便性、易管理性和低成本,正得到越來(lái)越廣泛的應(yīng)用。而自動(dòng)售賣系統(tǒng)的外設(shè)也越來(lái)越復(fù)雜,從投幣機(jī)到讀鈔機(jī)到非現(xiàn)金交易(如IC記賬卡),導(dǎo)致對(duì)主控制器的要求越來(lái)越高。為了簡(jiǎn)化設(shè)計(jì),采用一個(gè)簡(jiǎn)單、穩(wěn)定的內(nèi)部通訊總線協(xié)議非常必要。
本文介紹了歐洲售機(jī)制造者協(xié)會(huì)(EVMMA)制定的MDB/ICP總線協(xié)議。該協(xié)議簡(jiǎn)潔明了,功能強(qiáng)大,可擴(kuò)展性強(qiáng),并且對(duì)外掛外設(shè)備數(shù)目沒(méi)有限制,是理想的自動(dòng)售賣系統(tǒng)內(nèi)部總線協(xié)議。本文從主控制器的角度給出了對(duì)MDB/ICP總線進(jìn)行操作控制的硬件和軟件實(shí)現(xiàn)。
1 MDB/ICP協(xié)議簡(jiǎn)介
MDB/ICP協(xié)議(Multi-Drop Bus / Internal Communication Protocol)是歐洲售貨機(jī)制造者協(xié)會(huì)制定的一套用于協(xié)調(diào)自動(dòng)售賣機(jī)的主控制器(VMC)與多個(gè)外設(shè)之間通信的協(xié)議。硬幣機(jī)和讀鈔機(jī)的標(biāo)準(zhǔn)首先是由Coinco在美國(guó)可口可樂(lè)公司的指定下開發(fā)的。這個(gè)標(biāo)準(zhǔn)于1993年被NAMA協(xié)會(huì)采用,經(jīng)過(guò)一個(gè)專門的工作組修訂后,于1994年被EVMMA采用。第二階段的非現(xiàn)金交易標(biāo)準(zhǔn)由Debitek代表NAMA開發(fā),并于1994年被NAMA采用。EVMMA加入了一些兼容的指令后于1994年采用。
MDB接口實(shí)際上是工作于9600波特率的主從型串行總線接口,所外圍設(shè)備(例如硬幣機(jī)、讀鈔機(jī)、讀卡器等)均為主控制器(傳統(tǒng)上稱售貨機(jī)控制器——VMC)的從機(jī)。所有外圍設(shè)備與VMC之間的通信方式都一致。
MDB協(xié)議的串行位格式為:1個(gè)起始位,8個(gè)數(shù)據(jù)位,1個(gè)方式位與1個(gè)停止位,共11位。位傳遞的順序如圖1所示。其中方式位根據(jù)傳遞的方式不同置0或置1。在MDB總線上,VMC通過(guò)廣播方式向外發(fā)送命令。第一字節(jié)為地址字節(jié)(實(shí)際上只有高5位尋址信息,低3位為對(duì)外設(shè)的指令),該字節(jié)被所有的外設(shè)讀取,但只有符合地址字節(jié)所指定的外設(shè)才處理其后的數(shù)據(jù)字節(jié),并做出反應(yīng)。在VMC到外設(shè)的數(shù)據(jù)中,地址字節(jié)的方式位被置1,數(shù)據(jù)字節(jié)的方式位被置0,外設(shè)通過(guò)檢驗(yàn)接收到的方式位確認(rèn)是地址命令還是數(shù)據(jù)。當(dāng)數(shù)據(jù)從外設(shè)發(fā)送到主機(jī)時(shí),最后送出的字節(jié)方式位被置1,標(biāo)志著數(shù)據(jù)發(fā)送完畢。
VMC向外設(shè)傳送的指令由一個(gè)地址字節(jié)、一些可選的數(shù)據(jù)字節(jié)與一個(gè)校驗(yàn)和(CHK)字節(jié)構(gòu)成。發(fā)送指令后,外設(shè)應(yīng)答VMC的通信塊可以由一個(gè)數(shù)據(jù)塊和一個(gè)CHK字節(jié)組成,或者一個(gè)應(yīng)答字節(jié)(ACK),或者一個(gè)無(wú)應(yīng)答字節(jié)(NAK)。如果外設(shè)應(yīng)答數(shù)據(jù)塊的話,VMC將通過(guò)一個(gè)應(yīng)答字節(jié)(ACK)、無(wú)應(yīng)答字節(jié)(NAK)或得發(fā)字節(jié)(RET)應(yīng)答外設(shè)傳回的數(shù)據(jù)。
(2)字節(jié)的傳送
圖2至圖5為幾個(gè)典型的會(huì)話例子,其中“*”表示傳送時(shí)方式位置1,“ADD”表示地址字節(jié),“CHK”表示傳送數(shù)據(jù)的校驗(yàn)和。
評(píng)論