新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于EasyARM615的分布式排隊(duì)系統(tǒng)設(shè)計(jì)

基于EasyARM615的分布式排隊(duì)系統(tǒng)設(shè)計(jì)

作者: 時(shí)間:2010-09-29 來(lái)源:網(wǎng)絡(luò) 收藏


4.1 通信方式

采用RS485總線,工作于半雙工方式。RS485為差分平衡數(shù)字通信接口,采用主從式通信方式,主機(jī)采用查詢(xún)工作方式,從機(jī)采用中斷工作方式。通信總是由主機(jī)開(kāi)始,循環(huán)地給從機(jī)發(fā)送查詢(xún)命令,從機(jī)返回相應(yīng)的應(yīng)答信息。除非主機(jī)呼叫從機(jī),從機(jī)在其他情況下不能主動(dòng)向通信總線上送出信息。

4.2 窗口優(yōu)先級(jí)和平衡分配算法

在多隊(duì)列多窗口、業(yè)務(wù)優(yōu)先級(jí)辦理的情況下,需要將客戶(hù)按照“先來(lái)先辦,平均分配”的原則分配到各個(gè)窗口。為了解決各業(yè)務(wù)的多窗口平均分配,在優(yōu)先級(jí)系統(tǒng)輸入隊(duì)列調(diào)度算法的基礎(chǔ)上,改進(jìn)并了一種窗口優(yōu)先級(jí)和平衡分配算法[2]來(lái)解決該問(wèn)題,基本步驟如下:

①獲得當(dāng)前窗口可辦理的業(yè)務(wù)列表。

②判斷最高優(yōu)先級(jí)的一個(gè)或多個(gè)業(yè)務(wù)的隊(duì)列中是否有號(hào)。

③若存在號(hào),判斷當(dāng)前窗口是否是同類(lèi)窗口中最早請(qǐng)求的;若不是,則跳轉(zhuǎn)到⑤。

④若是,從最高業(yè)務(wù)級(jí)別的隊(duì)列中取得排隊(duì)時(shí)間最早的排隊(duì)號(hào)。

⑤繼續(xù)查找次優(yōu)先級(jí)隊(duì)列,直到取得排隊(duì)號(hào)或查找所有隊(duì)列完畢;若無(wú)排隊(duì)號(hào),返回。

4.3 程序

主程序流程如圖3所示。主機(jī)初始化后,從01號(hào)從機(jī)(即呼叫器,地址=02H)開(kāi)始查詢(xún),如有應(yīng)答命令請(qǐng)求,根據(jù)命令作相應(yīng)處理。



(1)請(qǐng)求發(fā)送

主機(jī)將最靠前的顧客號(hào)碼發(fā)送到該機(jī),并置發(fā)送標(biāo)志F=1。

(2)請(qǐng)求接收

當(dāng)呼叫器重呼或暫停時(shí),向主機(jī)發(fā)送數(shù)據(jù)。此時(shí),主機(jī)接收該從機(jī)數(shù)據(jù),接收完成后,立即查詢(xún)從機(jī)并發(fā)送數(shù)據(jù),置F=l。若從機(jī)不應(yīng)答,表示該機(jī)無(wú)請(qǐng)求服務(wù)或沒(méi)有該設(shè)備,則清F=0。

主機(jī)通信完成后將顯示更新的數(shù)據(jù)于LCD屏,根據(jù)發(fā)送標(biāo)志決定是否將數(shù)據(jù)送到該從機(jī)對(duì)應(yīng)的窗口顯示屏、主顯示屏及播放語(yǔ)音,然后地址+2并判斷是否開(kāi)始新的查詢(xún)。

結(jié) 語(yǔ)

本文設(shè)計(jì)了由主機(jī)、從機(jī)AT89S52單片機(jī)及其外圍電路構(gòu)成的智能排隊(duì)管理系統(tǒng)。以高性能的32位開(kāi)發(fā)套件為主機(jī)控制器,以?xún)r(jià)格低廉的單片機(jī)為從機(jī)搭建起來(lái)的智能排隊(duì)系統(tǒng),既能解決無(wú)序排隊(duì)問(wèn)題,又能提高服務(wù)質(zhì)量,可以對(duì)多個(gè)窗口和隨機(jī)出現(xiàn)的客戶(hù)流進(jìn)行自動(dòng)排隊(duì)管理,順序呼叫顧客到對(duì)應(yīng)的窗口辦理業(yè)務(wù)。

本文引用地址:http://butianyuan.cn/article/151469.htm

上一頁(yè) 1 2 下一頁(yè)

評(píng)論


相關(guān)推薦

技術(shù)專(zhuān)區(qū)

關(guān)閉