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