freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于stc89c52單片機(jī)出租車計價器設(shè)計畢業(yè)設(shè)計論文-文庫吧資料

2025-07-03 18:40本頁面
  

【正文】 Ack()。 Ack()。 start()。 delay(20)。 Ack()。 Ack()。 Ack()。}void WrToROM(uchar Addresss,uchar Data){ start()。 Scl=0。}BitCounter。 //否則temp的最低位清0if(BitCounter1){temp1=temp1。 //temp的最低位置1elsetemp=tempamp。if(Sda) //如果Sda=1。Scl=1。 // 置 Sda為輸入方式do{Scl=0。uchar BitCounter=8。} uchar Read() //讀一個字節(jié)的數(shù)據(jù),并返回該字節(jié)值{uchar temp=0。 } while(BitCounter)。 Data=temp。 Scl=1。0x80)==0x80) Sda=1。 delayNOP( )。 do { temp=Data。}void Send(uchar Data){ uchar BitCounter=8。 Scl=0。 Scl=1。 }void NoAck(){ Sda=1。 Scl=0。 Scl=1。 }void Ack(){ Sda=0。 Sda=1。 Scl=1。 }void stop(){ Sda=0。 Scl=0。 Sda=0。 Sda=1。}void start(){ Scl=1。 Scl=1。_nop_()。_nop_()。_nop_()。_nop_()。_nop_()。j)。i) for(j=110。 for(i=x。 //中斷調(diào)用 uint cc,dd,qufan。uchar danjia1,danjia2,danjia3,qibu,danjia。uint key3num,qiehuantemp。 //硬件寫保護(hù) uint zongjine,dengdai。 // I2C引腳sbit Scl=P3^6。 sbit wela=P1^6 。 //sbit wela=P3^1 。 // 切換sbit led=P1^7。 // sbit key3=P1^3。 // 清零sbit key1=P1^1。 //sbit fangbo=P3^5。//uchar code table2[]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80}。有其他老師和同學(xué),都幫了我不少忙,在此不再贅述。 謝 辭在此次設(shè)計中,陳文清老師作為我的指導(dǎo)老師,至始至終都給予我了不少幫助,從下任務(wù)書開始,就幫我制定規(guī)劃,提醒我應(yīng)注意的問題;借給我資料,幫我聯(lián)系硬件;和我一起調(diào)程序,并提出了很多的修改意見以及完善方案;此外還認(rèn)真批閱了我的論文,指出其中很多瑕疵和不清晰的地方;更重要的是在我遇到困難時對我的鼓勵,讓我不懈怠、不退縮、也讓我更有信心;可以說我的每一點進(jìn)展都與陳老師的付出是分不開的。1. 應(yīng)嘗試著在不影響整個計價器的功能的前提下把兩個鎖存器74HC573去掉,這樣會使硬件電路更簡潔,成本也會更低。實現(xiàn)了單價可調(diào),掉電保持,此外還增加了等待計時功能,白天夜晚單價自動切換,并且能實時顯示總金額,等待時間,運行里程,運行單價等詳細(xì)信息;且能很方便的在不改變硬件電路的情況下通過改變軟件實現(xiàn)計價精度的提高,進(jìn)行功能上的擴(kuò)展,如可把現(xiàn)有的計價器轉(zhuǎn)變?yōu)橛嬎倨?,完善的功能使得基于STC89C52單片機(jī)的出租車計價器的通用性和實用性有著無可比擬的優(yōu)勢,具有很高的現(xiàn)實意義和很好的市場前景。4. 有完整的軟件仿真結(jié)果和硬件電路,并用Protel設(shè)計出了系統(tǒng)原理圖,制作了PCB板。圖41里程無溢出時仿真結(jié)果(小于三公里)圖42里程無溢出時仿真結(jié)果(大于三公里)圖43里程溢出時仿真結(jié)果(大于十公里)圖44 單價調(diào)整(起步價)69結(jié) 論經(jīng)過近幾個月的設(shè)計,在多位老師和同學(xué)的幫助下,全面實現(xiàn)了預(yù)先設(shè)定的計價器應(yīng)具有的功能,且滿足了所有設(shè)計指標(biāo)。本次設(shè)計聯(lián)調(diào)時出現(xiàn)的問題主要有:第一是顯示時存在時序上的沖突,;第二就是中斷設(shè)置時出現(xiàn)混亂,即同時用定時器0,定時器1,和外部中斷1時,后兩者都不再工作(通過編一個方波程序,),解決方法時讓定時器1工作在計數(shù)方式代替工作在定時方式,如此不但可以完成相應(yīng)功能,解決了問題,更重要的是省去一個中斷,簡化了程序設(shè)計。2. 設(shè)計PCB板時把鍵盤和顯示器放在芯片和其它電路的反面,這樣封裝成實際產(chǎn)品時可把人機(jī)接口留在外面,更人性化,也符合人們的習(xí)慣。改動如下:1. 當(dāng)里程值大于30(實際對應(yīng)大于3公里)且無進(jìn)位時,溢出指示燈不亮,總金額=起步價+(里程十位數(shù)字2)*運行單價+等待單價*等待時間;2. 當(dāng)里程值小于30(實際對應(yīng)小于3公里),肯定無進(jìn)位,溢出指示燈不亮,總金額=起步價+等待單價*等待時間;3. 有進(jìn)位,溢出指示燈點亮,表示里程一定大于三公里,只需執(zhí)行總金額=起步價+7*運行單價+(里程十位數(shù)字+1)*運行單價+等待單價*等待時間即:總金額=起步價+(里程十位數(shù)字+8)*運行單價+等待單價*等待時間; 結(jié)果分析與性能改進(jìn)經(jīng)過反復(fù)調(diào)試驗證,基于STC89C52單片機(jī)控制設(shè)計的出租車計價器滿足了所有預(yù)設(shè)性能指標(biāo),具有較好的抗干擾性,價格也較為合理,具有很好的工業(yè)開發(fā)和市場前景。0x7f(共陽極時加入amp。 while(!key)。 if(key==0) { while(!key)。 按鍵查詢功能的實現(xiàn)按鍵查詢比較容易實現(xiàn),只要注意1. 按鍵結(jié)束后注意退出按鍵處理;,即避免顯示一個數(shù)據(jù)后退不出來;。調(diào)試的方法是在指定地址寫一個數(shù)字再看能是否讀出,當(dāng)顯示程序編寫好后,可以在Ptoteus中用數(shù)碼管顯示看是否與分析一致,也可以把讀出的數(shù)據(jù)賦給某個變量,再通過在keil中執(zhí)行view/watchamp。 AT24C02的編程與調(diào)試對AT24C02編程對我來說是一個比較新知識點,遇到了不少問題, 這里僅把經(jīng)驗教訓(xùn)簡要介紹一下。第一就是把段碼和位碼順序送反,結(jié)果是只有在延時時間較長時才能顯示正常,當(dāng)然這樣的代價是沒有靜態(tài)的效果;第二就是用動態(tài)掃描時給八個數(shù)碼管送了10個數(shù),顯然這樣做結(jié)果必定混亂;最后就是開始時用switch、case語句實現(xiàn)動態(tài)掃描,當(dāng)程序較小時可以正常工作,但當(dāng)后期程序較大時,出現(xiàn)了時序混亂的問題。 圖35 鍵盤程序 按鍵檢測流程圖36所示。 鍵盤程序鍵盤采用查詢的方式,放在主程序中,當(dāng)有按鍵按下的時候,在相應(yīng)I/O口產(chǎn)生一次低電平,當(dāng)單片機(jī)查詢出該低電平后便轉(zhuǎn)入進(jìn)行處理,處理結(jié)束返回。如此循環(huán)操作,使每位分時顯示該位應(yīng)該顯示的字符 [7] 。要想每位顯示不同的字符,就必須采用動態(tài)掃描的方法輪流點亮各位LED,即在每一時刻只使某一位顯示字符。程序流程圖如圖34所示。圖33 中途等待中斷子程序流程圖 計算程序計算程序根據(jù)里程數(shù)分別進(jìn)入不同的計算公式。用定時器作為基準(zhǔn),可使測試的等待時間更為精確(可以精確到uS級);且每隔5秒比較一次,能有效減小誤判率,避免把汽車低速行駛誤認(rèn)為靜止等待處理。 TL=X%256。計數(shù)初值可有以下公式獲得:X=(65536t)**10^6/12。里程中斷子程序如圖32所示。程序流程如圖31所示。當(dāng)出租車運行后,就啟動計價器,根據(jù)里程寄存器中的內(nèi)容計算和判斷行駛里程是否已超過起步價公里數(shù)。另外,在主程序模塊中還需要設(shè)置啟動/清除標(biāo)志寄存器、里程寄存器和價格寄存器,并對它們進(jìn)行初始化。數(shù)碼管動態(tài)顯示電路如圖27所示。使通道打開,接著送字碼,使字碼保持??;(送高電平),緊接著送位碼,控制要顯示的位,數(shù)據(jù)被保持。當(dāng)為低電平時,若LE為H,則D與Q同時為H或者L,數(shù)據(jù)實現(xiàn)直通傳送;而當(dāng)LE為L時,無論D為何狀態(tài)Q都保持上一次的數(shù)據(jù)狀態(tài),數(shù)據(jù)被鎖存住,利用此特性即可實現(xiàn)對數(shù)碼管的控制。由真值表可以看出,當(dāng)為高電平時,無論LE與D端為何電平狀態(tài),其輸出均為高阻態(tài),此時芯片處于不可控狀態(tài)。表21 74HC573真值表INPUTOUTPUT LE DQL H LL L XH X XHQ0Z其中 :H—高電平。圖26 74HC573的引腳分布:為三態(tài)允許輸入端(低電平有效),也可稱作輸出允許端;1D8D為數(shù)據(jù)輸入端;1Q8Q為數(shù)據(jù)輸出端;LE為鎖存允許端。 由于數(shù)碼管內(nèi)部二極管點亮?xí)r需要5mA以上的電流,而單片機(jī)的輸出電流還不到1mA,所以數(shù)碼管與單片機(jī)連接時需加驅(qū)動電路,可以使用上拉電阻的方法,也可以使用專門的驅(qū)動芯片,考慮到復(fù)用單片機(jī)I/O接口,節(jié)省單片機(jī)I/O資源,此次設(shè)計采用74HC573鎖存器,其輸出電流較大,電路接口簡單且可直接驅(qū)動數(shù)碼管顯示。由于溢出指示是采用發(fā)光二極管是否點亮表示,故必須選好參數(shù)以確保發(fā)光二極管正常工作。 顯示單元顯示單元由兩個4位8段共陽數(shù)碼管組成,電路連接時,公共端接高電平,因此我們需要點亮哪個發(fā)光二極管只需給哪個二極管陰極送低電平,并采用動態(tài)掃描進(jìn)行顯示[6]。所以在實際編程時一定要注意鍵盤的去抖動。S4: 實現(xiàn)白天單價和夜晚單價的切換。電路原理如圖25所示。 鍵盤調(diào)整單元當(dāng)單價等信息需要進(jìn)行修改時,就要用到鍵盤。(2)主控器的讀數(shù)據(jù)格式:與寫數(shù)據(jù)的不同之處在于數(shù)據(jù)發(fā)送結(jié)束和停止位之間加一個非應(yīng)答位,表示數(shù)據(jù)發(fā)送結(jié)束,格式為當(dāng)SCL為高時SDA傳送1。該字節(jié)的頭七位為從機(jī)地址,對于AT24C02來說高四位為1010,它是I2C總線器件的固有地址,緊接著是AAA3通過接地或者高電平?jīng)Q定外圍器件的地址數(shù)據(jù),第八位是讀寫控制為,當(dāng)為0是表示主節(jié)點向從節(jié)點發(fā)送數(shù)據(jù),當(dāng)為1時表示要接收數(shù)據(jù)。事實上AT24C02為典型的支持I2C總線的器件,對其進(jìn)行編程時需遵守I2C總線的時序要求,以及I2C委員會對各種I2C芯片的地址分配規(guī)則。由于AT24C02的數(shù)據(jù)線和地址線是復(fù)用的,采用串口的方式傳送數(shù)據(jù),只用兩根線SCL(時鐘脈沖)和SDA(數(shù)據(jù)/地址),進(jìn)行傳送數(shù)據(jù)時遵守I2C總線協(xié)議。AT24C02芯片引腳配置如圖24所示。 掉電存儲單元AT24C02的作用是在電源斷開的時候,存儲當(dāng)前設(shè)定的總金額,等待時間,運行里程以及單價等信息。其原理如圖23所示。圖22這樣兩次電壓變換,使霍爾開關(guān)完成了一次開關(guān)動作。在輸入端輸入電壓Vcc,經(jīng)穩(wěn)壓器穩(wěn)壓后加在霍爾電勢發(fā)生器的兩端,根據(jù)霍爾效應(yīng)原理,當(dāng)霍爾片處在磁場中時,在垂直于磁場的方向通以電流,則與這二者相垂直的方向上將會產(chǎn)生霍爾電勢差VH輸出,該VH信號經(jīng)放大器放大后送至施密特觸發(fā)器整形,使其成為方波輸送到OC門輸出。 霍爾傳感器單元A44E 屬于開關(guān)型的霍爾器件,其工作電壓范圍比較寬(~18V),其輸出的信號符合TTL電平標(biāo)準(zhǔn),可以直接接到單片機(jī)的I/O 端口上,而且其最高檢測頻率可達(dá)到1MHZ[3] 。但P0口不能同時作為地址/數(shù)據(jù)總線和I/O使用。對于單片機(jī)的P0口,可以作為地址/數(shù)據(jù)總線使用,也可以作為一般的I/O口使用。RST端若由低電平上升到高電平并持續(xù)2個周期,系統(tǒng)將實現(xiàn)一次復(fù)位操作;在該復(fù)位電路中,按一下復(fù)位開關(guān),利用電容沖放電的所產(chǎn)生的延時,就會在RST端產(chǎn)生一段時間的高電平,進(jìn)而進(jìn)行復(fù)位操作。單片機(jī)最小系統(tǒng)電路圖如圖21所示。芯片外圍電路最高可接入40MHZ的晶振(AT單片機(jī)數(shù)值一般為24MHZ)。系統(tǒng)結(jié)構(gòu)圖如圖11所示。其中,等待時間可根據(jù)霍爾傳感器A44E是否有脈沖輸出加以判斷,如可設(shè)定等待時基為5s,即假如A44E在5s后仍無脈沖輸出便認(rèn)為進(jìn)入等待時間,并由單片機(jī)STC89C52內(nèi)部計時器對其進(jìn)行計時。 基本原理 計價器系統(tǒng)主要由五部分組成:分別為基于霍爾傳感器A44E的里程檢測單元、STC89C52單片機(jī)、外擴(kuò)串行EEPROMAT24C0獨立鍵盤和LED顯示。白天單價、夜晚單價、等待單價和起步價格都可通過獨立鍵盤進(jìn)行調(diào)節(jié)。超過3公里后,實現(xiàn)每1公里單價收費,中間遇到暫停時,計程數(shù)不再增加,開始計時收費,計程收費和計時收費的和便構(gòu)成了一位乘客的車費。 第1章 系統(tǒng)工作原理 功能要求出租車計價器是根據(jù)乘客乘坐汽車行駛距離和等候時間的多少進(jìn)行計價的,并在行駛中同步顯示本次消費、運行里程、運行單價以及等待時間等信息。3. 利用I2C總線通過EEPROM對存儲空間進(jìn)行擴(kuò)展,使其具備掉電存儲功能。功能要求1. 設(shè)計一個出租車計價器,并利用霍爾傳感器和單片機(jī)內(nèi)集成的計數(shù)器測試出出租車運行里程。也希望能在進(jìn)一步熟悉單片機(jī)控制的同時,對數(shù)字電子技術(shù)、模擬電子技術(shù)、計算控制技術(shù)以及常用外圍芯片有更深層次的了解,提高自己的綜合能力。5. 具有方便的模塊化編程技
點擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1