![新型出租車計(jì)價(jià)器控制電路的設(shè)計(jì)_第1頁](http://file4.renrendoc.com/view4/M00/04/3F/wKhkGGYVN92AOXdoAABFNKmTvCs952.jpg)
![新型出租車計(jì)價(jià)器控制電路的設(shè)計(jì)_第2頁](http://file4.renrendoc.com/view4/M00/04/3F/wKhkGGYVN92AOXdoAABFNKmTvCs9522.jpg)
![新型出租車計(jì)價(jià)器控制電路的設(shè)計(jì)_第3頁](http://file4.renrendoc.com/view4/M00/04/3F/wKhkGGYVN92AOXdoAABFNKmTvCs9523.jpg)
![新型出租車計(jì)價(jià)器控制電路的設(shè)計(jì)_第4頁](http://file4.renrendoc.com/view4/M00/04/3F/wKhkGGYVN92AOXdoAABFNKmTvCs9524.jpg)
![新型出租車計(jì)價(jià)器控制電路的設(shè)計(jì)_第5頁](http://file4.renrendoc.com/view4/M00/04/3F/wKhkGGYVN92AOXdoAABFNKmTvCs9525.jpg)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
新型出租車計(jì)價(jià)器控制電路的設(shè)計(jì)摘要隨著物質(zhì)生活條件的改善,越來越多的人開始選擇價(jià)格合理的出租車。尤其是對(duì)于年輕朋友來說,徒步旅行和與朋友見面無疑是他們首選的交通工具。當(dāng)然,乘客感興趣的不是出租車的整體結(jié)構(gòu),而是它的定價(jià)方式、起步距離、起步價(jià)格等。為了提高出租車行業(yè)現(xiàn)代計(jì)算器的效率,開發(fā)了一種基于獨(dú)立控制技術(shù)、傳感器和智能語音播報(bào)的出租車計(jì)價(jià)器。采用計(jì)時(shí)器和測(cè)速傳感器兩種方法同時(shí)對(duì)當(dāng)前出租車行駛來進(jìn)行計(jì)價(jià),根據(jù)存儲(chǔ)在單片機(jī)中的計(jì)價(jià)模板來計(jì)算當(dāng)前車價(jià),其中計(jì)價(jià)規(guī)則包括起步價(jià)、白天計(jì)價(jià)和晚上計(jì)價(jià)等等。并且在液晶屏上實(shí)時(shí)的顯示出來。此外,還加了語音播報(bào)模塊,為乘客提醒使其上車時(shí)注意并系好安全帶,下車時(shí)不要忘記隨身攜帶的物品。本設(shè)計(jì)以STM32單片機(jī)為核心,通過按鍵控制行程的開始與否,結(jié)合霍爾傳感器轉(zhuǎn)速算出當(dāng)前的行駛路程。通過DS1302時(shí)鐘模塊設(shè)置時(shí)間,并在OLED顯示當(dāng)前時(shí)間。按鍵按下后,開始計(jì)時(shí),并結(jié)合總路程算出計(jì)程車總價(jià)格。點(diǎn)擊結(jié)束后播報(bào)提醒語音。并在屏幕上顯示金額。此外,為了讓乘客乘坐出租車更加適宜,還使用DS18B20模塊采集環(huán)境中的室溫,并顯示在OLED屏幕上。模塊還增加了WiFi模塊,在每個(gè)行程開始和結(jié)束時(shí)把數(shù)據(jù)上傳到云平臺(tái),方便用戶對(duì)訂單進(jìn)行查詢。關(guān)鍵詞:STM32單片機(jī);OLED液晶;霍爾傳感器;WiFi模塊目錄TOC\o"1-3"\h\u第1章緒論 第4章軟件設(shè)計(jì)方案4.1開發(fā)環(huán)境以及工具介紹系統(tǒng)設(shè)計(jì)的過程中,當(dāng)做好硬件上的裝配和接線后,剩下的就是軟件方面的程序編寫了。而作為C語言代碼的編程,我習(xí)慣于用到大家都熟知的Keil編程軟件,就目前來說,Keil是現(xiàn)在最受歡迎的用來單片機(jī)開發(fā)編程軟件之一,它的受眾人群非常的廣泛。在Keil中,它具有編譯C語言,也能編譯匯編語言,它還具有連接器,庫管理等功能不同的工具,是一個(gè)非常好用的編程軟件,而運(yùn)行Keil所需要的電腦及其配置也非常的低,只需要16MB以上的內(nèi)存即可運(yùn)行Keil,它支持市面上絕大部分的操作系統(tǒng)。Keil還提供了一個(gè)功能非常強(qiáng)大的仿真調(diào)試工具,讓編程能夠事半功倍。圖4.1Keil界面圖
4.2軟件整體設(shè)計(jì)在主程序模塊中,需要進(jìn)行各接口芯片的復(fù)位、出租車起價(jià)和單價(jià)的復(fù)位、設(shè)計(jì)中斷指令、以及實(shí)現(xiàn)其他的工作。接通電源后,進(jìn)行初始化狀態(tài),隨后,進(jìn)入界面,當(dāng)按下啟動(dòng)/停止按鍵(S6)時(shí),計(jì)價(jià)器開啟計(jì)費(fèi)功能。首先會(huì)讀取里程寄存器中的值,并與起價(jià)公里數(shù)進(jìn)行比較,判斷行駛里程是否超過了起價(jià)公里數(shù)。如果沒有超過,則總費(fèi)用寄存器中顯示起價(jià);否則,將總費(fèi)用寄存器中顯示超出起價(jià)公里數(shù)后的實(shí)際里程乘以單價(jià)的費(fèi)用。當(dāng)出租車到達(dá)指定地點(diǎn)后,霍爾傳感器將不再發(fā)送脈沖信號(hào),費(fèi)用結(jié)算功能也會(huì)停止。這時(shí),顯示屏上將會(huì)顯示本次訂單的金額和乘坐時(shí)間。語音播報(bào)模塊也會(huì)提醒乘客謝謝乘坐,請(qǐng)攜帶好個(gè)人物品。下次使用時(shí),按下清零按鍵,計(jì)價(jià)器會(huì)清零并重新進(jìn)行復(fù)位,等待再次按下啟動(dòng)/停止按鍵觸發(fā)計(jì)價(jià)功能。為了確保系統(tǒng)能夠穩(wěn)定、準(zhǔn)確地執(zhí)行相應(yīng)的操作,需要合理使用中斷、延時(shí)等技術(shù)手段來控制整個(gè)計(jì)價(jià)過程,并進(jìn)行實(shí)時(shí)監(jiān)測(cè)和處理。主程序流程圖如圖4.2所示:圖4.2系統(tǒng)主程序流程圖
4.3溫度模塊軟件設(shè)計(jì)采用DS18B20溫度模塊,將檢測(cè)到的溫度進(jìn)行收錄,過程為輸入初始化溫度,根據(jù)車內(nèi)實(shí)時(shí)溫度寫入系統(tǒng),最后通過STM32單片機(jī)將所測(cè)數(shù)據(jù)發(fā)送至顯示屏并顯示出來。因?yàn)檐噧?nèi)溫度并非恒溫,是實(shí)時(shí)變化的,所監(jiān)控的溫度數(shù)據(jù)會(huì)隨時(shí)間變化而變化,所以所顯示的溫度也會(huì)實(shí)時(shí)變化。圖4.3溫度采集流程圖
4.4顯示屏軟件設(shè)計(jì)在本設(shè)計(jì)中,使用了OLED作為顯示終端。單片機(jī)與OLED之間采用I2C進(jìn)行通訊,本設(shè)計(jì)中使用IO的雙向轉(zhuǎn)換進(jìn)行模擬I2C驅(qū)動(dòng)的實(shí)現(xiàn)。再根據(jù)OLED字庫的,對(duì)顯示的內(nèi)容進(jìn)行處理。圖4.4顯示屏流程圖
4.5時(shí)鐘模塊軟件設(shè)計(jì)在時(shí)鐘芯片當(dāng)中,DS1302是一款經(jīng)常被使用的時(shí)鐘芯片,可讀取或修改其精確的時(shí)間信息。在使用DS1302之前,需要進(jìn)行初始化設(shè)置以確保其正常工作,并調(diào)用相應(yīng)的讀取或修改時(shí)間子程序來實(shí)現(xiàn)對(duì)時(shí)間信息的操作。通過向DS1302發(fā)送相關(guān)指令,可以獲取到當(dāng)前的時(shí)間信息并將其顯示在液晶屏幕上。此外,還可以根據(jù)需要對(duì)DS1302的特定參數(shù)進(jìn)行配置和調(diào)整,以滿足不同的應(yīng)用需求。DS1302時(shí)間讀取/修改程序流程圖如圖4.5所示。 圖4.5時(shí)鐘模塊流程圖為了將時(shí)間精準(zhǔn)的顯示在OLED屏幕中,需要多次讀取時(shí)鐘芯片內(nèi)的數(shù)據(jù)信息,并將其保存在一個(gè)數(shù)組中。通過定時(shí)器中斷函數(shù),可以在每個(gè)固定時(shí)間內(nèi)自動(dòng)調(diào)用讀取時(shí)間的子程序,并將讀取到的時(shí)間信息更新到數(shù)組中。然后,將該數(shù)組中的時(shí)間數(shù)據(jù)顯示在OLED顯示屏幕上,使OLED顯示屏幕上顯示的時(shí)間能夠更接近實(shí)際時(shí)間。通過使用定時(shí)器中斷函數(shù),能夠使時(shí)間信息的更新更加準(zhǔn)確和穩(wěn)定,提高系統(tǒng)的可靠性和精度。具體地,可以通過設(shè)置定時(shí)器的中斷函數(shù),在每隔2毫秒產(chǎn)生一次中斷脈沖,并通過中斷脈沖產(chǎn)生的次數(shù)計(jì)數(shù)時(shí)間。當(dāng)中斷計(jì)數(shù)到500時(shí),即表示已經(jīng)過了1s的時(shí)間,之后便可以調(diào)動(dòng)一次讀取時(shí)間信息子程序,并將讀取到的時(shí)間數(shù)據(jù)信息存儲(chǔ)到內(nèi)存中。通過這樣的方式,單片機(jī)對(duì)DS1302的時(shí)間讀取就變成了10次/秒,從而更加準(zhǔn)確地顯示時(shí)間信息。需要注意的是除了定時(shí)器中斷函數(shù)之外,還有其他的中斷函數(shù)可能會(huì)影響程序的執(zhí)行時(shí)間。通常情況下,在忽略其他中斷函數(shù)執(zhí)行時(shí)間的情況下,單片機(jī)對(duì)DS1302進(jìn)行的時(shí)間讀取次數(shù)可以近似認(rèn)為是10次。這樣可以充分利用DS1302內(nèi)置的晶振和計(jì)數(shù)器,避免出現(xiàn)時(shí)間“過得”有點(diǎn)慢或快的情況,從而提高系統(tǒng)的精度和可靠性。為了重新調(diào)整時(shí)間設(shè)置,需要進(jìn)入特定的時(shí)間設(shè)置界面。在該界面中,用戶可以通過按鍵或其他輸入方式選擇需要修改的時(shí)間值,并將其修改為所需的數(shù)值。通過這種方式,能夠方便地對(duì)時(shí)間信息進(jìn)行精確的調(diào)整和管理,以滿足不同場(chǎng)景下的需求。在修改完畢后,用戶需要按下設(shè)置確認(rèn)按鍵,以便單片機(jī)可以將修改后的時(shí)間數(shù)據(jù)寫入DS1302芯片。只有在設(shè)置確認(rèn)按鍵被按下后,時(shí)間的重設(shè)操作才會(huì)生效。4.6語音模塊軟件設(shè)計(jì)語音模塊是一款定制的8PINMCU模塊。當(dāng)KT148A和單片機(jī)通訊時(shí),通過RESET腳控制語音的起始,當(dāng)按下啟動(dòng)/停止按鍵時(shí)會(huì)輸出一個(gè)高電平后,起始語音從頭開始播報(bào),再次按下啟動(dòng)/停止按鍵時(shí),就會(huì)播放下一段語音。其流程圖如下:圖4.6語音播報(bào)流程圖
4.7WiFi模塊軟件設(shè)計(jì)本系統(tǒng)使用了ESP8266WiFi模塊,用于計(jì)價(jià)器與通訊設(shè)備的連接。由于WiFi模塊是通過串口總線與STM32進(jìn)行通訊的,串口的使用主要分為串口的初始化以及中斷,當(dāng)從機(jī)有數(shù)據(jù)過來時(shí),則觸發(fā)STM32的串口中斷,執(zhí)行對(duì)應(yīng)的操作。 圖4.7WiFi模塊流程圖
4.8按鍵掃描軟件設(shè)計(jì)在進(jìn)行對(duì)本設(shè)計(jì)的功能設(shè)計(jì)時(shí),需要操作設(shè)置的功能按鍵。這也說明,按鍵設(shè)置和按鍵掃描是不可或缺的一部分。本設(shè)計(jì)中一共設(shè)計(jì)了6個(gè)功能按鍵,每個(gè)按鍵都接到STM32單片機(jī)的一個(gè)I/O口上,與另一端連接的地線相連。在按鍵掃描過程中,主要是通過檢測(cè)每個(gè)連接按鍵的I/O口的高低電平來判斷按鍵是否被按下。然而,在按下按鍵的瞬間,由于機(jī)械反彈的影響,電平會(huì)發(fā)生多次抖動(dòng)變化,導(dǎo)致在一段時(shí)間內(nèi)無法穩(wěn)定地檢測(cè)出按鍵是否真正被按下。由于單片機(jī)掃描處理速度非常快,會(huì)誤識(shí)別多次按鍵。因此需要對(duì)按鍵進(jìn)行消抖處理,以保證檢測(cè)結(jié)果的正確性和穩(wěn)定性。這可以通過采用軟件或硬件消抖技術(shù)來實(shí)現(xiàn)。其中,軟件消抖技術(shù)是在程序中加入延時(shí)等處理方式,使電平變化穩(wěn)定后再進(jìn)行狀態(tài)檢測(cè);而硬件消抖技術(shù)則是通過添加濾波電路等方式來削弱抖動(dòng)信號(hào)的幅度,以達(dá)到消除抖動(dòng)效果。按鍵的掃描及消抖處理的流程圖如下圖4.8所示:圖4.8按鍵掃描流程圖
4.9TLINK云平臺(tái)TLINK物聯(lián)網(wǎng)平臺(tái),是免費(fèi)開放的設(shè)備連接平臺(tái),通過傳感器及設(shè)備的云管理、云應(yīng)用、云服務(wù)平臺(tái),支持工業(yè)設(shè)備的在線實(shí)時(shí)監(jiān)控,支持設(shè)備間的數(shù)據(jù)交換。本設(shè)計(jì)借助于云平臺(tái)的監(jiān)控、設(shè)備管理、數(shù)據(jù)存儲(chǔ)等功能,方便用戶查詢自己的訂單數(shù)據(jù),方便數(shù)據(jù)管理,簡化用戶的工作。圖4.9TLINK云平臺(tái)
第5章實(shí)物調(diào)試5.1硬件調(diào)試在完成硬件電路的理論設(shè)計(jì)后,需要根據(jù)原理圖的規(guī)格購買所需元器件。如今互聯(lián)網(wǎng)發(fā)展迅速,網(wǎng)上購物已經(jīng)成為一種潮流,可以輕松的購買到所需元器件材料各個(gè)型號(hào)。在購買過程中,最重要的就是不要買錯(cuò)所需元器件,必須要著重注意所需元器件的型號(hào)、封裝信息以及電氣和結(jié)構(gòu)信息,以防因粗心大意而導(dǎo)致所需元器件的錯(cuò)誤購買。同時(shí),還需要關(guān)注元器件的品牌、質(zhì)量和售后服務(wù)等因素,以確保所購買的元器件能夠滿足自己的需求,并具有良好的可靠性和穩(wěn)定性。在購買元器件時(shí),可以通過多渠道的比價(jià)和評(píng)價(jià)等方式,獲得更多的參考和選擇,提高購買的效率和準(zhǔn)確性。將購買的器件制作成實(shí)際電路時(shí)需要采用手工焊接的方式。為此,需要準(zhǔn)備一些基本的工具:電烙鐵、萬用板、萬用表等,并按照電路圖一步步逐個(gè)將各個(gè)器件進(jìn)行焊接。在焊接的過程中,烙鐵的溫度不宜過燙,焊接時(shí)間也不宜過長,否則會(huì)對(duì)芯片造成的一定的損壞。同時(shí),也需要注意虛焊、漏焊等情況的出現(xiàn),確保焊接時(shí)對(duì)每個(gè)焊點(diǎn)進(jìn)行仔細(xì)檢查,使焊點(diǎn)質(zhì)量有所保證。通過嚴(yán)格控制焊接過程的質(zhì)量和技巧,能夠提高電路的穩(wěn)定性和可靠性,從而確保系統(tǒng)的正常運(yùn)行和使用效果。在進(jìn)行電路板的手工焊接制作的焊接順序時(shí),第一個(gè)焊接的元器件當(dāng)仁不讓應(yīng)該是電源模塊,因?yàn)殡娫词请娐钒宓男呐K,沒有他整個(gè)電路就無法發(fā)揮他的作用,嚴(yán)重的話甚至?xí)⒄麄€(gè)電路板燒毀。所以,為保證整個(gè)電路的正常運(yùn)行,應(yīng)該優(yōu)先焊接電源模塊。接下來再逐一焊接其他模塊的元器件,沒加入一個(gè)模塊,就要對(duì)這時(shí)的電路進(jìn)行調(diào)試,直到所有的模塊都順利的加入電路中,從而完成整個(gè)電路板的焊接制作。此時(shí),需要仔細(xì)檢查每個(gè)器件的焊接質(zhì)量和電路連接狀態(tài),以及保證電路的正確性和穩(wěn)定性。同時(shí),在調(diào)試過程中還需要注意觀察各個(gè)電路部分的反應(yīng)、測(cè)試電路參數(shù)等,以及及時(shí)記錄并排除問題,最終確保電路系統(tǒng)能夠正常運(yùn)行和達(dá)到設(shè)計(jì)要求。
5.2實(shí)物成品展示當(dāng)計(jì)價(jià)器接通電源后,按下啟動(dòng)按鍵,程序開始啟動(dòng),計(jì)價(jià)器開始進(jìn)入初始化狀態(tài)。此時(shí)OLED顯示屏顯示初始化中。如圖5.1所示:圖5.1初始化狀態(tài)計(jì)價(jià)器初始化完畢,程序開始運(yùn)行,此時(shí)計(jì)價(jià)器成功連接WiFi。OLED顯示屏顯示當(dāng)前時(shí)間,溫度等其他信息。如圖5.2所示:圖5.2程序啟動(dòng)當(dāng)有乘客上車后,按下啟動(dòng)/停止按鍵開始本單計(jì)費(fèi),當(dāng)?shù)竭_(dá)目的地后,再次按下啟動(dòng)/停止按鍵結(jié)束本次計(jì)費(fèi)訂單,此時(shí)本單的數(shù)據(jù)上傳到TLINK云平臺(tái)中,如圖5.3、5.4所示:圖5.3OLED訂單信息顯示圖5.4TLINK云平臺(tái)信息記錄圖5.5實(shí)物成果圖第6章結(jié)論與展望6.1總結(jié)該設(shè)計(jì)以STM32單片機(jī)為核心,制作了一款出租車計(jì)價(jià)器,該設(shè)計(jì)能夠?qū)崿F(xiàn)計(jì)價(jià)、計(jì)程的基本功能,除此之外,加入了溫度檢測(cè)模塊實(shí)時(shí)檢測(cè)車內(nèi)溫度,為解決白天夜晚不同的計(jì)價(jià)標(biāo)準(zhǔn),可通過按鍵切換白夜計(jì)價(jià)模式,還有語音播報(bào)功能以提醒顧客的目的,最后通過WiFi模塊將每單的數(shù)據(jù)(里程/金額)上傳到云平臺(tái)中。全文除了進(jìn)行原理圖設(shè)計(jì),程序編寫還通過制作實(shí)物的方式,對(duì)關(guān)鍵功能進(jìn)行了測(cè)試,對(duì)功能進(jìn)行驗(yàn)證,起初,整體框架弄了很久;不知道如何下手,但經(jīng)過了反復(fù)思索,捋清楚的之后的規(guī)劃,再通過查詢大量的資料,學(xué)習(xí)各方面的基礎(chǔ)知識(shí),才對(duì)實(shí)物的各項(xiàng)功能進(jìn)行設(shè)計(jì),到最后計(jì)價(jià)器的各項(xiàng)功能能夠順利實(shí)現(xiàn)。最后在論文撰寫的時(shí)候格式有所錯(cuò)誤,但最后在老師的細(xì)心指導(dǎo)下還是修改好了。由于個(gè)人能力稍有欠缺,最終的設(shè)計(jì)結(jié)果可能會(huì)有一些預(yù)想不到的缺陷。還請(qǐng)各位老師批評(píng)與指正。6.2展望盡管該設(shè)計(jì)可以滿足用戶的基本功能需求,但是整個(gè)設(shè)計(jì)的任需要更多的創(chuàng)新,需要進(jìn)一步優(yōu)化。未來我們可以采取以下技術(shù)來創(chuàng)新它:1.未來新型出租車計(jì)價(jià)器可能包括更精確的定位和路線規(guī)劃;2.智能識(shí)別乘客需求并提供相應(yīng)服務(wù);3.多種支付方式、實(shí)時(shí)交通信息和萬物互聯(lián);4.語音控制等多功能結(jié)合的方式等功能的整合,為用戶帶來更便利的體驗(yàn)。此外,可持續(xù)性方面的考慮也將越來越重要,如優(yōu)化駕駛行為以提高燃油效率、推廣電動(dòng)車輛等。最后,在未來的學(xué)習(xí)中,我們可以更加深入地研究單片機(jī)的設(shè)計(jì)和開發(fā)。這樣,我們就可以將整個(gè)設(shè)計(jì)過程變得更加人性化,使其更加創(chuàng)新、小巧、便捷。通過這種方式,我們可以大大提高操作效率,同時(shí)也可以為用戶帶來更便利的使用體驗(yàn)。
參考文獻(xiàn)王沁竹,李莉.基于單片機(jī)的出租車計(jì)價(jià)器的設(shè)計(jì)[J].計(jì)算機(jī)產(chǎn)品與流通,2018(02):139.李營,呂兆承,陳帥,余錢坤.基于FPGA的出租車計(jì)價(jià)系統(tǒng)設(shè)計(jì)[J].淮南師范學(xué)院學(xué)報(bào),2021,23(02):139-142.閆聰杰.淺談出租汽車計(jì)價(jià)器存在的缺陷暨一種新型的出租車計(jì)價(jià)器設(shè)計(jì)思路[J].內(nèi)蒙古科技與經(jīng)濟(jì),2022(11):120-122.李玉紅,王凱,張娟,武宏璋,劉洋,王惠君.基于物聯(lián)網(wǎng)的出租車計(jì)程計(jì)時(shí)移動(dòng)檢測(cè)系統(tǒng)設(shè)計(jì)[J].工業(yè)計(jì)量,2022,32(01):14-16.DOI:10.13228/j.boyuan.issn1002-1183.2021.0128.朱萬友,張金花.基于STC89C52單片機(jī)的出租車計(jì)價(jià)器設(shè)計(jì)[J].農(nóng)業(yè)裝備與車輛工程,2018,56(05):92-94.庫來酉,莫繼豪,王文濤,張盼盼,周妍.基于STM32的出租車智能計(jì)價(jià)器系統(tǒng)設(shè)計(jì)[J].山西電子技術(shù),2019(04):20-21+50.李香服,胡雪花.單片機(jī)在電子技術(shù)中的應(yīng)用和開發(fā)技術(shù)分析[J].電子世界,2021(21):29-30.DOI:10.19353/ki.dzsj.2021.21.013.王睿,李楊.防作弊出租車計(jì)價(jià)器的設(shè)計(jì)與研究[J].南方農(nóng)機(jī),2021,52(07):185-186.彭泉,翟娟,王世豪,孫艷,張樂.基于單片機(jī)的出租車計(jì)價(jià)器[J].新型工業(yè)化,2020,10(08):26-30.DOI:10.19335/ki.2095-6649.2020.08.011.李昕,王芳.多功能出租車計(jì)價(jià)器的研究與設(shè)計(jì)[J].電子世界,2020(07):187-188.DOI:10.19353/ki.dzsj.2020.07.108.徐燕,馮慧,岳戰(zhàn)威,徐曉坤.基于單片機(jī)的出租車合乘計(jì)價(jià)器設(shè)計(jì)[J].河南科學(xué),2019,37(08):1205-1212.金國華,滕君華.基于單片機(jī)的出租車計(jì)價(jià)器實(shí)驗(yàn)教學(xué)案例設(shè)計(jì)[J].信息技術(shù)與信息化,2019(03):93-95.楊川,趙小海,鄭紹川.使出租車計(jì)價(jià)器智能化工作的系統(tǒng)設(shè)計(jì)[J].汽車實(shí)用技術(shù),2018(21):174-176.DOI:10.16638/ki.1671-7988.2018.21.059.吳波.基于單片機(jī)的出租車計(jì)價(jià)器設(shè)計(jì)[J].信息技術(shù)與信息化,2018(09):33-35.楊正祥.基于單片機(jī)和霍爾傳感器的出租車計(jì)價(jià)器設(shè)計(jì)[J].信息系統(tǒng)工程,2018(07):99-100.喬志敏,楊慧剛.基于單片機(jī)的出租車計(jì)價(jià)系統(tǒng)設(shè)計(jì)[J].太原學(xué)院學(xué)報(bào)(自然科學(xué)版),2017,35(04):54-57.DOI:10.14152/ki.2096-191X.2017.04.014.Yang,Z.,Wang,Y.,&Lu,C.(2019).ResearchonthePrecisionVerificationMethodforTaxiMetersUsingGPS.WirelessPersonalCommunications,107(2),1137-1149.Zhang,Y.,&Luo,Y.(2019).AReal-TimeMonitoringSystemforTaxiMetersBasedontheInternetofThings.IEEEAccess,7,151546-151554.Lee,C.C.,&Wu,K.T.(2017).DevelopmentofaSmartTaxiMeterSystemforMobilePaymentServices.JournalofEnterpriseInformationManagement,30(1),46-67.Zhang,S.,Zhu,Y.,Liu,W.,&Huang,H.(2018).StudyontheEstablishmentofaTaxiMeterVerificationSystemBasedonGPSTechnology.Sensors,18(10),3449.Li,J.,Li,X.,&Zhao,H.(2017).DesignandimplementationofanintelligenttaximetersystembasedonGPSpositioningtechnology.JournalofAmbientIntelligenceandHumanizedComputing,8(3),391-400.附錄原理圖程序#include"sys.h"#include"delay.h"#include"key.h"#include"exti.h"#include"timer.h"#include"string.h"#include<stdio.h>#include"oled_iic.h"#include"rtc.h"#include"ds18b20.h"#include"usart.h" u8temperature; //溫度u16drop=0;u16drop_speed=0; //速度變量u16interval_time,cnt;//間隔時(shí)間u8day=0;//0=白天1=夜間u16money=0;//費(fèi)用u16qb_money=6;//起步價(jià)u8bt_dj=1;//白天單價(jià)u8yj_dj=2;//夜間單價(jià)u8Set_mode=0;//0為正常1為設(shè)置時(shí)間u8set_hour=0,set_min=0,set_sec=0;u8set_time_number=0;//設(shè)置按鍵次數(shù)u8work=0;//工作是否開啟0=關(guān)閉1=開啟u8connected=0;//標(biāo)志位,檢查是否已連接服務(wù)器#defineSsid"WIFI" //WIFI名稱,#definePassWord"123456789"http://WIFI密碼,#defineUid"Y9EP928W56V816JJ" //設(shè)備序列號(hào)#defineLEDPCout(13)#definePlayPBout(8)//語音播報(bào)#defineIO1_HIGH() Play=1;//語音模塊IO口#defineIO1_LOW() Play=0;//語音播報(bào)模塊驅(qū)動(dòng)函數(shù)參考模塊資料說明voidoneline_send_one_data(u8dat){u8i=0;IO1_LOW();/*現(xiàn)將總線拉低*/delay_ms(5);/*延時(shí)6MS這里就是發(fā)起通訊的起始信號(hào)*/for(i=0;i<8;i++){if(dat&0x01){IO1_HIGH();delay_us(300);/*延時(shí)300us*/IO1_LOW();delay_us(100);/*延時(shí)100us*/}else{IO1_HIGH();delay_us(100);/*延時(shí)100us*/IO1_LOW();delay_us(300);/*延時(shí)300us*/}dat=dat>>1;/*發(fā)送的時(shí)候,先發(fā)送最高位,再發(fā)送次高位,以此類推*/}IO1_HIGH();/*空閑時(shí)將該腳拉高即可*/}//L298NIO初始化voidgpio_Init(void){ GPIO_InitTypeDefGPIO_InitStructure; RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC|RCC_APB2Periph_GPIOB,ENABLE); //核心板上的LED GPIO_InitStructure.GPIO_Pin=GPIO_Pin_13; GPIO_InitStructure.GPIO_Mode=GPIO_Mode_Out_PP; GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz; GPIO_Init(GPIOC,&GPIO_InitStructure); GPIO_SetBits(GPIOC,GPIO_Pin_13); GPIO_InitStructure.GPIO_Pin=GPIO_Pin_8; //LED0-->PB.5端口配置GPIO_InitStructure.GPIO_Mode=GPIO_Mode_Out_PP; //推挽輸出GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz; //IO口速度為50MHzGPIO_Init(GPIOB,&GPIO_InitStructure); //根據(jù)設(shè)定參數(shù)初始化GPIOB.5GPIO_SetBits(GPIOB,GPIO_Pin_8); //PB.5輸出高}voidwifi_init(){ printf("AT\r\n");//重新啟動(dòng)wifi模塊 DelayS(1); printf("AT+CWMODE=3\r\n");//設(shè)置模式 DelayS(1); printf("AT+CWJAP=\""Ssid"\",\""PassWord"\"\r\n"); DelayS(3); DelayS(3); DelayS(2); DelayS(3); DelayS(2); printf("AT+CIPMODE=1\r\n");//開啟透傳 DelayS(1); printf("AT+CIPSTART=\"TCP\",\"tcp.tlink.io\",8647\r\n");//連接 DelayS(2); printf("AT+CIPSEND\r\n");//進(jìn)入透傳模式 DelayS(1); //發(fā)送連接序列號(hào)指令 printf(Uid); DelayS(2); connected=1;//表示連接成功,可以發(fā)送數(shù)據(jù)了}//設(shè)置時(shí)間voidKey_settime(){ if(Set_mode==1)//設(shè)置時(shí)間 { OLED_ShowNum(30,4,set_hour,2,1); OLED_ShowCH(46,4,":"); OLED_ShowNum(54,4,set_min,2,1); OLED_ShowCH(70,4,":"); OLED_ShowNum(78,4,set_sec,2,1); if(KEY1_add==0)//加 { if(set_time_number==1)//設(shè)置時(shí) { set_hour++; if(set_hour>=24) set_hour=0; } if(set_time_number==2)//設(shè)置分 { set_min++; if(set_min>=60) set_min=0; } if(set_time_number==3)//設(shè)置分 { set_sec++; if(set_sec>=60) set_sec=0; } delay_ms(200); // while(!KEY1_add); } if(KEY1_del==0)//減 { if(set_time_number==1)//設(shè)置時(shí) { set_hour--; if(set_hour==255) set_hour=23; } if(set_time_number==2)//設(shè)置分 { set_min--; if(set_min==255) set_min=59; } if(set_time_number==3)//設(shè)置分 { set_sec--; if(set_sec==255) set_sec=59; } delay_ms(200); //while(!KEY1_del); } } if(KEY_time==0)//設(shè)置時(shí)間 { delay_ms(5); if(KEY_time==0) { Set_mode=1; if(set_time_number==0) { OLED_Clear(); OLED_ShowCH(32,0,"設(shè)置時(shí)間"); set_hour=calendar.hour; //讀取當(dāng)前時(shí)間 set_min=calendar.min; set_sec=calendar.sec; } if(set_time_number<3) { OLED_clear_h(6); OLED_ShowCH(32+set_time_number*22,6,"↑"); } set_time_number++; if(set_time_number>=4) { Set_mode=0; set_time_number=0; OLED_Clear(); OLED_ShowCH(32,2,"設(shè)置成功"); RTC_Set(2022,2,23,set_hour,set_min,set_sec); delay_ms(1000); OLED_Clear(); } while(!KEY_time); } }}intmain(void){ u16work_time=0; u8t; HZ=GB16_NUM(); NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//設(shè)置中斷優(yōu)先級(jí)分組為組2:2位搶占優(yōu)先級(jí),2位響應(yīng)優(yōu)先級(jí) delay_init(); delay_ms(500); OLED_Init();//初始化 uart1_init(115200); //串口1初始化為115200波特率 OLED_Clear(); delay_ms(100); OLED_ShowCH(32,2,"初始化中"); delay_ms(100); wifi_init(); delay_ms(200); DS18B20_Init(); while(DS18B20_Get_Temp()==850); delay_ms(200); RTC_Init(); //RTC初始化 EXTIX_Init(); //初始化外部中斷輸入 EXTI->IMR&=~(EXTI_Line5); TIM2_Int_Init(9,7199);//10Khz的計(jì)數(shù)頻率,計(jì)數(shù)到1ms delay_ms(500); RTC_Init(); //RTC初始化 gpio_Init(); OLED_Clear(); while(1) { if(Set_mode==0)//運(yùn)行主界面模式 { if(t!=calendar.sec) { t=calendar.sec; OLED_ShowNum(10,0,calendar.hour,2,1); OLED_ShowCH(26,0,":"); OLED_ShowNum(34,0,calendar.min,2,1); OLED_ShowCH(50,0,":"); OLED_ShowNum(58,0,calendar.sec,2,1); temperature=DS18B20_Get_Temp()/10;//檢測(cè)溫度函數(shù) OLED_ShowNum_c(96,0,temperature,2,1); if(temperature<10) OLED_ShowCH(104,0,"℃"); elseif(temperature>=10&&temperature<100) OLED_ShowCH(112,0,"℃"); LED=!LED; printf("Q");//串口發(fā)送數(shù)據(jù)給WIFI模塊 if(work==1) work_time++; } OLED_ShowCH(0,2,"里程:"); OLED_ShowNum(40,2,(int)drop_speed,4,1); OLED_ShowCH(72,2,"m"); if(day==0)//白天單價(jià) { OLED_ShowCH(0,4,"日間單價(jià):"); OLED_ShowNum(72,4,bt_dj,1,1); } else { OLED_ShowCH(0,4,"夜間單價(jià):"); OLED_ShowNum(72,4,yj_dj,1,1); } OLED_ShowCH(80,4,"元"); OLED_ShowCH(0,6,"費(fèi)用:"); if(day==0) { if(work==1) { if(drop_speed<1) { money=qb_money; } else { money=(int)(drop_speed-1)*bt_dj+qb_money;//總價(jià)=單價(jià)*里程此處模擬采用米為單位 } } } else { if(work==1) { if(drop_speed<1) { money=qb_money; } else { money=(int)(drop_speed-1)*yj_dj+qb_money;
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 黑龍江幼兒師范高等??茖W(xué)?!禫ehicleEngineeringApplications》2023-2024學(xué)年第二學(xué)期期末試卷
- 蘭州現(xiàn)代職業(yè)學(xué)院《藥學(xué)綜合實(shí)驗(yàn)》2023-2024學(xué)年第二學(xué)期期末試卷
- 2025年中國電鍍掛具專用塑料粉末市場(chǎng)調(diào)查研究報(bào)告
- 2025至2031年中國紡織紗輥行業(yè)投資前景及策略咨詢研究報(bào)告
- 2025至2031年中國投影機(jī)幕布行業(yè)投資前景及策略咨詢研究報(bào)告
- 2025至2031年中國一次性紙碟行業(yè)投資前景及策略咨詢研究報(bào)告
- 2025至2030年中國超市通軟件數(shù)據(jù)監(jiān)測(cè)研究報(bào)告
- 2025至2030年中國維他命C美白隔離日霜數(shù)據(jù)監(jiān)測(cè)研究報(bào)告
- 2025至2030年中國溜冰鞋鞋鉤數(shù)據(jù)監(jiān)測(cè)研究報(bào)告
- 2025至2030年中國分體式無磁熱能表數(shù)據(jù)監(jiān)測(cè)研究報(bào)告
- 桃李面包盈利能力探析案例11000字
- GB/Z 30966.71-2024風(fēng)能發(fā)電系統(tǒng)風(fēng)力發(fā)電場(chǎng)監(jiān)控系統(tǒng)通信第71部分:配置描述語言
- 污泥處置合作合同模板
- 腦梗死的護(hù)理查房
- 2025高考數(shù)學(xué)專項(xiàng)復(fù)習(xí):概率與統(tǒng)計(jì)的綜合應(yīng)用(十八大題型)含答案
- 2024-2030年中國紫蘇市場(chǎng)深度局勢(shì)分析及未來5發(fā)展趨勢(shì)報(bào)告
- 銷售人員課件教學(xué)課件
- LED大屏技術(shù)方案(適用于簡單的項(xiàng)目)
- Lesson 6 What colour is it(教學(xué)設(shè)計(jì))-2023-2024學(xué)年接力版英語三年級(jí)下冊(cè)
- GB/T 4706.10-2024家用和類似用途電器的安全第10部分:按摩器具的特殊要求
- NB/T 11446-2023煤礦連采連充技術(shù)要求
評(píng)論
0/150
提交評(píng)論