專利名稱:轎車防盜數(shù)字儀表語音告警一體化裝置的制作方法
這是一種把家用轎車的防盜、數(shù)字儀表顯示、語音報(bào)警等功能集于一身的一種裝置。它的功能包括給汽車發(fā)動(dòng)機(jī)加鎖,使其無法被點(diǎn)火啟動(dòng),防止被偷盜開走;給所有車門、行李廂蓋、發(fā)動(dòng)機(jī)倉蓋加鎖,使車的所有門、蓋不能被從外部打開,也不允許他人用試驗(yàn)的辦法多次輸入密碼試著打開車鎖,如發(fā)生以上問題,系統(tǒng)會(huì)發(fā)出一定時(shí)間的警笛鳴叫,提醒值班或周圍人員的注意。同時(shí),裝置還能和遙控器進(jìn)行無線數(shù)傳,把現(xiàn)場(chǎng)發(fā)生的問題發(fā)送給遙控器,遙控器收到傳來的信息后,它的蜂鳴器發(fā)出鳴叫,車主據(jù)此得知停在室外的車子發(fā)生了問題,遙控器上不同的位置(或顏色)的發(fā)光二級(jí)管點(diǎn)燃報(bào)告車主發(fā)生的是什么問題;裝置的功能還包括以數(shù)字方式顯示車輛的行駛速度和發(fā)動(dòng)機(jī)轉(zhuǎn)速;裝置還能累積車輛行駛里程;當(dāng)車輛以超過某一限定速度行駛和行駛中發(fā)生了影響行車安全的故障以及出現(xiàn)燃油即將用完等問題時(shí),裝置能以語音形式向駕駛?cè)藛T發(fā)出告警本裝置使用單片微型電子計(jì)算機(jī)技術(shù)實(shí)現(xiàn)上述功能,全部元器件安裝在一塊印刷電路板上。其主要元件是兩只CPU和與各自配套的少量芯片,CPU使用ATMEL公司生產(chǎn)的AT89C52芯片。由于裝置需要使用較多的I/O口,同時(shí),為使電路簡(jiǎn)單且互不影響,共用了兩片AT89C52,其中第一片(以下簡(jiǎn)稱CPU1)主要用來處理防盜和語音告警,第二片(以下簡(jiǎn)稱CPU2)用來處理車速和發(fā)動(dòng)機(jī)轉(zhuǎn)速測(cè)量和顯示。兩只CPU基本上各自獨(dú)立,互不影響;另用一片同一公司生產(chǎn)的AT89C2051芯片(根據(jù)情況也可采用AT89C52替代,以下稱其為CPU0),制成一只遙控器,遙控器主要用來對(duì)裝置的防盜部分進(jìn)行遙控在電子電路中,常用控制電源的斷通來達(dá)到某種目的,在這份說明書中,我們常使用“CPUI/O口控制”這一術(shù)語來表述一種技術(shù)方法。也就是用CPU的I/O口去控制一只晶體管的導(dǎo)通和關(guān)斷進(jìn)而控制某一電源的開和關(guān)。具體做法是選取一只容量合適的功率場(chǎng)效應(yīng)管(Power MOSFET)或絕緣柵雙極晶體管(IGBT);這類管子多用于變頻技術(shù)的逆變(直流變交流)控制。它們的控制極都稱作柵極(G)。被控制的主電路則分別是源極--漏極(對(duì)Power MOSFET)和發(fā)射機(jī)--集電極(對(duì)IGBT)??刂茦O的輸入阻抗都很高??刂齐娏鹘咏?。當(dāng)控制極電壓為低電位時(shí),主電路截止;柵極為高電位時(shí),主電路飽和導(dǎo)通,筆者找到1只型號(hào)50J101的管子(這個(gè)管子的最大容許電流是50A,也有最大電流不同的同類型管子可供選用),經(jīng)試驗(yàn),當(dāng)柵極為0伏時(shí),源極-漏極(對(duì)IGBT管是發(fā)射極-集電極)間電阻很大,主電路被截止;柵極電壓為3伏時(shí),上述電阻接近0,主電路導(dǎo)通。這是萬用表測(cè)得的結(jié)果,未必十分準(zhǔn)確;若情況確實(shí)如此。就可以用CPU的I/O口輸出直接控制器件進(jìn)而控制電源斷通。例如可以用它控制汽車的啟動(dòng)電機(jī)電源或點(diǎn)火線圈電源的斷通,使車子不能被啟動(dòng)。當(dāng)然也可以選用滿足上述要求的其他管子,這時(shí),可能出現(xiàn)無法用I/O口輸出直接控制功率管,這種情況出現(xiàn)時(shí)可以在CPU的輸出和被控制的功率管間加接一級(jí)電壓適配電路。適配電路的輸入接CPU的I/O口,電路的輸出接功率管的控制極。正確選配適配電路動(dòng)工作點(diǎn)。使其前后都恰能匹配,另外,由于加了一級(jí)電路,控制相位可能變?yōu)橄喾?,這時(shí)可視情況由軟件來適應(yīng)新的變化。在這份說明書中,多次用到這種技術(shù)方法,因此,先給出以上說明,正文中不再贅述本說明中我們還使用到另一種技術(shù)方法,我們簡(jiǎn)稱它為“造1連接和它的輸出點(diǎn)”具體方法是,取兩個(gè)電阻串聯(lián),其下端接地,上端(通過開關(guān)或接點(diǎn))與電源接通,適當(dāng)選取電阻的阻值,使得當(dāng)串聯(lián)電阻的上端接通電源時(shí),兩個(gè)電阻的連接點(diǎn),恰為“1”的電位值,未接通電源時(shí),連接點(diǎn)為“0”的電位值。我們稱這種連接為“造1連接”,把兩個(gè)電阻的連接點(diǎn)稱為造1連接的“輸出點(diǎn)”。這是一種很有用的連接,如果我們把輸出點(diǎn)與CPU的一個(gè)I/O口(引腳)相連,系統(tǒng)在運(yùn)行中軟件讀取連接這個(gè)“輸出點(diǎn)”I/O口(引腳),讀得的結(jié)果為1,說明“造1連接”的上端已經(jīng)與電源接通(它上邊的開關(guān)或接點(diǎn)已經(jīng)閉合),若讀的結(jié)果為0,說明“造1連接”的上端未與電源接通(或接點(diǎn)、開關(guān)未閉合),在本說明中也要多次使用這種表述來表示上述技術(shù)方法,在后面的正文中,如果我們使用“造1連接”或“造1連接的輸出點(diǎn)”這個(gè)詞,就是指使用以上技術(shù)方法防盜部分的控制--遙控器的功能,遙控器的構(gòu)成見說明書附
圖1,它制作得象一只手機(jī)大小,可以隨身攜帶。遙控器上有兩個(gè)按鈕,按下按鈕K1,它向裝置的防盜部分發(fā)送一組字符串(密碼),裝置收到密碼后,與自身保存的密碼進(jìn)行比對(duì),檢查無誤后向防盜部分發(fā)出一系列指令,使防盜部分進(jìn)入警戒狀態(tài);按下另一個(gè)按鈕K2,遙控器向防盜部分發(fā)送另一個(gè)密碼,同樣檢查后可使防盜部分解除警戒。通過以上過程完成整車的上鎖和解鎖功能。遙控器的另一個(gè)功能是接收裝置發(fā)送來的信息;這些信息包含有裝置在警戒狀態(tài)下發(fā)生的問題具體內(nèi)容,并在遙控器上用不同顏色(或不同位置)的發(fā)光二極管顯示出來。遙控器和裝置之間用無線數(shù)傳進(jìn)行數(shù)據(jù)通信,它們之間通信采用半雙工工作方式。這種半雙工通信模塊現(xiàn)在市面上已有出售〖注一〗。不管是在裝置或遙控器收到對(duì)方發(fā)送來的信號(hào)后都要進(jìn)行核對(duì),這樣做一方面是為了保密,另一方面是為了防止收到不同車使用同型這類裝置傳送信號(hào)時(shí)造成誤操作,遙控器傳送密碼給系統(tǒng)的防盜部分后,經(jīng)與自身保存的密碼比對(duì)無誤后,它會(huì)向防盜部分發(fā)出指令關(guān)斷發(fā)動(dòng)機(jī)點(diǎn)火電路和啟動(dòng)電機(jī)電源,汽車不能啟動(dòng);車門及發(fā)動(dòng)機(jī)倉蓋、行李廂蓋被鎖并且被監(jiān)視,一旦被強(qiáng)行撬開防盜部分會(huì)鳴響警笛報(bào)警,同時(shí)裝置會(huì)把警戒狀態(tài)下發(fā)生的這些問題傳送給遙控器,當(dāng)它收到接收的信息后,遙控器上的蜂鳴器鳴叫,會(huì)在遙控器上點(diǎn)亮相應(yīng)的發(fā)光二極管,使車主知曉停放在室外的車子發(fā)生了什么問題。所有的密碼均由計(jì)算機(jī)內(nèi)碼組成,可構(gòu)成密碼有ASCII碼、擴(kuò)展ASCII碼,以及所有漢字的計(jì)算機(jī)內(nèi)碼等。(組成這些密碼的元素近7000個(gè)),假定一個(gè)密碼由10個(gè)字節(jié)的字符串組成,又假如只用數(shù)字作密碼,可形成密碼的數(shù)量會(huì)超過數(shù)十億個(gè),因此,重碼的機(jī)會(huì)極小,由于密碼數(shù)量特大,且采用無線數(shù)傳傳送,泄露密碼的機(jī)會(huì)很小,保密性高。遙控器有一只小的天線,供發(fā)送和接收通信信號(hào)用,因?yàn)檫b控器可以拿到車子附近去加、解鎖,因此它的傳送功率可以不大,而裝置防盜部分發(fā)送輸出功率則要大一些,因?yàn)檐囍麟x開車子較遠(yuǎn)時(shí)要能接收到信號(hào)裝置的防盜部分防盜部分通過接收遙控器的密碼進(jìn)入或退出警戒狀態(tài),CPU1的P3.0和P3.1是接收和發(fā)送信息的專用I/O口,CPU1這兩個(gè)特殊功能口,不能挪做它用根據(jù)有關(guān)規(guī)定,家用轎車的防盜裝置,必須要有止動(dòng)器(阻止使用車輛自身動(dòng)力移動(dòng)車輛,防止車輛被偷開走);周邊防護(hù)(監(jiān)視和防止打開任一車門、行李廂和發(fā)動(dòng)機(jī)倉蓋等周邊設(shè)備);警報(bào)裝置(一旦發(fā)生上述情況要能及時(shí)發(fā)出聲光警報(bào),提醒值班注意)。顯然,以上是在車輛停放、車主離開后,防盜部分應(yīng)具備的功能,習(xí)慣上,把這些功能發(fā)揮作用時(shí),稱做裝置的防盜部分處于警戒狀態(tài),當(dāng)車主用車時(shí),需要上述功能停止發(fā)揮作用,這時(shí)稱防盜系統(tǒng)解除警戒,因此,防盜系統(tǒng)還必須能在設(shè)置/解除警戒狀態(tài)間具有狀態(tài)切換功能,即上述遙控器所具有的功能。在警戒狀態(tài)下發(fā)生任何事件都鳴響警報(bào)器一段時(shí)間,由CPU1的P1.0控制一只警笛的電源實(shí)現(xiàn),需要鳴響警笛時(shí)接通警笛電源即可,需要注意的是每次鳴響不得長(zhǎng)于一定時(shí)間,足以引起注意即可,否則會(huì)變?yōu)閿_民止動(dòng)的目的是阻止汽車被點(diǎn)火啟動(dòng)。達(dá)到這一目的簡(jiǎn)單辦法是切斷汽車啟動(dòng)電機(jī)電源,使發(fā)動(dòng)機(jī)不能啟動(dòng)。但是,僅此一點(diǎn)還是不夠的,必須防止用其它辦法啟動(dòng),所以第二個(gè)措施是斷開點(diǎn)火線圈電源。這樣即使用手搖或拖動(dòng)的辦法也無法啟動(dòng)。使用一個(gè)I/O口,即用CPU的P1.1的輸出控制啟動(dòng)電機(jī)電源,可以達(dá)到不能被啟動(dòng)的目的;使用另一個(gè)I/O口(CPU1的P1.2)控制點(diǎn)火線圈電源,切斷電源可使發(fā)動(dòng)機(jī)無法點(diǎn)火,這是進(jìn)入警戒狀態(tài)后,首先要完成的一件重要任務(wù);如果由于某種原因不能使用切斷點(diǎn)火線圈的辦法實(shí)現(xiàn)止動(dòng),可以改為用在供油管路上安裝常閉電磁閥(無電時(shí)閥門關(guān)閉),再用CPU1的P1.2控制電磁閥電源的辦法,同樣可以實(shí)現(xiàn)上述目的關(guān)于止動(dòng),還有一點(diǎn)要特別說明汽車必須在熄火后、才能實(shí)施止動(dòng),換句話說,如果發(fā)動(dòng)機(jī)還在運(yùn)轉(zhuǎn)(汽車有可能還在跑)。突然斷電(或熄火),很容易造成交通事故或損壞發(fā)動(dòng)機(jī)。必須防止這種情況發(fā)生;方法是做一個(gè)“造1連接”,它的上端連接在發(fā)動(dòng)機(jī)點(diǎn)火鑰匙的后邊,(本文未提及的部分原用電路不變)。用CPU1的I/O口P1.3引腳接這個(gè)“造1連接”的輸出點(diǎn),用它檢查造1連接輸出是否為0來判別發(fā)動(dòng)機(jī)是否熄火。因?yàn)橹挥悬c(diǎn)火鑰匙關(guān)閉這個(gè)點(diǎn)輸出才是0周邊防護(hù)實(shí)際上要做兩件事一是控制,就是在警戒狀態(tài)下,要在車內(nèi)鎖住車門和行李廂蓋、發(fā)動(dòng)機(jī)倉蓋。使門、蓋不能從車外隨意打開;二是監(jiān)視,監(jiān)視四個(gè)車門以及發(fā)動(dòng)機(jī)倉蓋、行李廂蓋的狀態(tài),如果它們被橇開,鳴響警笛一段時(shí)間,車門及倉廂蓋的插銷控制也由一個(gè)I/O口管理。關(guān)于車門、倉廂蓋的控制原理。是用下面辦法實(shí)現(xiàn)的有一種中央控制車門的車子,駕駛臺(tái)上設(shè)有一個(gè)開關(guān),可以控制四個(gè)車門拉手能否從外面打開車門,這種東西實(shí)際上是在手動(dòng)車門機(jī)械拉手上加裝一只電動(dòng)插銷,再由電磁力控制插銷??刂扑举|(zhì)上與控制點(diǎn)火電源、啟動(dòng)電機(jī)電源的方法相同,即選取一個(gè)I/O口控制電源,實(shí)現(xiàn)門、倉、箱插銷控制。如上所述方法,我們選取CPU1的P1.4來控制所有車門。發(fā)動(dòng)機(jī)倉和行李廂的控制方法與車門相同,使用同一個(gè)I/O口關(guān)于門、蓋的監(jiān)視原理,是在所有“門”和“倉、箱蓋”上安裝微動(dòng)開關(guān),使得門、倉、廂蓋關(guān)閉時(shí)微動(dòng)開關(guān)是斷開的;門和蓋打開后微動(dòng)開關(guān)閉合。即微動(dòng)開關(guān)的閉合或斷開,標(biāo)志著門、倉箱蓋的打開或關(guān)閉。所有的微動(dòng)開關(guān)并聯(lián),共用一個(gè)“造1連接”,它的上端與電源連接,“造1連接”的“輸出點(diǎn)”與一個(gè)I/O(我門選取CPU1的P1.5)口連接,因?yàn)榱鶄€(gè)開關(guān)是并聯(lián)的,只要有一個(gè)門(或蓋)被打開,“取1點(diǎn)”的輸出將是1,讀取P1.5時(shí)即為1,即門、蓋已被打開,(這種情況出現(xiàn)時(shí)把GF0置1)防盜還必須注意的一個(gè)問題是,防止有人用一臺(tái)便攜式電腦反復(fù)輸入密碼,采取用試驗(yàn)的辦法開鎖盜車。預(yù)防的辦法是當(dāng)發(fā)現(xiàn)連續(xù)輸入多次錯(cuò)誤密碼時(shí),由軟件設(shè)置一個(gè)標(biāo)志(如把F0置1)。并且關(guān)閉密碼接收。暫停一段時(shí)間不再接收密碼(如數(shù)分鐘)。上述情況每出現(xiàn)一次,都重復(fù)上述過程,使盜開者不能順利達(dá)到目的,同時(shí)把這一情況通過遙控器告知車主,可以及時(shí)采取措施,這樣做,電腦試開雖然很快,但不斷的延時(shí),并及時(shí)通知車主,卻使盜開者無法很快成功(這一點(diǎn)只用軟件檢查不用I/O口)防盜功能中還有一個(gè)問題是防止盜車者把車推上平板車?yán)呋蛑苯佑猛宪囃献?,防止的辦法是在車子適當(dāng)位置安加一個(gè)水銀開關(guān),使車輛傾斜到一定程度或遇到震動(dòng)時(shí),水銀接點(diǎn)閉合,再用一個(gè)“造1連接”檢查這個(gè)接點(diǎn)(我們?nèi)∮肅PU1的P1.6做這件事),如果接點(diǎn)閉合說明車子有異動(dòng),遇到這種情況時(shí),把標(biāo)志位GF1置1,至此,已經(jīng)設(shè)置了三個(gè)標(biāo)志(F0、GF0、GF1),把這三個(gè)標(biāo)志和一個(gè)字節(jié)(選最后一組的工作寄存器R6做這個(gè)字節(jié),CPU1數(shù)據(jù)寄存器RAM的1FH單元)的三位相對(duì)應(yīng),即F0對(duì)應(yīng)D3;GF0對(duì)應(yīng)D5;GF1對(duì)應(yīng)D7。在主程循環(huán)檢查中,如發(fā)現(xiàn)三個(gè)標(biāo)志有一個(gè)(和一個(gè)以上)為1時(shí),由CPU1把這個(gè)字節(jié)取反并發(fā)送給遙控器。遙控器接收到這個(gè)字節(jié)后把D0置0(為了使蜂鳴器發(fā)出鳴叫)并輸出到CPU0的P1口,接在P1.3、P1.5、P1.7上的發(fā)光二極官點(diǎn)亮,鳴叫聲提醒車主現(xiàn)場(chǎng)發(fā)生了問題,發(fā)光管位置告知車主,發(fā)生的是什么問題遙控器和裝置防盜部分采用半雙工工作方式進(jìn)行通信,接收過程采用于中斷方式,CPU0在發(fā)送設(shè)置警戒狀態(tài)密碼后,及時(shí)進(jìn)入凍結(jié)(IDL=1)狀態(tài),當(dāng)防盜部分有信號(hào)送到時(shí)。遙控器被喚醒,這樣可節(jié)約電池的使用。前邊,已就一些I/O口的使用作了安排,下面我們?cè)侔袰PU1所占用的I/O口列出。并把CPU1在語音告警部分所使用的I/O口一并列出,這部份的使用情況,將在后面語音告警部分詳細(xì)說明,
P1.0控制警報(bào)器的供電電源,輸出1警報(bào)器鳴叫。輸出0,停止鳴叫P1.1控制發(fā)動(dòng)機(jī)啟動(dòng)電機(jī)電源。輸出1時(shí)電源接通可啟動(dòng)發(fā)動(dòng)機(jī)。輸出0無法啟動(dòng)P1.2控制點(diǎn)火線圈電源斷通。輸出1時(shí)點(diǎn)火線圈電源通。可以點(diǎn)火,輸出0不能點(diǎn)火P1.3用于防止在發(fā)動(dòng)機(jī)運(yùn)轉(zhuǎn)時(shí)被突然止動(dòng),起安全防護(hù)作用P1.4所有門廂倉蓋從內(nèi)部上鎖。使其無法從外部隨意打開P1.5監(jiān)視所有門、倉、廂蓋的開關(guān),如被強(qiáng)行打開,則鳴響警笛并作出標(biāo)記P1.6監(jiān)視車輛不能傾斜或震動(dòng),使汽車輛不能被推上平板車或被拖走P1.7檢查是否有超速告警標(biāo)志,有則語音告警P3.0接無線數(shù)傳模塊的發(fā)送端,向遙控器發(fā)送在警戒狀態(tài)下發(fā)生問題的信息字節(jié)P3.1接無線數(shù)傳模塊的接收端。接收遙控器發(fā)送來的設(shè)置/解除警戒狀態(tài)密碼以下是語音告警部分所使用的CPU1的I/O端口,具體如何使用在后面語音告警一段中將給出較為詳細(xì)的說明,請(qǐng)參閱后邊語音告警部分的文字部分P3.2用于管理冷卻系統(tǒng)故障告警P3.3用于管理潤(rùn)滑系統(tǒng)故障告警P3.4用于修改語音告警內(nèi)容時(shí),管理一個(gè)按鈕的狀態(tài)P3.5用于管理燃油即將用完告警車速與發(fā)動(dòng)機(jī)轉(zhuǎn)速測(cè)量、顯示。原理和具體實(shí)現(xiàn)方法這一部分功能包括車速、發(fā)動(dòng)機(jī)轉(zhuǎn)速測(cè)量、顯示,還包括里程累積顯示等。車速和轉(zhuǎn)速測(cè)量采用周期測(cè)量法進(jìn)行車輪的周長(zhǎng)固定不變,車子的驅(qū)動(dòng)軸與車輪的傳動(dòng)比同樣不變,驅(qū)動(dòng)軸每轉(zhuǎn)一周,車子前進(jìn)了多少距離可以計(jì)算出來,同樣不變。距離除以周期就是瞬時(shí)速度。因此,我們首先需要一個(gè)度量周期的時(shí)間單位,同時(shí)我們還需要一個(gè)計(jì)數(shù)器,記錄車輪轉(zhuǎn)動(dòng)一周,用了多少個(gè)時(shí)間單位。根據(jù)以上要求和原理。8253是一只可供選用的芯片,8253有三個(gè)完全相同的計(jì)數(shù)器,使用8253的一個(gè)計(jì)數(shù)器記錄車子驅(qū)動(dòng)軸轉(zhuǎn)動(dòng)一個(gè)周期用了多少個(gè)時(shí)間單位,用第二個(gè)計(jì)數(shù)器記錄發(fā)動(dòng)機(jī)的轉(zhuǎn)動(dòng)周期。第三個(gè)計(jì)數(shù)器累積行使里程。下面我們將首先討論8253芯片,8253必須初始化才可使用,初始化第一步是先按規(guī)定設(shè)定芯片的方式控制字,控制字各位的含義如下下表(表0)表內(nèi)的黑體文字是各所在位的名稱,如SC1,SC0是D7 D6位的名稱,...BCD是D0位的名稱,表下的文字D7~D0是位編號(hào)表0 8253方式控制字位定義
D7 D6 D5 D4 D3D2 D1D0SC1 SC0兩位用來指定計(jì)數(shù)器,它的數(shù)值在00~10之間,分別代表0號(hào)1號(hào)和2號(hào)計(jì)數(shù)器,共有3個(gè)計(jì)數(shù)器(從0算起),這兩位不能為11;RL1 RL0兩位用來定義讀/寫計(jì)數(shù)器的操作類型(共有四種操作類型)所以D5D4數(shù)值在00~11之間,表示讀/寫計(jì)數(shù)器的方式。00是飛讀(飛讀是在計(jì)數(shù)的同時(shí)讀數(shù)。即讀數(shù)時(shí)計(jì)數(shù)不停止),不常用。最常用的方式是01,10,11方式,01是只讀/寫高位,不讀/寫低位字節(jié),10是只讀/寫低位,不讀/寫高位字節(jié);11是先讀/寫低位字節(jié),后讀/寫高位字節(jié);M2 M1 M0用來選擇計(jì)數(shù)器的工作方式,(數(shù)值在000~101之間,共有六種工作方式),BCD用來定義計(jì)數(shù)方式。BCD=1表示采用2-10進(jìn)制計(jì)數(shù),BCD=0表示采用二進(jìn)制計(jì)數(shù);按以上規(guī)定定義好控制字后,寫入8253的控制字寄存器,就完成了計(jì)數(shù)器定義,按附圖2的電路,寫入方式控制字的地址為7FFFH;另有7FFCH.7FFDH.7FFEH分別是讀/寫0號(hào),1號(hào)和2號(hào)計(jì)數(shù)器內(nèi)容的地址;區(qū)分是讀還是寫,是以RD和WR引腳的狀態(tài)來區(qū)分,關(guān)于各位定義的更詳情細(xì)的內(nèi)容,請(qǐng)參閱介紹芯片的有關(guān)資料。接下去討論時(shí)間單位問題。CPU的定時(shí)/計(jì)數(shù)器用作定時(shí)器時(shí),每個(gè)機(jī)器周期定時(shí)寄存器加1,把CPU2的T0設(shè)置為定時(shí)方式2,如果選取CPU2的振蕩頻率是12mHz,它的一個(gè)機(jī)器周期就是1μs,設(shè)重裝常數(shù)是6,這樣,計(jì)時(shí)器要進(jìn)行250次加1,T0溢出一次,產(chǎn)生一次中斷,若每次中斷,中斷服務(wù)程序中送出一個(gè)脈沖,脈沖與脈沖每沖之間的時(shí)間間隔就是0.25毫秒。這就是一個(gè)時(shí)間單位。選取不同的重裝常數(shù),就可以得到不同時(shí)長(zhǎng)的時(shí)間單位,根據(jù)車型的最低車速和最高車速,從便于計(jì)算出發(fā),選取不同的時(shí)間單位,就可以計(jì)算出瞬時(shí)車速。另一方面。也可以通過實(shí)驗(yàn)建立一份計(jì)數(shù)值個(gè)數(shù)和車速的對(duì)照表,不用計(jì)算可由查表得到車速,直接送去顯示,發(fā)動(dòng)機(jī)轉(zhuǎn)速測(cè)量方法與此類似(如果需要可以用CPU2的其他定時(shí)/計(jì)數(shù)器另定專用時(shí)間單位做測(cè)量發(fā)動(dòng)機(jī)轉(zhuǎn)速,AT89C52有三個(gè)定時(shí)/計(jì)數(shù)器,并且CPU2也有多余的I/O口可供使用),附圖2是車速、發(fā)動(dòng)機(jī)轉(zhuǎn)速和里程累積原理圖,以下以車速測(cè)量為例,對(duì)說明書附圖2的解說圖中AT89C52(即CPU2),它連接的是由驅(qū)動(dòng)軸轉(zhuǎn)動(dòng)送出的脈沖V1〖注2〗,車速測(cè)量用8253計(jì)數(shù)器1計(jì)數(shù)時(shí)間單位,D11和D12為一片雙D觸發(fā)器,在這里用做控制器,P1.0是CPU2的T0定時(shí)/計(jì)時(shí)器中斷程序送出的時(shí)間單位脈沖端口,它與8253的CLK1連接(同時(shí)也接通CLK2),因?yàn)閮蓚€(gè)門(GATE1和CATE2)未打開,脈沖不能進(jìn)入。P1.1送來的是周期測(cè)量何時(shí)開始的控制信號(hào),驅(qū)動(dòng)軸周期測(cè)量開始時(shí),由P1.1送出一個(gè)高電位脈沖,脈沖到達(dá)后,隨后來到的V1的上升沿到達(dá)時(shí)(表示驅(qū)動(dòng)軸轉(zhuǎn)動(dòng)開始位置已到)D11翻轉(zhuǎn),D11的輸出端Q送出1,打開GATE1門,CLK1上的時(shí)間單位可以進(jìn)入開始計(jì)數(shù),這個(gè)過程一直持續(xù)到V1的下一個(gè)脈沖到達(dá)(意味著驅(qū)動(dòng)軸已轉(zhuǎn)動(dòng)了一個(gè)完整周期),D11再次翻轉(zhuǎn),它的Q輸出變?yōu)?,GATE1關(guān)閉,停止計(jì)數(shù)。由于D11的輸出變化,使D12翻轉(zhuǎn),D12的Q端變?yōu)?,此時(shí)讀CPU2的P1.3會(huì)得到1。椐此,可判斷出計(jì)數(shù)器已經(jīng)完成了驅(qū)動(dòng)軸旋轉(zhuǎn)一周的時(shí)間單位計(jì)數(shù),可以讀取時(shí)間單位的個(gè)數(shù),讀出的數(shù)乘以時(shí)間單位就是驅(qū)動(dòng)軸轉(zhuǎn)動(dòng)周期。有了周期可以得到瞬時(shí)速度,可以用于計(jì)算(或查表)得到車速。查表法要根據(jù)不同的車型事先計(jì)算出一個(gè)表格,把這個(gè)表格存放在程序存儲(chǔ)器,以便程序查用;發(fā)動(dòng)機(jī)輸出軸轉(zhuǎn)速求法與此類似,V2是發(fā)動(dòng)機(jī)輸出主軸來的測(cè)量脈沖,D21 D22雙D觸發(fā)器作控制計(jì)數(shù)用,CPU2的P1.2作啟動(dòng)輸出使D21D22具備翻轉(zhuǎn)條件。P1.4檢查發(fā)動(dòng)機(jī)主軸是否轉(zhuǎn)夠一周。其余與上述相同。轉(zhuǎn)速用計(jì)算可能更快,需要注意的是由于計(jì)數(shù)器是減法計(jì)數(shù)器,且初值是0,所以取出的數(shù)須求補(bǔ)(取反加1)后再用里程數(shù)累積計(jì)數(shù)原理如下它的脈沖和車速一樣,同樣來自V1(見附圖2)。使用8253的計(jì)數(shù)器0累積里程,先計(jì)算出車輛行駛一個(gè)單位里程驅(qū)動(dòng)軸要轉(zhuǎn)動(dòng)多少周(假設(shè)此常數(shù)為C),將C存入8253計(jì)數(shù)器0中,V1每送來一個(gè)脈沖。計(jì)數(shù)器0的值減1,減至零時(shí),OUT0輸出高電平,利用它(經(jīng)反相)向CPU2的P3.2申請(qǐng)中斷,CPU2中斷后,在中斷服務(wù)中,由CPU2的I/O(P3.1)口控制電動(dòng)累積器跳加一個(gè)字,再重復(fù)下一次累積。P1.5的作用是關(guān)、開8253計(jì)數(shù)0,讀出計(jì)數(shù)值和存入C值。里程表的跳字在中斷程序中控制,中斷一次送出一個(gè)脈沖,跳加一個(gè)字超速報(bào)警,在車速數(shù)值送去顯示之前,對(duì)數(shù)值進(jìn)行檢查,如果數(shù)值大于某一規(guī)定值(例如,車速≥120km/h)先給出標(biāo)志,用CPU2的P3.0,使其引腳輸出1作為超速標(biāo)志(CPU2的串行發(fā)送口未使用),CPU2的P3.0引腳接一個(gè)二極管與CPU1的P1.7輸出接通、二極管正端在CPU2一側(cè),負(fù)端在CPU1一側(cè),這樣可以免去兩個(gè)端口互相影響。當(dāng)讀CPU1的P1.7時(shí)可讀到1,要作出超速報(bào)警。(語音報(bào)警中將對(duì)設(shè)此二極管說明原因)顯示車速和轉(zhuǎn)速使用的芯片是MAX7219,顯示原理見圖3,它采用三線串行傳送顯示數(shù)據(jù)(和數(shù)據(jù)存放地址),每片MAX7219可帶八個(gè)LED管的顯示器,MAX7219的顯示原理比較復(fù)雜,用文字?jǐn)⑹鲭y以完全說明白,因此把關(guān)于地址和數(shù)據(jù)傳輸及特殊功能寄存器設(shè)定的有關(guān)子程附在后面,作為說明書文字部分的補(bǔ)充,更多的資料請(qǐng)參閱有關(guān)這個(gè)芯片的使用手冊(cè),(參見附在說明書附件的程序例清單,程序例中還包括了與本文有關(guān)的的其他幾段程序的例子)。MAX7219的輸入端在1腳DIN,它每次傳送16位二進(jìn)制數(shù),順序是D15~D0,其中D0-D7是寫入RAM的顯示數(shù)據(jù)或特殊功能寄存器的控制字,MAX7219按順序把16位二進(jìn)制數(shù)依次送DIN,與此同時(shí),時(shí)鐘CLK也被依次送入MAX 7219,在CLK的上升沿到達(dá)之前,DIN上數(shù)據(jù)必須有效,在CLK的每個(gè)上升沿,DIN被逐位移入MAX7219內(nèi)部的16位串行寄存器中,最先移入的是D15,最后是D0,為了寫入不同的寄存器,在D0~D15中,D8~D11四位作為RAM和特殊功能寄存器的地址,D0~D7是顯示數(shù)據(jù)或特殊功能寄存器的控制字。當(dāng)16位二進(jìn)制數(shù)位被放入串行寄存器后,在裝載信號(hào)的控制下D0~D7八位被放入以D8~D11為地址的RAM或特殊功能寄存器中。LOAD信號(hào)必須在15個(gè)CLK下降沿前,由高變低,在16個(gè)CLK同時(shí)或之后由低變高(上升沿),在上升沿被寫入各自RAM或特殊功能寄存器(在附錄的程序例清單中可以看懂這些說明)MAX7219芯片的特殊功能寄存器包括譯碼方式寄存器(地址*9H)、亮度寄存器(地址*AH)、掃描界限寄存器(地址*BH),停機(jī)寄存器(地址*CH)和顯示測(cè)試寄存器(地址*FH)共五個(gè)。其中地址*DH和地址*EH未使用,有關(guān)這些特殊功能寄存器的設(shè)置,見附錄的子程序例清單。另有地址00H稱為非工作寄存器,是兩個(gè)MAX7219串聯(lián)(共帶16個(gè)LED)時(shí)使用的,有關(guān)MAX7219的更詳細(xì)資料請(qǐng)參閱這片芯片的手冊(cè)車速和發(fā)動(dòng)機(jī)轉(zhuǎn)速測(cè)量和顯示部分使用的兩個(gè)芯片8253和MAX7219,在其他場(chǎng)合較少使用,關(guān)于他們的詳細(xì)情況,請(qǐng)參閱這兩個(gè)片子的有關(guān)資料。當(dāng)然也可以不使用它們(尤其是顯示部分連同報(bào)警源顯示一并考慮,可使用條形或點(diǎn)陣形顯示),而采用其它片子和顯示。例如采用教新的條圖形顯示器或液晶顯示器(LCD)接口技術(shù)以下將車速、發(fā)動(dòng)機(jī)部分CPU2的I/O口的使用情況,再次做一說明,CPU2的P3.2是外中斷0請(qǐng)求專用,8253計(jì)數(shù)器0回零時(shí)引發(fā)此中斷,由于單片機(jī)的外部中斷,與定時(shí)器控制器TCON的設(shè)定有關(guān),而8253計(jì)數(shù)器0回零時(shí),OUT輸出高電平,故應(yīng)注意由計(jì)數(shù)器0的輸出到達(dá)CPU2的P3.2引腳的相位P1.0用在定時(shí)器T0益處中斷服務(wù)程序中,送出時(shí)間單位脈沖P1.1用于觸發(fā)器D11 D12的啟動(dòng)控制,開始對(duì)驅(qū)動(dòng)主軸周期的測(cè)量P1.2用于車速測(cè)量時(shí),檢查驅(qū)動(dòng)主軸是否轉(zhuǎn)完一周P1.3用于觸發(fā)器D21 D22的啟動(dòng)控制,開始對(duì)發(fā)動(dòng)機(jī)主軸轉(zhuǎn)動(dòng)周期的測(cè)量P1.4用于發(fā)動(dòng)機(jī)轉(zhuǎn)速測(cè)量時(shí),檢查發(fā)動(dòng)機(jī)主軸是否轉(zhuǎn)完一周P1.5用于關(guān)、開8253計(jì)數(shù)器0的計(jì)數(shù)門,停止計(jì)數(shù),便于重新寫入初值P1.6用于發(fā)送車速和發(fā)動(dòng)機(jī)轉(zhuǎn)速測(cè)量時(shí)顯示等的的數(shù)據(jù)P1.7用于發(fā)送車速和發(fā)動(dòng)機(jī)轉(zhuǎn)速顯示等數(shù)據(jù)傳輸時(shí)的時(shí)鐘信號(hào)P3.0用于設(shè)置超告警標(biāo)志P3.1用于里程累積器跳字控制(總行駛和目的地行駛里程)P3.2專用于接收8253計(jì)數(shù)器0回零時(shí)中斷申請(qǐng)P3.3備用P3.4用于發(fā)送車速和發(fā)動(dòng)機(jī)轉(zhuǎn)速顯示等數(shù)據(jù)傳輸時(shí)的LOAD信號(hào)P3.5備用語音告警部分;在上一節(jié)我們?cè)岢觥俺賵?bào)警”的設(shè)想,即當(dāng)汽車超過某一速度行使時(shí)(例如車速≥120km/h),裝置要能發(fā)出超速警告。應(yīng)當(dāng)如何處理這一問題?我們先來看看舊的報(bào)警都有哪些內(nèi)容,如何進(jìn)行報(bào)警。以上海“桑塔鈉”為例,它有冷卻水溫度故障報(bào)警;機(jī)油壓力低于工作壓力報(bào)警等;其他車型還有燃油即將用完的報(bào)警。它的報(bào)警過程大致這樣進(jìn)行發(fā)生上述問題時(shí),首先是傳感器動(dòng)作,有接點(diǎn)閉合,引發(fā)蜂鳴器發(fā)出警告聲,提醒駕車人注意有問題發(fā)生,與此同時(shí)由于接點(diǎn)閉合會(huì)而一個(gè)指示燈閃動(dòng),駕駛者聽到聲音后會(huì)查看哪個(gè)指示燈閃動(dòng),據(jù)此判斷出了什么問題,進(jìn)而決定如何處理語音告警取代老式報(bào)警,實(shí)際上一步到位發(fā)生問題時(shí)發(fā)出語音,告訴駕車人發(fā)上了什么問題,應(yīng)如何處理,例如超速行車,謹(jǐn)慎駕駛;冷卻系統(tǒng)故障,停車檢查;潤(rùn)滑系統(tǒng)故障,停車檢查;燃油即將用完,停車加油。這樣做可以使問題簡(jiǎn)單化。帶來的是要有一塊語音芯片。同時(shí)在發(fā)生問題時(shí)要能準(zhǔn)確發(fā)出告警語音;ISD1420是可供選取一種芯片,它共有20秒的語音記錄時(shí)間,語音芯片內(nèi)部按“段”分隔錄入的音頻,每個(gè)基本段的時(shí)間長(zhǎng)度為20/160秒,即每個(gè)基本段錄音時(shí)間長(zhǎng)度為0.125秒,由于ISD1420并非專門用作記錄漢語語音,因此用其記錄漢語音前,必先對(duì)其進(jìn)行改造采取把A0A1接地等辦法,將原來的四個(gè)段合在一起,使它變成40段,每段(地址)記錄一個(gè)漢字,一個(gè)字的音頻時(shí)長(zhǎng)0.5秒。上邊給出的四條語音告警,共有38個(gè)漢字,有的詞重復(fù)。例如“系統(tǒng)故障”兩次用到;“停車”一詞三個(gè)告警里都有;可以發(fā)現(xiàn)這四條告警可由下面八個(gè)詞構(gòu)成“超速行車,謹(jǐn)慎駕駛”“冷卻”“系統(tǒng)故障”“停車”“檢查”“潤(rùn)滑”“燃油即將用完”“加油”。幾個(gè)字放在相鄰的幾個(gè)段(地址)里,連續(xù)放送就成為一個(gè)詞,減少重復(fù)??梢怨?jié)約音頻占用時(shí)間,有了時(shí)間能把語句中的停頓、“語氣”放送出來為了使ISD1420既能放音也能錄音,發(fā)送語音存放地址時(shí),還要控制芯片的工作狀態(tài),錄音時(shí)也一樣,音頻存放地址相同,但錄放音控制碼卻不相同,兩者的對(duì)照關(guān)系如表1表1 ISD1420語音分段及段控制碼
表中的第1行是CPU經(jīng)鎖存器送出的控制碼,第2行則是語音芯片接收的控制碼,D7對(duì)應(yīng)RC,D6對(duì)應(yīng)PL,RC是芯片的錄音控制引腳,PL是語音芯片的放音控制引腳(RC和PL兩者都是低電平有效)。錄音時(shí)RC腳必須為0,PL腳為1(置錄音狀態(tài));而放音時(shí)RC應(yīng)為1,PL必須為0(置放音狀態(tài))。這是錄放音段控制碼不同的根本原因,還要注意的是,把幾個(gè)字連在一起,一個(gè)字仍然占一個(gè)段,并沒有節(jié)省空間,例如把“冷卻”一詞存放在00段,因?yàn)檫@個(gè)詞由兩個(gè)字組成,所以占用兩個(gè)段,接著要存放“潤(rùn)滑”一詞,就要從02段開始,接下從04段開始存放“系統(tǒng)故障”,它占用四個(gè)段,如果要繼續(xù)再存就其他的詞字,就要從08H段開始,依次類推。但在錄、放音時(shí)“系統(tǒng)故障”這個(gè)四字詞就不用2秒,也許1.5秒就可以了,具體怎樣做,試驗(yàn)是最好的解決辦法由于D6D7與RC PL的對(duì)應(yīng)關(guān)系,字詞的存放地址相同,錄放音段控制碼不同,存放在00段的錄音段控制碼是40H,而放音的段控制碼卻成了80H,上面已說明了原因錄音要用表的上半部分的段控制碼;放音用下半部分。另外,錄音和放音子程序中,錄放音開始和結(jié)束時(shí),都要送0FFH到輸出端口以復(fù)位錄放音接口,以此結(jié)束本段錄放音工作有了以上準(zhǔn)備,就剩下一個(gè)問題這就是發(fā)生了故障,怎樣發(fā)出告警信號(hào),要發(fā)送哪一段告警,必須要由硬件明確給出,才能不發(fā)生錯(cuò)誤。例如決不能冷卻系統(tǒng)發(fā)生故障,而發(fā)送“停車加油”的語音告警。在前邊,我們已安排CPU2的P3.0引腳輸出1作為超速標(biāo)志,并且把這個(gè)端口和CPU1的P1.7之間用一個(gè)二極管接通,因而上述關(guān)于是否發(fā)送和發(fā)送什么告警內(nèi)容的問題,變的十分簡(jiǎn)單因?yàn)樽xP1.7這個(gè)引腳讀到的是1,所以就把“超速行車,謹(jǐn)慎駕駛”這個(gè)詞語音存放首址的放音段控制段碼拿來,調(diào)用放音子程序就可以了。在這里讀P1.7得到1(標(biāo)志)是關(guān)鍵,有“1”就發(fā)告警,沒有不發(fā)。因?yàn)槭荘1.7讀到1,就發(fā)送“超速行車,謹(jǐn)慎駕駛”。一切問題都與在哪個(gè)端口、讀到什么聯(lián)系在一起,這是關(guān)鍵,編程時(shí)抓住這一點(diǎn),就不會(huì)出錯(cuò)仿照這個(gè)例子,我們?nèi)允褂迷?連接的方法,使當(dāng)故障發(fā)生時(shí),故障源能造出1來,就可以用讀造1連接輸出點(diǎn)的辦法,來確定是否發(fā)送語音告警和發(fā)送何種語音,具體的做法以冷卻系統(tǒng)發(fā)生故障為例說明我們安排CPU1的P3.2管理冷卻系統(tǒng)故障告警,在CPU1的.P3.2附近做一個(gè)“造1連接”,它的上端接在冷卻系統(tǒng)故障接點(diǎn)的后邊(即原來接冷卻系統(tǒng)故障指示燈的位置),當(dāng)冷卻系統(tǒng)故障時(shí),故障接點(diǎn)閉合,讀P3.2引腳即會(huì)讀到1,軟件巡查P3.2引腳發(fā)現(xiàn)有這一情況后,會(huì)依次把“冷卻”“系統(tǒng)故障”“停車”“檢查”這些詞的語音段起始位置的放音段控制碼送去放音程序,這時(shí)就會(huì)送出冷卻系統(tǒng)故障,停車檢查的告警語音。我們?cè)俜峙銹3.3管理潤(rùn)滑系統(tǒng)故障報(bào)警,P3.5負(fù)責(zé)管理燃油即將用完的語音告警,兩者的處理方法與冷卻系統(tǒng)故障告警方法相同它們都使用“造1連接”方法,兩個(gè)“造1連接”的上端都與各自的告警源元器件的發(fā)生接點(diǎn)相連,而個(gè)“造1連接”的輸出點(diǎn)與上面指定兩個(gè)I/O引腳接通。如果出現(xiàn)上面某一問題時(shí),軟件在循環(huán)檢查時(shí),會(huì)逐一讀取這些已連接的指定I/O口時(shí),哪個(gè)有問題,哪個(gè)就應(yīng)當(dāng)讀到1的結(jié)果,按讀到的結(jié)果送出相應(yīng)的告警語音就可以了另外,為了能夠在需要時(shí),可以檢查各告警語音能否正常工作,在每個(gè)告警源“造1連接”的旁邊,另做一個(gè)新的“造1連接”,它的上端固定接電源,因而它的輸出點(diǎn)始終為“1”,同時(shí)我們不把CPU1的P1.7、P3.2、P3.3、P3.5各引腳不直接與告警源的輸出點(diǎn)相連接,而是通過一只“單刀雙擲”開關(guān)的“一擲”與其相連,再把“單刀雙擲”開關(guān)的“另一擲”與新的“造1連接”的輸出接通;這樣,當(dāng)把“單刀雙擲”開關(guān)撥向連接“新的造1連接輸出”一端時(shí),因?yàn)檫@個(gè)造1連接上端接電源,它的輸出始終為1(這就是前面超速報(bào)警一段內(nèi)容中提到的在CPU1的P1.7和CPU2的P3.0連接時(shí)加二極管的理由),這相當(dāng)于該點(diǎn)發(fā)生了故障,它會(huì)不停的發(fā)出該點(diǎn)的語音告警內(nèi)容,再撥回告警源輸出點(diǎn)后,只有真正發(fā)生故障時(shí),才會(huì)有故障報(bào)警,這就是說,該報(bào)警點(diǎn)加了一個(gè)新的位置,即“試驗(yàn)位”,“單刀雙擲”開關(guān)的前一位置是“工作位置”,于是我們給語音告警增加了一項(xiàng)新功能語音告警有了檢查位取另一個(gè)新的I/O口,我們選CPU1的P3.4作這“另一個(gè)新的”I/O口,在它的附近新做一個(gè)“造1連接”,其上端經(jīng)過一只按鈕與電源接通,把CPU1的P3.4的引腳與這“另一個(gè)新的”造1連接的輸出點(diǎn)接通,毫無問題,當(dāng)按下按鈕時(shí),讀P3.4會(huì)得到1的結(jié)果。如果哪個(gè)告警點(diǎn)需新錄音,要在解除警戒狀態(tài)后,啟動(dòng)車子前把要修改的語音點(diǎn)“單刀雙擲”開關(guān)撥向檢查位,這時(shí)會(huì)不斷放出原來的告警,這樣可以起到校對(duì)錄音點(diǎn)作用。拿過麥克風(fēng),按下“另一個(gè)新的”按鈕講出新的告警語音,然后松開按鈕裝置會(huì)不斷放送新錄的告警,這一過程可反復(fù)進(jìn)行,直到滿意為止。系統(tǒng)軟件在開車前會(huì)不斷檢查錄音按鈕,一旦被按下,接著檢查哪個(gè)語音點(diǎn)在檢查位,根據(jù)這兩者程序會(huì)調(diào)用重新錄音程序段,完成重新錄制告警語音的工作。新車可能出口,可能被賣到少數(shù)民族地區(qū)。為了擴(kuò)大銷售面,應(yīng)當(dāng)考慮這一類實(shí)際問題。實(shí)際制作時(shí)麥克風(fēng)一般情況下不必裝在線路版上,只是在需要重新錄音時(shí)才插入插口,錄完后拔出另行存放以上已就本說明書開頭所講裝置各項(xiàng)功能的原理和實(shí)現(xiàn)方法逐一進(jìn)行了說明,個(gè)別重點(diǎn)部分給出了原理圖,相信只要是單片機(jī)工作者,都可以根據(jù)以上資料繪出全部圖紙(包括電源部分),由于條件限制,這份材料沒有給出整機(jī)完整的軟件清單。只給出了一些特殊芯片的初始化、寄存器設(shè)定、特殊應(yīng)用等程序(包括8253初始化、周期測(cè)量;MAX7219初始化子程、芯片設(shè)定;ISD1420芯片錄放音子程等程序例子,見本頁后邊所附的程序例清單)。單片機(jī)軟件的編寫,必須在硬件全部搭接完成之后才能進(jìn)行。軟件編寫完成后,要經(jīng)過多次反復(fù)修改和調(diào)試才能應(yīng)用,因此事前寫出的軟件肯定無法使用。
從本說明可以看出,除為控制發(fā)動(dòng)機(jī)實(shí)現(xiàn)止動(dòng)和從告警源的接點(diǎn)引出告警接點(diǎn),接通信號(hào)源之外,沒有觸動(dòng)電路的其它部分,因此總的來講,整車的電路設(shè)計(jì)保持不變,啟動(dòng)電機(jī)和點(diǎn)火電源控制,只是在對(duì)應(yīng)的電源電路中增加一只晶體管而已。所以車子的操作方法將保持不變,不會(huì)影響使用和質(zhì)量,因?yàn)樵黾恿朔辣I鎖后,可以省去經(jīng)常在路邊、大院子里停放的車子上可以看到的一些既笨重又不安全控制方向盤的防盜鎖。整個(gè)裝置是否被汽車用戶喜歡,與裝置顯示版面的布局肯定有關(guān),顯示部分應(yīng)以車速顯示為中心,要以較大字體顯示車速,它的下邊一行,是字號(hào)較小的發(fā)動(dòng)機(jī)轉(zhuǎn)速顯示,總里程和目的地里程顯示以及必要的報(bào)警用信號(hào)燈也應(yīng)在顯示版面上。同時(shí)版面上還應(yīng)有語音告警的檢查試驗(yàn)位開關(guān)的位置,錄音按鈕和麥克風(fēng)插口,也應(yīng)放在版面上。正上方可加裝一只時(shí)鐘顯示(有關(guān)電子時(shí)鐘的資料已經(jīng)很多,而且自成體系與本裝置沒有關(guān)系,故本文未提及)同時(shí)在顯示版面附近,還應(yīng)有音響和語音告警共享的喇叭的位置,原有的總電源開關(guān)和點(diǎn)火鑰匙應(yīng)不改變,只是在警戒狀態(tài)時(shí)它不起作用,解除警戒后一切應(yīng)和現(xiàn)正在使用的功能相同。
本說明書中使用了一些芯片。特將使用這些芯片的程序片段列在下面,作為使用這些芯片時(shí)的參考資料8253初始化及周期測(cè)量的程序例子INITMOV DPTR,7FFFH;計(jì)數(shù)器1方式控制字寫入地址MOV A,#70H(01110000B) ;設(shè)方式控制字MOVX@DPTR,A ;送方式字CLR P1.4 ;不計(jì)數(shù)狀態(tài)…… …… ;以下部分省略下面是周期測(cè)量程序片段的例子,作為周期測(cè)量文字說明部分補(bǔ)充TQI MOV DPTR,#7FFDH ;指向讀/寫計(jì)數(shù)器1地址,CLR A ;A清0,準(zhǔn)備清計(jì)數(shù)器1(寫0)MOVX@DPTR,A ;低8位請(qǐng)零,先寫故為低位MOVX@DPTR,A ;高8位請(qǐng)零,后寫故為高位SETBP1.1 ;送開始計(jì)數(shù)條件LOP JNB P1.3,LOP ;等待計(jì)數(shù)結(jié)束CLR P1.1 ;停止計(jì)數(shù)MOVXA,@DPTR ;讀計(jì)數(shù)器低8位(先讀)CPL A ;求反ADD A,#01H;取補(bǔ)MOV B,A ;存入BMOVXA,@DPTR ;讀計(jì)數(shù)器高8位(后讀)CPL A ;取補(bǔ)
ADDC A,#00 ;加進(jìn)位位…… ……MAX 7219顯示芯片的程序例子MAIN2SCALL INI1;調(diào)顯示初始化子程序SCALL DISI;調(diào)顯示子程SJMP MAIN0 ;返主程序INI1 MOVA,#0BH ;選擇掃描界;以下為初始化子程序MOVR4,#07H;SCALL WRIT;調(diào)傳送子程MOVA,#0AH ;亮度控制MOVR4,0#8H;SCALL WRIT;MOVA,#09H ;譯碼方式MOVR4,#0FFH ;SCALL WRIT;MOVA,#0CH ;選正常狀態(tài)MOVR4,#01H;SCALL WRIT;RET;DISI MOVR0,#40H;顯示數(shù)據(jù)保存地址MOVR1,#1 ;計(jì)數(shù)初值MOVR3,#8 顯示個(gè)數(shù)LOP1 MOVA,WR0 ;MOVR4,A ;MOVA,R1 ;時(shí)序要求ACALL WRIT;講數(shù)據(jù)裝載INCR0 ;INCR1 ;DJNZ R3,LOP1;RET;WRIT ACALL SEND;以下為地址、數(shù)據(jù)傳送子程MOVA,R4 ;ACALL SEND;傳送數(shù)據(jù)CLRP3.4;數(shù)據(jù)裝載信號(hào)變低NOP;時(shí)序要求SETB P3.4;數(shù)據(jù)裝載NOP;時(shí)序要求RET;SENDMOV R6,#08H;向7219傳送地址或數(shù)據(jù)子程LOP2NOP ;時(shí)序要求NOP ;時(shí)序要求CLR P1.7;脈沖變低
RLC A;數(shù)據(jù)一位移進(jìn)位位CMOV P1.6,C ;使數(shù)據(jù)有效NOP;時(shí)序要求NOP;時(shí)序要求SETB P1.7 ;脈沖送數(shù)據(jù)DJNZ R6,LOP2 ;RET;ISD1420芯片錄音子程序的例子RECORDMOV DPTR,#7FFFH ;語音端口地址MOV A,#0FFH ;送復(fù)位碼MOVX @DPTR,A ;復(fù)位碼送端口MOV A,40H ;錄音碼在40H單元,送AACALL TIM20;延時(shí)20毫秒(放音沒有這一條指令)MOVX @DPTR,A ;錄音控制碼送端口ACALL TIMA ;延時(shí),單字延時(shí)0.5秒。詞1.5秒MOV A,#0FFH ;復(fù)位碼MOVX @DPTR,A ;送錄音復(fù)位碼RET;放音子程與此相同,須把錄音碼改為放音碼本說明書共提供了四張附圖,以下是圖面說明圖1是遙控器原理圖,圖1左上方的K0,是遙控器的復(fù)位按鈕,K1、K2遙控器一節(jié)中已說明;D0是裝置已設(shè)置為警戒狀態(tài)的指示燈,D1、D2、D3是前文所述發(fā)生事件的信號(hào)指示燈。CPU0AT89C2051可在2.7-6V下工作(7#電池四節(jié)).
圖2是周期法測(cè)量車速發(fā)動(dòng)機(jī)轉(zhuǎn)速原理圖。圖中右側(cè)標(biāo)注的V1是車速脈沖、V2是發(fā)動(dòng)機(jī)轉(zhuǎn)速脈沖。
圖3是MAX7219顯示原理圖。
圖4是語音芯片ISD1420與CPU1接口圖。
注釋〖注1〗目前市面上已有無線數(shù)據(jù)傳輸摸塊出售其性能如下型號(hào)TDX-2000,名稱無線數(shù)據(jù)傳輸模塊,工作點(diǎn)從230mHz~450mHz,頻率間隔25kHz,接口傳輸速率為1200/2400n bps(波特率),可傳送距離,可在500米到3000米距離范圍選擇,接口提供RS458、TTL和RS232可以選擇,模塊尺寸大小為70*46*12mm,供電電壓是5V,深圳有一家廠商可以供貨,申請(qǐng)人曾與他們聯(lián)系,廠家除供應(yīng)模塊和專用天線外,還可以協(xié)助編寫通信軟件。
〖注2〗在欲測(cè)量轉(zhuǎn)動(dòng)周期的主軸(驅(qū)動(dòng)車輪轉(zhuǎn)動(dòng)的驅(qū)動(dòng)主軸或發(fā)動(dòng)機(jī)輸出軸)上,固定一片非磁性圓盤,使主軸轉(zhuǎn)動(dòng)時(shí)圓盤可隨同轉(zhuǎn)動(dòng),在圓盤的周邊鑲嵌一塊磁塊,磁塊本身呈四方形,方形磁塊的厚度與圓盤的厚度相同,方形磁塊被鑲嵌在圓盤的大圓邊內(nèi);另做一只口字型硅鋼片疊層鐵芯,鐵心的一邊裝有繞上絕緣導(dǎo)線線圈的框架,如同一只變壓器的一部分,口字形鐵芯對(duì)邊開有一個(gè)缺口,開口的大小略大于圓盤厚度,口字型鐵心(連同線圈)固定在不與主軸連接的支架上,使得主軸轉(zhuǎn)動(dòng)時(shí)圓盤的周邊恰能在口字型鐵心的開缺口間隙中轉(zhuǎn)動(dòng),圓盤每轉(zhuǎn)動(dòng)一周,盤上的磁性方塊恰穿過口字型鐵心的開口間隙一次。這樣在轉(zhuǎn)動(dòng)時(shí),主軸轉(zhuǎn)動(dòng)一周,鐵芯上的線圈應(yīng)產(chǎn)生一個(gè)感應(yīng)電脈沖,這個(gè)脈沖被送圖2的LM311整形。這是產(chǎn)生電磁脈沖的方法。光電脈沖與電磁脈沖產(chǎn)生的原理大體相似,同樣如上述,主軸圓盤周邊上開有一個(gè)缺口,圓盤缺口一側(cè)對(duì)應(yīng)位置放一只紅外發(fā)光管,另一側(cè)是紅外接收管,圓盤開口轉(zhuǎn)過時(shí),紅外光會(huì)因無遮擋而被接收管接收,發(fā)出一個(gè)光電脈沖。
權(quán)利要求
1.本裝置功能由防盜、數(shù)字儀表和語音告警部分構(gòu)成,三部分相互獨(dú)立。防盜即給汽車加鎖,使發(fā)動(dòng)機(jī)不能被啟動(dòng);給所有車門、行李廂蓋、發(fā)動(dòng)機(jī)倉蓋加鎖,使其不能被從外部打開;如有人非法送入密碼,企圖使裝置解除警戒時(shí),除及時(shí)報(bào)警外,車主能及時(shí)知道這種情況;數(shù)字儀表是指車速表和發(fā)動(dòng)機(jī)轉(zhuǎn)速表采用數(shù)字顯示和累積;語音告警指當(dāng)車輛超過限定速度行駛或發(fā)生機(jī)械故障時(shí),裝置能向駕駛?cè)藛T發(fā)出語音告警,語音告警能隨時(shí)檢查和修改。
2.根據(jù)權(quán)利要求1的表述,裝置能“給汽車加鎖”,其特征是裝置的防盜部分接收遙控器送來密碼后,使整車處于警戒狀態(tài)斷開發(fā)動(dòng)機(jī)啟動(dòng)電機(jī)電源,斷開發(fā)動(dòng)機(jī)點(diǎn)火電源,使發(fā)動(dòng)機(jī)無法啟動(dòng),使車輛不能依靠自身動(dòng)力被移動(dòng)。
3.根據(jù)權(quán)利要求1的表述,裝置能給“給所有車門、行李廂蓋、發(fā)動(dòng)機(jī)倉蓋加鎖”,其特征是在警戒狀態(tài)下,任一車門、倉廂蓋均被從車內(nèi)閂瑣,使它們都不能從外部被打開。
4.根據(jù)權(quán)利要求1的表述,當(dāng)裝置發(fā)現(xiàn)“有人非法送入密碼,企圖使裝置解除警戒時(shí);車主能及時(shí)知道”,其特征是當(dāng)裝置的防盜部分發(fā)現(xiàn)有人用試驗(yàn)的方法,一次又一次送入密碼試著解除警戒,或用暴力打開任一車門進(jìn)入車內(nèi)或撬開倉廂蓋時(shí),除立即鳴響警笛報(bào)警外,還能把發(fā)生的事件以代碼形式用無線數(shù)傳輸?shù)霓k法發(fā)送給遙控器并轉(zhuǎn)告車主。
5.根據(jù)權(quán)利要4的表述,所謂“能把發(fā)生的事件以代碼形式記入內(nèi)存,并用無線數(shù)傳輸?shù)霓k法發(fā)送給遙控器并轉(zhuǎn)告車主”,其特征是在發(fā)生問題時(shí),裝置發(fā)送一字節(jié)給遙控器,這個(gè)字節(jié)的相關(guān)“位”被置位,遙控器收到并處理這一字節(jié)后,把它輸出到P1口。遙控器P1口上的蜂鳴器開始鳴叫,同時(shí)該口上的相關(guān)二極管點(diǎn)亮,車主根據(jù)被點(diǎn)亮二極管的位置,判斷發(fā)生了什么問題。
6.根據(jù)權(quán)利要求1的表述,在“當(dāng)車輛超過限定速度行駛或發(fā)生機(jī)械故障時(shí),裝置會(huì)向駕駛?cè)藛T發(fā)出語音告警”,其特征是車速送顯示前先檢查是否超過某值,若超過設(shè)一標(biāo)志,有標(biāo)志則告警。
7.根據(jù)權(quán)利要求1所表述的“語音告警能隨時(shí)檢查和修改”,其特征是在行車前的任何時(shí)刻,可以用設(shè)定開關(guān)的辦法對(duì)任何語音告警能否正常工作隨時(shí)進(jìn)行檢查,也可以在需要時(shí)對(duì)其進(jìn)行修改。
8.權(quán)利要求1所表述的“三部分相互獨(dú)立”,其特征是防盜、數(shù)字儀表、語音告警三部分,本質(zhì)上相互獨(dú)立,因此可單獨(dú)使用,例如,防盜部分可以單獨(dú)生產(chǎn),供已在使用的車輛加裝。
全文摘要
這是把轎車的防盜、數(shù)字儀表、語音告警等集于一身的裝置。用微型計(jì)算機(jī)技術(shù)實(shí)現(xiàn)。裝置由主機(jī)和遙控器構(gòu)成,兩者間可以互傳信息,遙控器靠發(fā)送密碼控制主機(jī)進(jìn)入/退出警戒狀態(tài)主機(jī)在警戒狀態(tài)有“止動(dòng)”、“周邊防護(hù)”和發(fā)生事件時(shí)鳴笛報(bào)警功能。裝置把警戒狀態(tài)發(fā)生的事件傳送給遙控器,用此法告知車主車速和發(fā)動(dòng)機(jī)轉(zhuǎn)速以數(shù)字顯示,較為直觀準(zhǔn)確。增加了超速告警有利于正常駕駛,語音告警,駕車人的聽覺參與識(shí)別車況,使視覺能全神貫注路況,有利安全行車。
文檔編號(hào)B60R99/00GK1721237SQ20041008781
公開日2006年1月18日 申請(qǐng)日期2004年10月19日 優(yōu)先權(quán)日2003年12月10日
發(fā)明者張鳳石 申請(qǐng)人:張鳳石