版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p> 基于PIC單片機(jī)的出租車計(jì)費(fèi)系統(tǒng)</p><p><b> 摘要</b></p><p> 隨著經(jīng)濟(jì)的發(fā)展,帶動(dòng)汽車行業(yè)快速發(fā)展,出租車日益普遍,了解在出租車上應(yīng)用的計(jì)費(fèi)系統(tǒng),對(duì)我們?nèi)粘I钜灿袔椭?。而使用單片機(jī)實(shí)現(xiàn)該系統(tǒng),是深化單片機(jī)應(yīng)用的良好途徑。</p><p> 本系統(tǒng)由單片機(jī)PIC16F877A和一些外圍原
2、件組成,具有操作簡(jiǎn)單,顯示明了,功能強(qiáng)大的特點(diǎn)。</p><p> 整個(gè)系統(tǒng)只有兩個(gè)按鍵,一個(gè)“啟動(dòng)/停止”,一個(gè)“復(fù)位”;</p><p> 使用TG12864E 液晶模組作為顯示器,可以顯示數(shù)字、字母、中文、圖片等,使系統(tǒng)信息一目了然;</p><p> 本系統(tǒng)除了里程統(tǒng)計(jì)和費(fèi)用計(jì)算以外,還具有萬(wàn)年歷和語(yǔ)音播報(bào)功能。</p><p>
3、; 萬(wàn)年歷由時(shí)鐘芯片PCF8563實(shí)時(shí)提供時(shí)鐘信號(hào),再由單片機(jī)調(diào)用顯示;</p><p> 語(yǔ)音播報(bào)由語(yǔ)音芯片ISD1420提供語(yǔ)音信息,語(yǔ)音信息放在不同的地址里,由單片機(jī)從這些地址中調(diào)用合適的語(yǔ)音進(jìn)行播放。</p><p> 本方案充分發(fā)揮人性化的特點(diǎn),利用ISD1420的語(yǔ)音功能,配合TG12864液晶模組,模擬實(shí)現(xiàn)帶語(yǔ)音提示的出租車計(jì)價(jià)系統(tǒng)。比較真實(shí)地模擬出租車的空車、載客、到
4、站及對(duì)各狀況的費(fèi)率的計(jì)算、統(tǒng)計(jì)、顯示和語(yǔ)音播報(bào)等功能。</p><p> 本系統(tǒng)涉及到的理論知識(shí)有: PIC單片機(jī)知識(shí)、LCD液晶顯示器的工作原理和使用方法、可擦、寫(xiě)的語(yǔ)音芯片的工作原理及應(yīng)用、實(shí)時(shí)時(shí)鐘芯片的工作原理及應(yīng)用、 出租車計(jì)費(fèi)系統(tǒng)的原理和實(shí)現(xiàn)方法、 PROTEUS仿真原理及實(shí)際應(yīng)用。</p><p> 本系統(tǒng)提高同學(xué)們用C語(yǔ)言編寫(xiě)程序的能力、單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)綜合能力的訓(xùn)練、
5、培養(yǎng)同學(xué)們分析問(wèn)題和解決問(wèn)題的能力、對(duì)同學(xué)們的招聘以及參加工作均有幫助。</p><p> 該系統(tǒng)稍加改進(jìn),可以成為一套真正的實(shí)用的計(jì)費(fèi)系統(tǒng)。 </p><p> 關(guān)鍵詞:時(shí)鐘芯片PCF8563 語(yǔ)音芯片ISD1420 TG12864液晶模組 LCD液晶顯示器</p><p><b> 目錄</b></p><p
6、> 摘要……………………………………………………………………1</p><p> 第一章 系統(tǒng)總體介紹 ………………………………………………2</p><p> 1.系統(tǒng)組成及功能框圖………………………………………………3</p><p> 2.里程計(jì)量及費(fèi)用計(jì)算功能…………………………………………3</p><p> 3.語(yǔ)
7、音播放功能………………………………………………………4</p><p> 4.中文菜單顯示功能…………………………………………………4</p><p> 5.實(shí)時(shí)時(shí)鐘功能………………………………………………………5</p><p> 6.按鍵功能……………………………………………………………5</p><p> 7.系統(tǒng)電路設(shè)計(jì)原理圖
8、………………………………………………6</p><p> 第二章 硬件設(shè)計(jì)………………………………………………………7</p><p> 1.主程序/CPU模塊……………………………………………………7</p><p> 2.語(yǔ)音播放模塊 ………………………………………………………8</p><p> 3.液晶顯示驅(qū)動(dòng)模塊 ……………
9、……………………………………9</p><p> 4.脈沖發(fā)生器模塊 ……………………………………………………11</p><p> 5.時(shí)鐘模塊 ……………………………………………………………12</p><p> 6.按鍵掃描模塊 ………………………………………………………14</p><p> 第三章 系統(tǒng)程序設(shè)計(jì) ………………
10、…………………………………12</p><p> 1.系統(tǒng)主程序流程框圖 ………………………………………………15</p><p> 2.里程和費(fèi)率計(jì)算程序流程圖 ……………………………………………18</p><p> 3.鍵盤(pán)處理程序流程圖 …………………………………………………………19</p><p> 結(jié)束語(yǔ)……………………
11、………………………………………………19</p><p> 致謝………………………………………………………………………21</p><p> 參考文獻(xiàn)…………………………………………………………………21</p><p> 附件………………………………………………………………………21</p><p><b> 第一章系統(tǒng)總
12、體介紹</b></p><p><b> 1.系統(tǒng)組成</b></p><p> 此出租車計(jì)費(fèi)系統(tǒng)以單片機(jī)為系統(tǒng)核心,利用PIC16F877單片機(jī)配合TG12864液晶模組及ISD1420語(yǔ)音模塊等,實(shí)現(xiàn)基本的出租車計(jì)價(jià)器功能。</p><p> 本系統(tǒng)是由PIC單片機(jī)、液晶顯示模塊、計(jì)數(shù)脈沖發(fā)生器、系統(tǒng)實(shí)時(shí)時(shí)鐘及語(yǔ)音等模塊
13、組成。系統(tǒng)框圖如圖(1)所示:</p><p> 2.系統(tǒng)各部分功能:</p><p><b> ?、牛锍逃?jì)量功能</b></p><p> a)單片機(jī)對(duì)傳感器輸出脈沖進(jìn)行計(jì)數(shù),并將脈沖數(shù)換算成公里數(shù);</p><p> b)每一個(gè)脈沖代表輪胎旋轉(zhuǎn)一周,設(shè)輪胎的直徑為520mm,輪胎的周長(zhǎng)為:(即每轉(zhuǎn)一圈的距
14、離)</p><p> 520x3.14159=1634mm=1.634m </p><p> c)每公里的脈沖數(shù):</p><p> PulsePerKM=1000m/1.634m=612(個(gè)脈沖) </p><p> ?、疲M(fèi)用計(jì)算功能(參照廣州市出租車收費(fèi)標(biāo)準(zhǔn))</p><p> 費(fèi)用計(jì)算包括三部分:
15、起步費(fèi)、行使費(fèi)和燃油附加費(fèi):</p><p> a)起步費(fèi)用(StartPrice)—</p><p> 當(dāng)行駛里程(RunMilege)在2.3Km(含2.3Km)以內(nèi)按起步價(jià)(StartPrice)7元計(jì)費(fèi)。即行使費(fèi)用(RunPrice)為: </p><p> RunPrice = StartPrice + 1 = 8(元)</p>
16、<p> 行使費(fèi)用(RunPrice)--</p><p> 行使費(fèi)用分短途與長(zhǎng)途兩種情況:</p><p> ?、?當(dāng)行駛里程(RunMilege)超出2.3Km時(shí)并且小于35Km時(shí),按2.6元/Km收費(fèi),這時(shí)行駛費(fèi)用為:</p><p> RunPrice=StartPrice+2.6×(RunMilege-StartMilege)+1
17、</p><p> 其中:StartPrice為起步價(jià)=7元</p><p> StartMilege為起步里程=2.3Km</p><p> RunMilege為行使里程(總行使里程)</p><p> RunPrice為行使費(fèi)用(總行使金額)</p><p> ?、?當(dāng)行使里程超過(guò)35Km后,要加空駛費(fèi),即
18、每公里升至3.50元, 這時(shí)行駛費(fèi)用為:</p><p> RunPrice=StartPrice+3.5×(RunMilege-StartMilege)+1</p><p> c) 燃油附加費(fèi)--每車次加收一元。</p><p><b> ⑶.語(yǔ)音播放功能</b></p><p> ?、?當(dāng)初次按下“s
19、tart/stop”鍵,出租車開(kāi)始啟動(dòng),系統(tǒng)播放“您好!歡迎乘坐本公司出租汽車,謝謝!”播送完畢,計(jì)費(fèi)器開(kāi)始計(jì)費(fèi)。</p><p> ?、?按下“SpeedUp”鍵,出租車加速行使,最高速為100Km。</p><p> ?、?按下“SpeedDown”鍵,出租車減速行使,最低速為0Km。</p><p> ?、?在行使?fàn)顟B(tài)下,按下“start/stop”鍵,表示出
20、租車到站,結(jié)束行使。這時(shí)候,系統(tǒng)播放“您好!行使里程XXX公里,應(yīng)付XXX元,請(qǐng)檢查您的隨身物品,歡迎再次乘坐,再見(jiàn)!”的提示音。</p><p> ?、?按下“Reset”鍵,進(jìn)入空車狀態(tài)。 </p><p> ?、龋形牟藛物@示功能</p><p> ?、?在空車狀態(tài)下(啟動(dòng)前),LCD屏幕上顯示如下的中文信息:</p><p>
21、?、?在空車狀態(tài)下,按下“start/stop”鍵,系統(tǒng)播放“您好!歡迎乘坐本公司出租汽車,謝謝!”的提示音,同時(shí)在LCD屏幕上顯示如下的中文信息:</p><p> ?、?播完提示音后,進(jìn)入行使?fàn)顟B(tài),LCD屏幕顯示以下信息:</p><p> ?、?在行使?fàn)顟B(tài),按下“SpeedUp”鍵,里程顯示的公里數(shù)增加的速度會(huì)不斷的變快,金額數(shù)值也在作相應(yīng)的變化。按下“SpeedDown”鍵,里程顯
22、示的公里數(shù)增加的速度會(huì)不斷的變慢。</p><p> ?、?在行使?fàn)顟B(tài),按下“start/stop”鍵,表示出租車到站,結(jié)束行程。這時(shí)屏幕顯示以下信息:</p><p> 同時(shí),系統(tǒng)播放“您好!行使里程xxx.xx公里,應(yīng)付xxx.xx元,請(qǐng)檢查您的隨身物品,歡迎再次乘坐,再見(jiàn)!”的提示音。</p><p><b> ?、桑畬?shí)時(shí)時(shí)鐘功能</b&g
23、t;</p><p> 本系統(tǒng)采用兩種方法實(shí)現(xiàn)日歷時(shí)鐘:</p><p> (1)用實(shí)時(shí)時(shí)鐘芯片-FC8563作為時(shí)鐘電路,產(chǎn)生年/月/日/時(shí)/分/秒等信號(hào),供系統(tǒng)調(diào)用。</p><p> (2)用單片機(jī)中斷的方法產(chǎn)生年/月/日/時(shí)/分/秒等信號(hào)。</p><p> (3)兩種方法由同學(xué)自行選擇。</p><p&
24、gt; ?、剩鞠到y(tǒng)設(shè)置4個(gè)按鍵,各個(gè)按鍵的功能如下:</p><p> (1)“start/stop”鍵—開(kāi)始進(jìn)入行使/結(jié)束行使(到站)。</p><p> (2)“SpeedUp”鍵—行使加速按鍵。按下次按鍵,可使出租車的速度由0Km上升到100Km。</p><p> (3)“SpeedDown”鍵--行使減速按鍵。按下次按鍵,可使出租車的速度由100K
25、下降到0Km。</p><p> (4)“Reset”鍵--進(jìn)入空車狀態(tài)。</p><p><b> ?、穗娐吩O(shè)計(jì)原理圖</b></p><p> 第二章 硬件設(shè)計(jì):</p><p> ?、?主程序/CPU模塊</p><p> ?、?主程序/CPU電路圖及說(shuō)明</p><
26、;p> 該模塊主要包括系統(tǒng)初始化、PWM計(jì)數(shù)脈沖的產(chǎn)生、里程的識(shí)別和費(fèi)率的計(jì)算及各功能模塊的的組織和管理等。主程序模塊在系統(tǒng)中起著重要的作用。</p><p> PIC16F877主要性能:</p><p> ·具有高性能RISC CPU。</p><p> ·具有25條單字指令。</p><p>
27、83;除程序分支指令為兩個(gè)周期外,其余均為單周期指令。</p><p> ·運(yùn)行速度:DC-20MHZ時(shí)鐘輸入</p><p> DC-200ns指令周期</p><p> ·8K*14個(gè)FLASH程序存儲(chǔ)器</p><p> 368*8個(gè)數(shù)據(jù)存儲(chǔ)器(RAM)字節(jié)</p><p> 256
28、*8EEPROM數(shù)據(jù)存儲(chǔ)器字節(jié)</p><p> ·引腳輸出和PIC16C73B/74B/76/77兼容</p><p> ·中斷能力(達(dá)到14個(gè)中斷源)</p><p> ·8級(jí)深度的硬件堆棧</p><p> ·直接,間接和相對(duì)尋址方式</p><p> ·
29、;上電復(fù)位(POR)</p><p> ·上電定時(shí)器(PWRT)和振蕩啟動(dòng)定時(shí)器(OST)</p><p> ·監(jiān)視定時(shí)器(WDT),它帶有片內(nèi)可靠運(yùn)行的RC振蕩器</p><p><b> ·可編程的全碼保護(hù)</b></p><p><b> ·低功耗睡眠方式&
30、lt;/b></p><p><b> ·可選擇的振蕩器</b></p><p> ·低功耗、高速CMOS FLASH/EEPROM工藝</p><p><b> ·全靜態(tài)設(shè)計(jì)</b></p><p> ·要線串行編程(ICSP)</p&g
31、t;<p> ·單獨(dú)5V的內(nèi)部電路串行編程(ICSP)能力,處理機(jī)讀/寫(xiě)訪問(wèn)程序存儲(chǔ)器</p><p> ·運(yùn)行電壓范圍2.0V到5.5V</p><p> ·高吸入/拉出電流25mA</p><p> ·商用,工業(yè)用溫度范圍</p><p><b> ·低功
32、耗:</b></p><p> 在5V,4MHz時(shí)典型值小于2mA</p><p> 在3V,32KHz時(shí)典型值小于20uA</p><p> 典型的穩(wěn)態(tài)電流值小于1uA</p><p><b> 外圍特征:</b></p><p> ·Timer0:帶有預(yù)分頻器的
33、8位定時(shí)/計(jì)數(shù)器</p><p> ·Timer1:帶有預(yù)分頻的16位定時(shí)器/計(jì)數(shù)器,在使用外部晶體振蕩時(shí)鐘時(shí),在Sleep期間仍能工作。</p><p> ·Timer2:帶有8位分頻寄存器,預(yù)分頻器和后分頻器的8位定時(shí)器/計(jì)數(shù)器</p><p> ·2個(gè)捕捉器,比較器,PWM模塊</p><p> 其
34、中:捕捉器是16位,最大分辯率為12.5ns</p><p> 比較器是16位,最大分辯率方200ns</p><p> PWM最大分辯率為是10位</p><p> ·10位多通道模/數(shù)轉(zhuǎn)換器</p><p> ·帶有SPI(主模式)和I2C(主/從)模式的SSP</p><p>
35、183;帶有9位地址探測(cè)的通用同步異步接收/發(fā)送器(USART/SCI)</p><p> ·帶有RD,WR和CS控制(只40/44引腳)8位字寬的并行從端口</p><p> ·帶有降壓復(fù)位的降壓檢測(cè)電路</p><p><b> ⑵ 語(yǔ)音播放模塊</b></p><p> ?、?語(yǔ)音播放模塊
36、電路圖及說(shuō)明:</p><p> 語(yǔ)音播放模塊播放提示音,行駛里程、費(fèi)用等。</p><p> ISD1420系列單片錄放時(shí)間8至20秒,音質(zhì)好。芯片采用CMOS技術(shù),內(nèi)含震蕩器、話筒前置放大、自動(dòng)增益控制、防混淆濾波器、平滑濾波器、揚(yáng)聲器驅(qū)動(dòng)及EEPROM陣列。最小的錄放系統(tǒng)僅需麥克風(fēng)、喇叭、兩個(gè)按鈕、電源及少數(shù)電阻電容。在錄放操作結(jié)束后,芯片自動(dòng)進(jìn)入低功耗節(jié)電模式、功耗僅0.5uA
37、。ISD1420系列有唯一的錄音控制和邊緣/電平觸發(fā)兩種放音控制。不分段時(shí)外圍線路最簡(jiǎn),也可按最小段長(zhǎng)為單位任意組合分段,芯片提供若干操作模式,大大提高了控制的靈活性。芯片采用多電平直接模擬量存儲(chǔ)專利技術(shù),每個(gè)采樣直接存儲(chǔ)在片內(nèi)單個(gè)EEPROM單元中,因此能夠非常真實(shí)、自然地再現(xiàn)語(yǔ)音、音樂(lè)、音調(diào)各效果,避免了一般固體錄音電路因量化和壓縮造成的量化噪聲和“金屬聲”。采樣頻率從5.3,6.4到8.0KHz,對(duì)音質(zhì)僅有輕微影響。片內(nèi)信息可保存
38、100年(無(wú)需后備電源),EEPROM單片可反復(fù)錄音十萬(wàn)次。</p><p> ⑶ 液晶顯示驅(qū)動(dòng)模塊</p><p> ?、伲壕э@示驅(qū)動(dòng)模塊電路圖及說(shuō)明:</p><p> TG12864E 是一種圖形點(diǎn)陣液晶顯示器,它主要由行驅(qū)動(dòng)器/列驅(qū)動(dòng)器及128×64 全點(diǎn)陣液晶</p><p> 顯示器組成??赏瓿蓤D形顯示,也可以8
39、×4 個(gè)(16×16 點(diǎn)陣)漢字。</p><p> 主要技術(shù)參數(shù)和性能:</p><p> ·電源:VDD:+2.7~ +5V; 模塊內(nèi)自帶-10V負(fù)壓,用于LCD的驅(qū)動(dòng)電壓。</p><p> · 顯示內(nèi)容:128(列)×64(行)點(diǎn)</p><p><b> ·
40、;全屏幕點(diǎn)陣</b></p><p><b> · 七種指令</b></p><p> · 與CPU接口采用8 位數(shù)據(jù)總線并行輸入輸出和8 條控制線</p><p><b> · 占空比1/64</b></p><p> · 工作溫度:-1
41、0℃~+60℃,儲(chǔ)存溫度:-20℃~+70℃,可選擇寬溫:-20℃~+70℃</p><p><b> ②.外形尺寸圖:</b></p><p> ?、?模塊主要硬件構(gòu)成說(shuō)明:</p><p> ④. 模塊的外部接口:</p><p> ?、?TG12864EL 串口接線方式:</p><p>
42、;<b> ?、让}沖發(fā)生器模塊</b></p><p> ?、?脈沖性生器模塊電路圖及說(shuō)明:(如下圖)</p><p> ?、?NE555定時(shí)器具有定時(shí)精度高、工作速度快、可靠性好、電源電壓范圍寬(3-18V)、輸出電流大(可高達(dá)200mA)等優(yōu)點(diǎn),可組成各種波形的脈沖振蕩電路、定時(shí)延時(shí)電路、是一種電路結(jié)構(gòu)簡(jiǎn)單、使用方便靈活、用途廣泛的多功能中規(guī)模集成電路。只需在外部
43、配接適當(dāng)?shù)淖枞菰?,便可組成施密特觸發(fā)器、單穩(wěn)態(tài)觸發(fā)器和多諧振蕩器等多種應(yīng)用電路,在這個(gè)電路中是多諧振蕩器,它電路簡(jiǎn)單、性能穩(wěn)定,波形標(biāo)準(zhǔn)。</p><p> 該模塊完成傳感器脈沖計(jì)量,然后轉(zhuǎn)換為公里數(shù),并根據(jù)規(guī)則計(jì)算對(duì)應(yīng)的費(fèi)用。同時(shí),監(jiān)測(cè)行駛速度,統(tǒng)計(jì)低速時(shí)間,計(jì)算低速等待費(fèi)用,提供液晶顯示更新函數(shù),以便主函數(shù)可以控制更新用戶界面以及行駛里程、費(fèi)用等信息的顯示。該模塊包括PWM管理程序、里程計(jì)量程序、時(shí)間管理
44、程序、費(fèi)用管理程序、用戶界面控制程序等部分。</p><p><b> ?、蓵r(shí)鐘模塊</b></p><p> ?、?時(shí)鐘模塊電路圖及說(shuō)明:</p><p> ?、赑CF8563 是低功耗的CMOS 實(shí)時(shí)時(shí)鐘/日歷芯片,它提供一個(gè)可編程時(shí)鐘輸出,一個(gè)</p><p> 中斷輸出和掉電檢測(cè)器,所有的地址和數(shù)據(jù)通過(guò)I2C
45、總線接口串行傳遞。最大總線速度為400Kbits/s,每次讀寫(xiě)數(shù)據(jù)后,內(nèi)嵌的字地址寄存器會(huì)自動(dòng)產(chǎn)生增量。</p><p><b> ?、?特性:</b></p><p> * 低工作電流:典型值為0.25μA(VDD=3.0V,Tamb=25℃時(shí))。</p><p><b> * 世紀(jì)標(biāo)志</b></p>
46、<p> * 大工作電壓范圍:1.0~5.5</p><p> * 低休眠電流;典型值為0.25μA(VDD=3.0V,Tamb=25℃)</p><p> * 400KHz 的I2C 總線接口(VDD=1.8~5.5V 時(shí))。</p><p> * 可編程時(shí)鐘輸出頻率為:32.768KHz,1024Hz,32Hz,1Hz。</p>
47、<p><b> * 報(bào)警和定時(shí)器。</b></p><p><b> * 掉電檢測(cè)器。</b></p><p> * 內(nèi)部集成的振蕩器電容。</p><p> * 片內(nèi)電源復(fù)位功能。</p><p> * I2C 總線從地址:讀,0A3H;寫(xiě),0A2H。</p>
48、<p><b> * 開(kāi)漏中斷引腳。</b></p><p><b> ④管腳配置</b></p><p><b> ?、莨δ苊枋?</b></p><p> PCF8563 有16 個(gè)8位寄存器:一個(gè)可自動(dòng)增量的地址寄存器,一個(gè)內(nèi)置32.768KHz 的</p>&l
49、t;p> 振蕩器(帶有一個(gè)內(nèi)部集成的電容),一個(gè)分頻器(用于給實(shí)時(shí)時(shí)鐘RTC 提供源時(shí)鐘),一個(gè)可編程時(shí)鐘輸出,一個(gè)定時(shí)器,一個(gè)報(bào)警器,一個(gè)掉電檢測(cè)器和一個(gè)400KHz I2C</p><p><b> 總線接口。</b></p><p> 所有16 個(gè)寄存器設(shè)計(jì)成可尋址的8 位并行寄存器,但不是所有位都有用。前兩個(gè)寄存器(內(nèi)存地址00H,01H)用于控制
50、寄存器和狀態(tài)寄存器,內(nèi)存地址02H~08H 用于時(shí)鐘計(jì)數(shù)器(秒~年計(jì)數(shù)器),地址09H~0CH 用于報(bào)警寄存器(定義報(bào)警條件),地址0DH 控制CLKOUT 管腳的輸出頻率,地址0EH 和0FH 分別用于定時(shí)器控制寄存器和定時(shí)器寄存器。秒、分鐘、小時(shí)、日、月、年、分鐘報(bào)警、小時(shí)報(bào)警、日?qǐng)?bào)警寄存器,編碼格式為BCD,星期和星期報(bào)警寄存器不以BCD 格式編碼。當(dāng)一個(gè)RTC 寄存器被讀時(shí),所有計(jì)數(shù)器的內(nèi)容被鎖存,因此,在傳送條件下, 可以禁止
51、對(duì)時(shí)鐘/日歷芯片的錯(cuò)讀。</p><p> PCF8563 硬件時(shí)鐘描寫(xiě)模塊:</p><p> 最大總線速度為400Kbits/s,每次讀寫(xiě)數(shù)據(jù)后,內(nèi)嵌的字地址寄存器會(huì)自動(dòng)</p><p><b> 產(chǎn)生增量。</b></p><p> *400KHz 的I2C 總線接口(VDD=1.8~5.5V 時(shí))<
52、/p><p> *可編程時(shí)鐘輸出頻率為:32.768KHz,1024Hz,32Hz,1Hz。</p><p><b> *報(bào)警和定時(shí)器。</b></p><p><b> *開(kāi)漏中斷引腳。</b></p><p> *I2C 總線從地址:讀0A3H;寫(xiě)0A2H。</p><p
53、><b> 地址 寄存器名稱 </b></p><p> 00H 控制/狀態(tài)寄存器</p><p> 01H 控制/狀態(tài)寄存器</p><p> 0DH CLKOUT 頻率寄存器</p><p> 0EH 定時(shí)器控制寄存器 </p><p> 0FH 定時(shí)器倒計(jì)數(shù)數(shù)值寄存器<
54、;/p><p> 地址 寄存器名稱 Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0</p><p> 02h 秒 VL 00~59BCD 碼格式數(shù)</p><p> 03h 分鐘 - 00~59BCD 碼格式數(shù)</p><p> 04h 小時(shí) -
55、 - 00~59BCD 碼格式數(shù)</p><p> 05h 日 - - 01~31BCD 碼格式數(shù)</p><p> 06h 星期 - - - - - 0~6</p><p> 07h 月/世紀(jì) C - - 01~12 BCD 碼格式數(shù)</p>&l
56、t;p> 08h 年 00~99 BCD 碼格式數(shù)</p><p> 09h 分鐘報(bào)警 AE 00~59 BCD 碼格式數(shù)</p><p> 0Ah 小時(shí)報(bào)警 AE - 00~23 BCD 碼格式數(shù)</p><p> 0BH 日?qǐng)?bào)警 AE - 01~31 BCD 碼格式數(shù)</p>&l
57、t;p> 0CH 星期報(bào)警 AE - - - - 0~6 </p><p><b> 操作舉例</b></p><p> *進(jìn)入EXT_CLK 測(cè)試模式;設(shè)置控制/狀態(tài)寄存器1的位7(TEST=1)。</p><p> *設(shè)置控制/狀態(tài)寄存器1的位5(STOP=1)。</p>&
58、lt;p> *清除控制/狀態(tài)寄存器1的位5(STOP=0)。</p><p> *設(shè)置時(shí)間寄存器(秒、分鐘、小時(shí)、日、星期、月/世紀(jì)和年)為期望值。</p><p> *提供32 個(gè)時(shí)鐘脈沖給CLKOUT。</p><p> *讀時(shí)間寄存器觀察第一次變化。</p><p> *提供64 個(gè)時(shí)鐘脈沖給CLKOUT。</p&
59、gt;<p> *讀時(shí)間寄存器觀察第二次變化;需要讀時(shí)間寄存器的附加增量時(shí),重復(fù)步驟7和8。</p><p><b> ?、拾存I掃描模塊:</b></p><p> ?、?按鍵掃描模塊電路圖及說(shuō)明:</p><p> 整個(gè)系統(tǒng)只有兩個(gè)按鍵,一個(gè)“啟動(dòng)/停止”,一個(gè)“復(fù)位”;本模塊功能:掃描按鍵功能,返回掃描結(jié)果。</p&
60、gt;<p> 第三章 系統(tǒng)程序設(shè)計(jì)</p><p> 本系統(tǒng)程序由C語(yǔ)言編寫(xiě),編譯軟件是MPLAB IDE 和一個(gè)外掛的PIC的C語(yǔ)言編譯軟件PICC 。 </p><p> 1.系統(tǒng)主程序流程框圖(含程序):</p><p> /******************************************************
61、****</p><p><b> //主程序開(kāi)始</b></p><p> //**********************************************************</p><p> void main()</p><p><b> {</b></p
62、><p> initial();</p><p><b> init();</b></p><p> lcm_init();</p><p> InitI2C();</p><p> count = 0; </p><p> RunMilege=0;</p&g
63、t;<p><b> flag = 0;</b></p><p> play_fg1 = 0;</p><p> play_fg2 = 0;</p><p> //*********************************************************</p><p>
64、//轉(zhuǎn)換為圖形方式</p><p> //*********************************************************</p><p> write_inst(0x34); </p><p> write_inst(0x36);</p><p> clear_picture_fast();
65、</p><p> display_picture1();//顯示一幅個(gè)性化圖片</p><p> delay(100);</p><p> //*********************************************************</p><p> //轉(zhuǎn)換為文本方式</p><
66、p> //*********************************************************</p><p> write_inst(0x30);</p><p> write_inst(0x0c);</p><p> write_inst(0x01);</p><p> write_ins
67、t(0x06);</p><p> //*********************************************************</p><p> //顯示一幅個(gè)人信息</p><p> //*********************************************************</p>&
68、lt;p> disp_log1();</p><p> delay(200);</p><p> write_inst(0x01);</p><p> //*********************************************************</p><p> //主程序循環(huán)開(kāi)始</p&g
69、t;<p> //*********************************************************</p><p><b> while(1)</b></p><p><b> {</b></p><p> if(mode==0)//模式0: 顯示空車狀態(tài)<
70、;/p><p><b> {</b></p><p><b> INTE = 0;</b></p><p> count = 0;</p><p> kongche();</p><p><b> }</b></p><p>
71、; else if(mode==1)//模式1: </p><p><b> {</b></p><p> if(!flag)//標(biāo)志位為"0"時(shí)</p><p><b> {</b></p><p> INTE = 0;//禁止中斷產(chǎn)生</p>
72、<p> write_inst(0x01); </p><p> yingke(); //顯示歡迎界面</p><p> play(17,50);//播放“您好”</p><p> play(18,5); //播放“歡迎”</p><p> play(25,100);//播放“乘坐本公司出租汽車
73、”</p><p> delay(200);</p><p><b> flag = 1;</b></p><p> write_inst(0x01);</p><p><b> }</b></p><p> else//標(biāo)志位為"1"時(shí)
74、</p><p><b> {</b></p><p> INTE = 1;//允許產(chǎn)生中斷</p><p> price();//里程和費(fèi)率計(jì)算</p><p> zaike();//進(jìn)入載客界面</p><p><b> }</b></p>
75、;<p><b> }</b></p><p> else if(mode==2)//模式2:</p><p><b> {</b></p><p> INTE = 0;//禁止中斷產(chǎn)生</p><p> if(!play_fg1)//標(biāo)志位為"0&qu
76、ot;時(shí)</p><p><b> {</b></p><p> daozhan();//進(jìn)入到站界面</p><p> play(21,60); //播放“車已到站” </p><p> delay(50);</p><p> playsound_km(RunMil
77、);//播放"行使里程"</p><p> delay(50);</p><p> playsound_mn(Pricet);//播放"應(yīng)付金額" </p><p> play_fg1 = 1;//置標(biāo)志位為"1"</p><p> write_inst(0x01
78、);</p><p><b> }</b></p><p> jieshu();//進(jìn)入結(jié)束界面</p><p> if(!play_fg2)//標(biāo)志位為"0"時(shí) </p><p><b> {</b></p><p> play(2
79、4,100);//播放“請(qǐng)檢查您的隨身物品” </p><p> play(18,5); //播放“歡迎” </p><p> play(20,5); //播放“再次” </p><p> play(25,100);//播放“乘坐本公司出租汽車” </p><p> play(19,5); //播放“再見(jiàn)”
80、 </p><p> play_fg2 = 1;//置標(biāo)志位為"1"</p><p><b> }</b></p><p><b> }</b></p><p> scankey();//鍵盤(pán)掃描模塊</p><p><b>
81、}</b></p><p><b> } </b></p><p> 2.里程和費(fèi)率計(jì)算程序流程圖(含程序):</p><p> //*********************************************************</p><p> //費(fèi)率計(jì)算函數(shù)</p
82、><p> //*********************************************************</p><p> void price()</p><p><b> {</b></p><p> if(RunMilege<=2300) </p><p>
83、; //TotalPrice=700+100;</p><p> TotalPrice=800;</p><p> if((RunMilege>2300)&&(RunMilege<=35000))</p><p> //TotalPrice=700+(RunMilege-2300)*0.26+100;</p><
84、;p> TotalPrice=800+(RunMilege-2300)*0.26;</p><p> if(RunMilege>35000) </p><p> //TotalPrice=700+(35000-2300)*0.26+(RunMilege-35000)*0.35+100;</p><p> TotalPrice=1112+(RunM
85、ilege-35000)*0.35;</p><p> Price=(ulong)TotalPrice;</p><p><b> } </b></p><p> 3.鍵盤(pán)處理程序流程圖</p><p><b> 鍵盤(pán)掃描子程序模塊</b></p><p> //*
86、********************************************************</p><p> void scankey()</p><p><b> {</b></p><p><b> if(k2())</b></p><p><b> {&
87、lt;/b></p><p><b> bell();</b></p><p> if(mode==0x00)</p><p><b> {</b></p><p> mode = 0x01;</p><p> write_inst(0x01);</p&
88、gt;<p><b> }</b></p><p> else if(mode==0x01)</p><p><b> {</b></p><p> flag = 0; </p><p> mode = 0x02;</p><p> write_i
89、nst(0x01);</p><p><b> }</b></p><p><b> }</b></p><p><b> if(k4())</b></p><p><b> {</b></p><p><b>
90、 bell();</b></p><p> if(mode==0x02)</p><p><b> {</b></p><p><b> flag = 0;</b></p><p> play_fg1 = 0;</p><p> play_fg2 = 0
91、; </p><p> mode = 0x00;</p><p> write_inst(0x01);</p><p> count = 0;</p><p><b> }</b></p><p><b> } </b></p><p>&
92、lt;b> } </b></p><p> *********************************************************</p><p><b> 結(jié)束語(yǔ)</b></p><p> 通過(guò)這次畢業(yè)設(shè)計(jì),我覺(jué)得自己學(xué)到了很多東西,特別是在即將畢業(yè)走向社會(huì)的時(shí)候,增加了自己以后在社會(huì)上工
93、作的信心。畢業(yè)設(shè)計(jì)是對(duì)我們大學(xué)三年學(xué)習(xí)的總考驗(yàn).這次畢業(yè)設(shè)計(jì),我有以下一些體會(huì):</p><p> 大學(xué)大部分時(shí)間都是在學(xué)習(xí)理論基礎(chǔ)知識(shí),并未真正地去應(yīng)用和實(shí)踐。自從入學(xué)以來(lái),了解了自己本專業(yè)信息之后,我就開(kāi)始了我的電子信息學(xué)習(xí)生涯,其中涉及到的知識(shí),是我以前沒(méi)想過(guò)的,也不懂的,所以這次畢業(yè)設(shè)計(jì),我很辛苦才完成。其中我接觸到了更多平時(shí)沒(méi)有接觸到的元器等,發(fā)現(xiàn)了自己很多不足之。我體會(huì)到了所學(xué)理論知識(shí)的重要性:知識(shí)
94、掌握越多,設(shè)計(jì)得就更加嚴(yán)謹(jǐn),更加順利。</p><p> 了解了進(jìn)行一項(xiàng)相對(duì)比較大型的科研設(shè)計(jì)所必不可少的幾個(gè)階段。畢業(yè)設(shè)計(jì)能夠從理論設(shè)計(jì)和工程實(shí)踐相結(jié)合,個(gè)人作用和集體協(xié)作相結(jié)合等全方面的培養(yǎng)學(xué)生的全面素質(zhì)。我經(jīng)過(guò)這次系統(tǒng)的畢業(yè)設(shè)計(jì),熟悉了對(duì)一項(xiàng)課題進(jìn)行研究,設(shè)計(jì)和試驗(yàn)的詳細(xì)過(guò)程。這些在我們?cè)趯?lái)的工作和學(xué)習(xí)當(dāng)中都會(huì)有很大的幫助。</p><p> 加深了解了查閱資料和利用工具書(shū)的重
95、要性.平時(shí)課堂上所學(xué)習(xí)的知識(shí)大多比較陳舊,作為電子信息工程的學(xué)生,由于專業(yè)涉及知識(shí)廣,不僅在懂單片機(jī)的知識(shí),還要懂模擬電子、數(shù)字電子、Protel 99 SE等等方面的知識(shí)。一個(gè)人不可能什么都學(xué)過(guò),什么都懂,因此,當(dāng)我在設(shè)計(jì)過(guò)程中需要用到一些不曾學(xué)過(guò)的東西時(shí),就要去有針對(duì)性地查找資料,然后加以利用吸收,以提高自己的應(yīng)用能力,而且還能增長(zhǎng)自己見(jiàn)識(shí),補(bǔ)充我的專業(yè)知識(shí)。</p><p> 畢業(yè)設(shè)計(jì)對(duì)以前所學(xué)的過(guò)的理論
96、知識(shí)起到了回顧作用,并對(duì)其加以進(jìn)一步的消化和鞏固。實(shí)踐能力得到了進(jìn)一步提高,在制作過(guò)程中積累了一些經(jīng)驗(yàn)。畢業(yè)設(shè)計(jì)培養(yǎng)了我們嚴(yán)肅認(rèn)真和實(shí)事求是的學(xué)習(xí)態(tài)度,而且培養(yǎng)了吃苦耐勞的精神以及相對(duì)應(yīng)的工程意識(shí)。同學(xué)之間的友誼互助也充分的在畢業(yè)設(shè)計(jì)當(dāng)中充分體現(xiàn)了出來(lái)。</p><p> 總之,在踏上大學(xué)旅途的最后一步中間雖然存在著許多困難,但我們都走過(guò)了,這過(guò)程中我學(xué)到了不少的新知識(shí),對(duì)我個(gè)人將來(lái)的發(fā)展非常有幫助。所謂讀萬(wàn)卷
97、書(shū)不如走萬(wàn)里路,實(shí)踐是檢驗(yàn)真理的唯一標(biāo)準(zhǔn),將來(lái)的路還很長(zhǎng),還需要我在實(shí)踐中不斷的摸索,跌倒了再爬起來(lái),在困難和逆境中不斷成長(zhǎng)。</p><p><b> 致謝</b></p><p> 首先,在這里,我要感謝我的指導(dǎo)師姚才老師,他真的是一位很慈祥,很棒的老師,對(duì)學(xué)生也很好,他給了我很多的幫助,沒(méi)有他的指導(dǎo),我的畢業(yè)設(shè)計(jì)不會(huì)這么順利完成。</p>&l
98、t;p> 其次要感謝3號(hào)樓智能實(shí)驗(yàn)室的陳老師給我們提供了仿真器,讓我們可以隨時(shí)用。</p><p> 我還要感謝畢業(yè)設(shè)計(jì)一起做設(shè)計(jì)同學(xué)。沒(méi)有姚才老師和同學(xué)的協(xié)助,我這次設(shè)計(jì)也不會(huì)這樣順利。謝謝!</p><p><b> 參考文獻(xiàn)</b></p><p> (1)《PIC單片機(jī)基礎(chǔ)教程》</p><p>
99、 --丁躍軍等編著 北航大學(xué)出版社</p><p> ?。?)《PIC單片機(jī)原理》</p><p> --李學(xué)海編著 北航大學(xué)出版社</p><p> ?。?)《基于PROTEUS的電路及單片機(jī)系統(tǒng)設(shè)計(jì)與仿真》</p><p> --周潤(rùn)景、張麗娜編著 北航大學(xué)出版社</p><p> (4)凌陽(yáng)大學(xué)計(jì)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 畢業(yè)設(shè)計(jì)----基于pic單片機(jī)的出租車計(jì)費(fèi)系統(tǒng)
- 畢業(yè)設(shè)計(jì)----基于pic單片機(jī)的出租車計(jì)費(fèi)系統(tǒng)
- 基于pic單片機(jī)的出租車計(jì)費(fèi)系統(tǒng)----畢業(yè)設(shè)計(jì)論文
- 基于單片機(jī)的出租車計(jì)費(fèi)器的畢業(yè)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)---基于單片機(jī)的出租車計(jì)費(fèi)器的設(shè)計(jì)
- 基于單片機(jī)的出租車自動(dòng)計(jì)費(fèi)設(shè)計(jì)
- 基于單片機(jī)的出租車計(jì)費(fèi)器的畢業(yè)設(shè)計(jì)
- 基于單片機(jī)的出租車計(jì)費(fèi)器的畢業(yè)設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)---出租車計(jì)費(fèi)系統(tǒng)
- 單片機(jī)課程設(shè)計(jì)---出租車計(jì)費(fèi)系統(tǒng)
- 單片機(jī)課程設(shè)計(jì)--出租車計(jì)費(fèi)系統(tǒng)
- 畢業(yè)設(shè)計(jì)(論文)+基于單片機(jī)的出租車計(jì)費(fèi)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 單片機(jī)課程設(shè)計(jì)--出租車計(jì)費(fèi)系統(tǒng)
- 單片機(jī)課程設(shè)計(jì)-- 出租車計(jì)費(fèi)系統(tǒng)
- 基于單片機(jī)出租車計(jì)費(fèi)系統(tǒng)畢業(yè)論文
- 基于單片機(jī)的出租車計(jì)費(fèi)器的畢業(yè)設(shè)計(jì) (2)
- 基于單片機(jī)出租車計(jì)費(fèi)器的設(shè)計(jì)
- 基于單片機(jī)的出租車計(jì)費(fèi)器的畢業(yè)設(shè)計(jì) (3)
- 單片機(jī)課程設(shè)計(jì)---出租車計(jì)費(fèi)系統(tǒng) (2)
- 單片機(jī)課程設(shè)計(jì)報(bào)告-- 出租車計(jì)費(fèi)系統(tǒng)
評(píng)論
0/150
提交評(píng)論