M68HC912D60 MCU在稅務(wù)監(jiān)控系統(tǒng)設(shè)計(jì)中的應(yīng)用
控制單元模塊主要完成用戶對(duì)整個(gè)系統(tǒng)的控制,即對(duì)數(shù)據(jù)提供可靠的掉電保護(hù),防止掉電后丟失數(shù)據(jù),對(duì)系統(tǒng)提供徹底、統(tǒng)一的復(fù)位,以防系統(tǒng)死機(jī),實(shí)現(xiàn)對(duì)程序的監(jiān)視功能,解決了程序“跑飛”失控及死循環(huán)問題;8250串行接口模塊完成 MCU與嵌入式MODEM芯片的接口。
嵌入式MODEM單元模塊完成數(shù)據(jù)的調(diào)制解調(diào),并通過電話線接口與遠(yuǎn)程的標(biāo)準(zhǔn)MODEM進(jìn)行通信;8255接口模塊完成數(shù)據(jù)線的擴(kuò)充,提供足夠的數(shù)據(jù)線來驅(qū)動(dòng)系統(tǒng)的指示電路;時(shí)鐘電路模塊主要是為系統(tǒng)提供一個(gè)準(zhǔn)確、穩(wěn)定和可靠的時(shí)鐘,以便定時(shí)和為監(jiān)視器(Watchdog)電路提供方波輸入等。其中,8255接口模塊、8250接口模塊及外擴(kuò)存儲(chǔ)器RAM之間,是通過M68HC912D60的C口的高三位經(jīng)過譯碼后的片選信號(hào)控制各模塊的片選來進(jìn)行切換的。
4.3 系統(tǒng)軟件設(shè)計(jì)
軟件部分包括PoS稅控盒部分和稅務(wù)部門的主機(jī)上運(yùn)行的服務(wù)器部分。前者是以MCU為核心的嵌入式系統(tǒng),全部以匯編語(yǔ)言編寫;后者運(yùn)行于 Windows平臺(tái),采用VB語(yǔ)言。圖3給出了主程序的工作流程。
本文引用地址:http://cafeforensic.com/article/201612/324828.htm |
系統(tǒng)中的通信協(xié)議包括稅控分機(jī)與POSMaster 之間的通信協(xié)議、PoSMaster與稅務(wù)部門主機(jī)間的通信協(xié)議、稅控分機(jī)與PC機(jī)直接通信的協(xié)議(用于PoSMaster的通信線路故障時(shí))。本系統(tǒng)參考電信部門IC卡公用付費(fèi)電話系統(tǒng)的通信協(xié)議和相關(guān)的國(guó)家標(biāo)準(zhǔn),制定了自己的通信協(xié)議。考慮到設(shè)計(jì)的方便性,在上述的三種通信中采用基本相同的鏈路層和應(yīng)用層協(xié)議。下面是對(duì)所用協(xié)議的簡(jiǎn)單描述。
4.3.1 幀結(jié)構(gòu)
鏈路層有兩種幀結(jié)構(gòu):命令幀和數(shù)據(jù)幀。
(a)命令幀
用于傳輸建鏈請(qǐng)求、應(yīng)答、請(qǐng)求數(shù)據(jù)等命令以進(jìn)行鏈路控制,命令幀結(jié)構(gòu)如下:
命令幀符號(hào)定義: SOH 標(biāo)題開始
TYPE 指示幀的類型
Length 指示幀長(zhǎng)度
Command 傳輸?shù)拿睿纾?br />命令字符:
AUDIT 請(qǐng)求數(shù)據(jù)
ACK 肯定應(yīng)答
NAK 否定應(yīng)答
EOT 傳輸結(jié)束
(b)數(shù)據(jù)幀
用于傳輸實(shí)際的數(shù)據(jù)即稅控信息數(shù)據(jù),數(shù)據(jù)幀結(jié)構(gòu)如下:
數(shù)據(jù)幀符號(hào)定義: SOH 標(biāo)題開始
TYPE 指示幀的類型
Length 指示幀長(zhǎng)度
DATA 傳輸?shù)恼?數(shù)據(jù))
ETB 指示一幀數(shù)據(jù)結(jié)束
ETX 指示所有數(shù)據(jù)結(jié)束
BCC 校驗(yàn)碼
4.3.2 通信的流程
在物理層建立連接后,先發(fā)送一長(zhǎng)串同步碼,然后再發(fā)送第一幀數(shù)據(jù),數(shù)據(jù)上傳的一方發(fā)送肯定應(yīng)答后開始數(shù)據(jù)傳輸過程。數(shù)據(jù)收集方每接收到一幀數(shù)據(jù),根據(jù)校驗(yàn)的結(jié)果發(fā)肯定或否定應(yīng)答。
4.3.3 差錯(cuò)控制
本協(xié)議采用BCC規(guī)則的偶校驗(yàn)。接收端收到一幀數(shù)據(jù)后,若BCC校驗(yàn)有錯(cuò),則發(fā)送NAK要求對(duì)方重發(fā)上一幀數(shù)據(jù)。對(duì)同一幀信息文電如果重發(fā)次數(shù)超出閾值,則本次通信失敗,雙方退出通信過程。
4.3.4 超時(shí)控制
通信雙方在收到對(duì)方的命令或數(shù)據(jù)后必須在6s以內(nèi)回應(yīng);若某一方在6s內(nèi)沒有收到對(duì)方的回應(yīng)則重發(fā)上一次的命令或數(shù)據(jù)。允許的最大重發(fā)次數(shù)為3次。
評(píng)論