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

正文內(nèi)容

基于單片機(jī)的出租車計價器的設(shè)計-wenkub

2022-09-09 12:00:13 本頁面
 

【正文】 nt function, N key and P key is the navigation keys to adjust the time, + keys and key is to adjust the time and date, E/C key is mode switch button, Pause key is suspended billing buttons. Key words: AT89C51 microcontroller。 簽名: 年 月 日 授 權(quán) 聲 明 本人完全了解許昌學(xué)院有關(guān)保留、使用本科生畢業(yè) 論文(設(shè)計) 的規(guī)定,即:有權(quán)保 留并向國家有關(guān)部門或機(jī)構(gòu)送交畢業(yè) 論文(設(shè)計) 的復(fù)印件和磁盤,允許畢業(yè) 論文(設(shè)計)被查閱和借閱。 基于單片機(jī)的 出租車計價器的設(shè)計 院 系 獨(dú) 創(chuàng) 性 聲 明 本人鄭重聲明:所呈交的畢業(yè)論文(設(shè)計)是本人在指導(dǎo)老師指導(dǎo)下取得的研究成果。本人授權(quán)許昌學(xué)院可以將畢業(yè) 論文(設(shè)計) 的全部或部分內(nèi)容編入有關(guān)數(shù)據(jù)庫進(jìn)行檢索,可以采用影印、縮印或掃描等復(fù)制手段保存、匯編 論文(設(shè)計) 。 LCD。計價器是出租車公司和消費(fèi)者之間公平交易的重要工具,所以計價器的性能一定要穩(wěn)定,準(zhǔn)確。 我國最早的 生產(chǎn) 計價器 的 是重慶 市起重機(jī) 廠 , 那時的計價器都是采用機(jī)械齒輪鉤, 只能完成簡單的計程功能,但它是早期計價器的一個里程碑。本設(shè)計利用 AT89C51作為核心控制中心,使計價器 具有計價、計程 、停車 時間計價,時鐘顯示等相關(guān)功能。由于將多功能 8位 CPU和閃爍存儲器組合在單個芯片中,ATMEL的 AT89C51是一種高效微控制器 。 AT89C51的中央處理器主要由運(yùn)算器和控制邏輯 組 成,其中包括 一些 特殊功能寄存器( SFR)。 AT89C51 單片機(jī)引腳介紹 AT89C51有 40個引腳, 32個外部雙向輸入 /輸出( I/O)端口, 同時 內(nèi)含 2個外中斷口,3個 16位可編程定時計數(shù)器 , 2個全雙工串行通信口, 2個讀寫口線, AT89C51可以按照常規(guī)方法進(jìn)行編程,也可在線編程。 VCC: +5V電源端。當(dāng)輸入的復(fù)位信號保持兩個機(jī)器周期( 24個時鐘周期)以上的高電平時有效 ,用來完成復(fù)位操作;第二功能 VPD作為備用電源輸入端,當(dāng)電源 VCC發(fā)生故障,電壓降低到低電平規(guī)定值時,可通過 VPD為單片機(jī)內(nèi)部 RAM提供電源,以保護(hù)片內(nèi) RAM中的信息不丟失,使系統(tǒng)在上電后能繼續(xù)正常運(yùn)行。 PSEN :外部 ROM的讀選通信號輸出端。 EA為低電平時, CPU只執(zhí)行外部 ROM中的程序。在訪問外存儲器時,分時提供低 8位地址線和 8位雙向數(shù)據(jù)線。 P2口 ( ~) : P2口是一個內(nèi)部帶有上拉電阻的 8位準(zhǔn)雙向 I/O端口。 硬件電路的組成 復(fù)位電路的設(shè)計 單片機(jī)復(fù)位是使 CPU和系統(tǒng)中的其他功能部件都處在一個確定的初始狀態(tài),并從這個狀態(tài)開始工作,例如復(fù)位后 PC= 0000H,使單片機(jī)從第 一 個單元取指令。具體的時鐘電路如圖 23所示。對于 AT89C51單片機(jī)來說,最小系統(tǒng)一般應(yīng)該包括:單片機(jī)、晶振電路、復(fù)位電路等??梢詸z測磁場及其變化,可在各種磁場有關(guān)的場合中使用。 A44E集成霍爾開關(guān)由穩(wěn)壓器A,霍爾電勢發(fā)生器(即硅霍爾片) B,差分放大器 C,施密特觸發(fā)器 D和 OC門輸出 E五個基本部分組成。 集成開關(guān)型霍爾傳感器原理 如 圖 26所示 。 由于在仿真過程中不能直接用霍爾傳感器,所以仿真時使用了 系統(tǒng)中 的 頻率來 模擬 霍爾 傳感器脈沖。 液晶顯示原理: 液晶顯示的原理是利用液晶的物理性質(zhì),通過電壓對其顯示區(qū)域進(jìn)行控制,有電就可顯示出圖形。當(dāng) RS和 RW共同為低電平時可以寫入指令或者顯示地址,當(dāng) RS為低電平 RW為高電平時可以讀忙信號,當(dāng) RS為高電平 RW為低電平時可以寫入數(shù)據(jù)。 時鐘芯片 DS1302 DS1302 的簡介 DS1302 是美國 DALLAS 公司推出的一種高性能、低功耗、帶 RAM 的實(shí)時時鐘芯片,它可以對年、月、日、周日、時、分、秒進(jìn)行計時,且具有閏年補(bǔ)償功能,工作電壓寬達(dá)~ 。 8 圖 28 DS1302 管腳 引腳介紹: VCC1—— 后背電源 VCC2—— 主電源 X1, X2—— 振蕩源 RST—— 復(fù)位 /片選線 DS1302 的 電路 在 DS1302 電路(如圖 29) 中, VCC2 是主電源, VCC1 是后備電源。當(dāng) RST 為高電平時,所有的數(shù)據(jù)傳送被初始化,允許對 DS1302 進(jìn)行操作。 圖 29 DS1302 電路 DS1302 的控制字節(jié) DS1302 的控制字節(jié)的最高有效位 (位 7)必須是邏輯 1,如果它為 0,則不能把數(shù)據(jù)寫入 DS1302 中,位 6 如果為 0, 則表示存取日歷時鐘數(shù)據(jù),為 1 表示存取 RAM 數(shù)據(jù) 。 (2)支持主流單片機(jī)系統(tǒng)的仿真 目前支持的單片機(jī)類型有 68000 系列、 8051 系列、 AVR 系列、 PIC12 系列、 PIC16 系列、 PIC18 系列、 Z80 系列、 HC11 系列以及各種外圍芯片。在 Proteus ISIS 中,選中 AT89C51 并單擊鼠標(biāo)左鍵,對 AT89C51 進(jìn)行設(shè)置,設(shè)置單片機(jī)時鐘頻率為 12MHz,按照正確的文件路徑加載 .HEX 文件 , 對單片機(jī)設(shè)置完畢后就可以開始仿真了。元件的選取界面如圖 32 所示 。 圖 34 Keil uVision2 程序調(diào)試界面 本設(shè)計利用 軟件 Keil uVision2, 在新建 Keil 項目時選擇 AT89C51 單片機(jī)作為 CPU,將源程序?qū)?, 在 “Options For Target”對話窗口中 , 選中 “Output”選項中的 “Create HEX File”, 在 編譯鏈接后就可以生成 .HEX 文件 。與此相比,單片機(jī)的功能就強(qiáng)大很多,只需用較少的硬件和少量的軟件就可以實(shí)現(xiàn)較復(fù)雜的設(shè)計要求,還可以添加更多的其他功能,靈活性很強(qiáng),計費(fèi)模式切換通過軟件就可輕易實(shí)現(xiàn),避免了因機(jī)械開關(guān)的老化而造成的潛在危險。 當(dāng)選擇 50Hz, 150Hz, 211Hz 時,表示出租車分別行駛在中速,高速,超高速的行駛狀態(tài)下,這是計價器的收費(fèi)為計價收 費(fèi),起步價為 6 元(含 3km),行駛 1km收費(fèi) 元。初次之外還要對各接口芯片初始化,對中斷向量的設(shè)計,開中斷和循環(huán)等待的工作。 計價管理程序主要包括 PWM 管 理程序、里程計量程序、時間管理程序、費(fèi)用管理程序、用戶界面控制程序等部分。 出租車暫停計費(fèi)時 圖 53 出租車 暫停計費(fèi)時 出租車正在行駛的過程中,按下 PAUSE 鍵,將會停止計費(fèi)。計時用 DS1302 作為時間基準(zhǔn)來計時, N 鍵和 P 鍵為調(diào)節(jié)時間的導(dǎo)航鍵, +鍵和 鍵可以調(diào)節(jié)時間和日期, E/C 鍵切換顯示模式。 這次的畢業(yè)設(shè)計讓我明白了:在以后的學(xué)習(xí)和工作中一定要把理論和實(shí)際結(jié)合起來,不能只會理論而不會實(shí)際,那是不現(xiàn)實(shí)的,只有實(shí)際的做了,你才會知道自己究竟掌握了多少東西,永遠(yuǎn)不要做一個眼高手低的人。 //計價器價格各位在液晶上的顯示位置 bit config_ok = 0。 //脈沖計數(shù)器 uint pulse_count_tmp = 0。 //保存時間的數(shù)組 uint money[2]={6,0}。 void Delay(uint)。 void Money_Show(uint money[2])。 //運(yùn)行起來后,將在 LCD 上一直出現(xiàn)的 void Run_BackGround(void) { WriteChar(39。:39。,13,0)。 WriteChar(39。 WriteInt(pulse_count % 200 / 10,0,0,13,1)。 WriteString(km,14,1)。 WriteChar(39。 } void Money_Show(uint money[2]) { WriteDecimal(money[0],0,3,1)。 WriteInt(BcdToInt(time_data[4]),1,2, 8,0)。/39。,9,0)。 WriteChar(39。 WriteInt(BcdToInt(time_data[2]),1,2, 7,0)。 WriteInt(BcdToInt(time_data[6]),1,2,10,1)。 config_ok = 0。 INT1_init()。 WriteString(set time over...,0,0)。 P1= 0xff。temp++)。 EA = 1。 EA = 1。 pulse_count_tmp = pulse_count。 Show_Mileage()。 0x04)) { P1 amp。 if(time[6] != time_tmp[6]) { Run_Show_Time(time_tmp)。 } first_3_km = 0。 WriteString( ,0,1)。 Show_Mileage()。 for(i = 0。 P1 amp。 //等待計時加 1 if(time_count % 100 == 0 amp。 money[1] %= 100。amp。 Show_Wait_Time(time_count)。 P1 |= 0x01。 if(mileage_count_new != mileage_count_old amp。i mileage_count_new。 } money[0] += 1。amp。 } } } else { if(time[6] != time_tmp[6]) { Run_Show_Time(time_tmp)。 } } } } static void INT0_ser(void) interrupt 0 { pulse_count ++。 static uchar pos。 config_ok == 0) //++ { for(i = 0。 0x20) amp。amp。amp。 else if(pos == 2 amp。amp。 } else。 config_ok == 0) // { for(i = 0。 0x40) amp。amp。 result == 0) result = 12。//判斷潤平年 if(result == 0) result = month_day[time[2] 1]。 else if((pos == 5 || pos == 6) amp。 time[pos] = IntToBcd(result)。 config_ok == 0) //NEXT { for(i = 0。 0x08) amp。 if(pos == 1) pos = 2。 config_ok == 0) //PREVIOUS 32 { for(i = 0。 0x10) amp。 if(pos == 1) pos = 0。 config_ok == 0) //ENTER { for(i = 0。 0x80) amp。 DS1302_Reset()。amp。 if(!(P2 amp。
點(diǎn)擊復(fù)制文檔內(nèi)容
畢業(yè)設(shè)計相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1