采用μPD78F0034單片機(jī)的出租車計(jì)費(fèi)器方案設(shè)計(jì)與實(shí)現(xiàn)
摘要:介紹了基于μPD78F0034單片機(jī)和模塊式結(jié)構(gòu)的出租車計(jì)費(fèi)器的硬件和軟件設(shè)計(jì)方法,討論了μPD78F0034單片機(jī)的主要特點(diǎn);介紹了該單片機(jī)和PC機(jī)串行通信的硬件連接方法;同時(shí)給出了采用單、雙信號(hào)防作弊技術(shù)來防止計(jì)費(fèi)器作弊的具體實(shí)現(xiàn)方法。
本文引用地址:http://cafeforensic.com/article/171364.htm隨著出租車行業(yè)的發(fā)展,對(duì)出租車計(jì)費(fèi)器的要求也越來越高,用戶不僅要求計(jì)費(fèi)器性能穩(wěn)定,計(jì)費(fèi)準(zhǔn)確,有防作弊功能;同時(shí)還要求其具有車票資料打印 、IC卡付費(fèi)、語音報(bào)話、和電腦串行通信等功能。通常,設(shè)計(jì)出租車計(jì)費(fèi)器面臨以下三方面的問題:
(1)不同國(guó)家和地區(qū)的計(jì)費(fèi)方式存在差異。有些地區(qū)有夜間收費(fèi)及郊區(qū)收費(fèi)等,而有些地區(qū)則無夜間收費(fèi)和郊區(qū)收費(fèi);即使同一地區(qū),不同車型的出租車,其計(jì)費(fèi)方式也有差別;另一方面,出租車還面臨幾年一次的調(diào)價(jià)或調(diào)整計(jì)費(fèi)方式等問題。因此,所設(shè)計(jì)的計(jì)費(fèi)器不僅要能滿足不同國(guó)家和地區(qū)的要求,而且計(jì)費(fèi)方式的調(diào)整也應(yīng)當(dāng)很方便。
(2)由于個(gè)別地區(qū)對(duì)計(jì)費(fèi)器有特殊要求,有時(shí)必須修改軟件;另外,計(jì)費(fèi)器還面臨軟件的升級(jí);因而,所設(shè)計(jì)的計(jì)費(fèi)器應(yīng)能很方便地重新編程。
(3)計(jì)費(fèi)器必須要有防作弊功能,能有效防止司機(jī)作弊;同時(shí)要防止計(jì)費(fèi)器在營(yíng)運(yùn)過程中死機(jī)。
為此,筆者設(shè)計(jì)了一款計(jì)費(fèi)器,較好地解決了上述問題。該計(jì)費(fèi)器內(nèi)設(shè)置了多達(dá)64個(gè)選項(xiàng),幾乎涵蓋了大多數(shù)國(guó)家和地區(qū)的出租車計(jì)費(fèi)方式,因此,使用時(shí)無需更改計(jì)費(fèi)器的硬件,而只需更改相應(yīng)的選項(xiàng)資料,便可適用于不同的國(guó)家和地區(qū),且計(jì)費(fèi)資料的傳送可由電腦通過RS-232串口或?qū)S玫氖殖质劫Y料傳輸器來完成,非常方便;由于采用了具有32kB FLASH ROM的單片機(jī)μPD78F0034,因此,編程時(shí)無需將單片機(jī)從電路板上取下,就可以直接對(duì)單片機(jī)進(jìn)行編程;另外,該設(shè)計(jì)還采用單、雙信號(hào)防作弊技術(shù)和看門狗電路,較好地解決了計(jì)費(fèi)器的作弊現(xiàn)象及死機(jī)問題。目前,該計(jì)費(fèi)器已在許多大中城市得到了廣泛的應(yīng)用。
1 系統(tǒng)中各模塊的硬件結(jié)構(gòu)
這種用μPD78F0034為主控器件設(shè)計(jì)的計(jì)費(fèi)器的組成框圖如圖1所示。整個(gè)計(jì)費(fèi)器系統(tǒng)共由五個(gè)模塊組成,分別為主控模塊、按鍵顯示模塊、防作弊及脈沖輸入模塊、通信模塊和電源模塊。
1.1 主控模塊
主控模塊的結(jié)構(gòu)框圖如圖2所示,圖中的單片機(jī)為日本NEC 公司的μPD78F0034,該芯片的主要特點(diǎn)如下:
●時(shí)鐘為8.38MHz時(shí),指令周期為0.24μs;
●ROM為32kB FLASH,RAM為1024 bytes;
●可尋址空間為64kB bytes,有5個(gè)外部中斷和15個(gè)內(nèi)部中斷;
●帶有39個(gè)CMOS I/O,8?jìng)€(gè)CMOS輸入和4個(gè)N-CH漏極開路I/O;
●帶有1個(gè)16位定時(shí)/計(jì)數(shù)器和2個(gè)8位定時(shí)/計(jì)數(shù)器;
●帶有1個(gè)時(shí)鐘定時(shí)器、1個(gè)看門狗定時(shí)器和1個(gè)UART端口;
●支持I2C 總線,可輸出時(shí)鐘及蜂鳴信號(hào);
●外部數(shù)據(jù)總線為8位,內(nèi)部寄存器為16位;
●有8位無符號(hào)乘法指令和16位除法指令;
●工作電壓范圍為1.8V~5.5V,具有STOP/HALT工作模式。
由此可見,該芯片的性能要優(yōu)于目前流行的MCS-51系列,其8位無符號(hào)乘法指令及16位除法指令給軟件編程帶來了很大的方便。對(duì)μPD78F0034編程時(shí),只需用其5個(gè)引腳,其中3個(gè)引腳在正常工作時(shí)用到,因此在設(shè)計(jì)電路板時(shí)可將這三個(gè)引腳做一跳線開關(guān);編程時(shí),將這三個(gè)引腳與編程器相連,正常工作時(shí)則與電路板上的元件相連。這樣就可以不用將μPD78F0034從電路板上取下(因該單片機(jī)為貼片式封裝,取下會(huì)很麻煩)而直接對(duì)其編程,即在系統(tǒng)可編程,該方法為開發(fā)調(diào)試及以后的功能修改和軟件升級(jí)提供了極大的方便。本次開發(fā)時(shí),甚至沒有用到μPD78F0034的開發(fā)系統(tǒng),而是在PC機(jī)上將程序?qū)懞煤?,通過編譯變成二進(jìn)制代碼,然后直接通過編程器將其寫入到μPD78F0034中,便可調(diào)試計(jì)費(fèi)器的各項(xiàng)功能。此外?該主控模塊中的復(fù)位、看門狗及電源監(jiān)控由MAX705芯片來完成。時(shí)鐘及存儲(chǔ)器由芯片DS1244Y來完成。通過選項(xiàng)可以設(shè)定是否有打印功能,各種打印命令數(shù)據(jù)均由PC機(jī)通過RS-232串行口或手持式資料傳輸器傳給計(jì)費(fèi)器并存儲(chǔ)在DS1244Y中。該計(jì)費(fèi)器可使用司機(jī)卡、采集卡及收費(fèi)卡三種IC卡,使用哪種卡均可由選項(xiàng)控制。計(jì)費(fèi)器通過一條I/O線控制語音接口電路。乘客上車時(shí),單片機(jī)送50ms的低脈沖給語音電路使其說一段話。乘客下車時(shí),單片機(jī)則用20ms的低脈沖使語音電路說另一段話。
評(píng)論