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

正文內(nèi)容

超速報警器-電子信息科學(xué)與技術(shù)-資料下載頁

2024-12-06 03:07本頁面

【導(dǎo)讀】超速報警器的設(shè)計。專業(yè)電子信息科學(xué)與技術(shù)。臨沂大學(xué)2021屆本科畢業(yè)論文(設(shè)計)。超速報警器的設(shè)計從硬件和軟件方面闡述了單片機在汽車超速報警上的應(yīng)。用,該報警系統(tǒng)允許駕駛員通過自帶鍵盤設(shè)置車輛安全行駛的最高速度,當(dāng)發(fā)現(xiàn)。車輛速度超過駕駛員設(shè)置的最高值時,蜂鳴器開始報警,提醒駕駛員減速,在一。定程度上有效解決汽車超速駕駛的問題。文章介紹了霍爾傳感器的工作原理,闡。述了霍爾傳感器測速系統(tǒng)的工作過程,利用脈沖計數(shù)法實現(xiàn)了對轉(zhuǎn)速的測量,通。結(jié)合硬件電路設(shè)計,采用模塊化方法進行了軟。件設(shè)計,編制了電機轉(zhuǎn)速測量模塊、報警模塊、顯示模塊等的C51程序,并通過。PROTEUSE軟件進行了仿真。

  

【正文】 { full=60。 display[5]=39。039。 display[6]=39。639。 display[7]=39。039。 } while(!key3)。 } } 報警程序設(shè)計 本程序通過在輸出一個音頻范圍的方波,驅(qū)動實驗板上的蜂鳴器發(fā)出蜂鳴聲,其中 Delay 延時子程序的作用是使輸出的方波頻率在人耳朵聽覺能力之內(nèi)的20KHZ 以下,如果沒有這個延時程序的話,輸出的頻率將大大超出人耳朵的聽覺能力,我們將不能聽到聲音。更改延時常數(shù),可以改變輸出頻率,也就可以調(diào)整蜂鳴器的音調(diào)。 void warning_speed() { if(speed1=full) //高于限速值打開警告 { warning=1。 led=1。 } if(speed1full) //低于限速值關(guān)閉警告 { warning=0。 led=0。 } 轉(zhuǎn)速程序的設(shè)計 /*數(shù)據(jù)處理 */ void disp_count() { speed=zhuan*D。 //速度 m/s speed1=speed*。 //速度 km/h display2[5]=(speed1/100%10+39。039。)。 //速度的百位 display2[6]=(speed1/10%10+39。039。)。 //速度的十位 display2[7]=(speed1%10+39。039。)。 //速度的個位 臨沂 大學(xué) 2021 屆本科畢業(yè)論文 (設(shè)計) 25 } 6 系統(tǒng)仿真調(diào)試 應(yīng)用 Keil 軟件進行程序調(diào)試 先分別調(diào)試通過各個模塊程序 ,然后調(diào)試中斷服務(wù)程序 ,最后調(diào)試主程序 ,將各部分連接進行調(diào)試。調(diào)試的范圍可以由小到大 ,逐步增加 ,必要的中間信號可以先做設(shè)定。通常交叉使用單步運行 ,斷點運行 ,連續(xù)運行等多種方式 ,每次執(zhí)行完畢后 ,檢查 CPU執(zhí)行現(xiàn)場 ,RAM 的有關(guān)內(nèi)容 ,I/O 接口的狀態(tài)等。發(fā)現(xiàn)一個問題 ,解決一個問題 ,直至全部通過。 首先新建一個工程項目文件 。其次為工程選擇目標(biāo)器件 。再次為工程項目設(shè)置軟硬件調(diào)試環(huán)境;并創(chuàng)建源程序文件并輸入程序代碼,及保存創(chuàng)建的源程序項目文件;最后把源程序文件添加到項目中 [15]。 Proteus 仿真 Proteus 簡介 Proteus 是基于 SPICE3F5仿真引擎的混合電路仿真軟件,不僅能夠仿真模擬、數(shù)字電路以及模數(shù)混合電路,更具特色的是它能夠仿真基于單片機的電子系統(tǒng)。 Proteus不但完全支持 MCS51及其派生系列單片機的設(shè)計系統(tǒng),另外也能仿真基于 AVR 和 PIC 系列的單片機系統(tǒng)。 Proteus 的仿真資源 Proteus 軟件可提供的模擬、數(shù)字、交 (直 )流等元器件達 30多個元件庫,共計數(shù)千種。此外,對于元件庫中沒有的器件,使用者也可依照需要自己創(chuàng)建。軟件調(diào)試方面,其自身只帶匯編編譯器,不支持 C 語言。但可以將它與 KeilC51集成開發(fā)環(huán)境連接,將用匯編和 C語言編寫的程序編譯好之后,可以立即進行軟、硬件結(jié)合的系統(tǒng)仿真,像使用仿真器一樣來調(diào)試程序 [16]。 軟件仿真精度有限,而且不可能所有的 器件都找得到相應(yīng)的仿真模型,用開發(fā)板和仿真器當(dāng)然是最好選擇,可是對于單片機愛好者,或者簡單的開發(fā)應(yīng)該是比較好的選擇。 Proteus 與其它單片機仿真軟件不同的是,它不僅能仿真單片機CPU 的工作情況,也能仿真單片機外圍電路或沒有單片機參與的其它電路的工作情況。因此在仿真和程序調(diào)試時,關(guān)心的不再是某些語句執(zhí)行時單片機寄存器和存儲器內(nèi)容的改變,而是從工程的角度直接看程序運行和電路工作的過程和結(jié)果。對于這樣的仿真實驗,從某種意義上講,是彌補了實驗和工程應(yīng)用間脫節(jié)的矛盾和現(xiàn)象。 用 Proteus 繪制原理圖步 驟 原理圖是在原理圖編輯窗口中的藍色方框內(nèi)繪制完成的,通過文件中的“新建設(shè)計”選項,可以調(diào)整原理圖設(shè)計頁面大小。繪制原理圖時首先應(yīng)根據(jù)需要選臨沂 大學(xué) 2021 屆本科畢業(yè)論文 (設(shè)計) 26 取元器件, Proteus庫中提供了大量元器件原理圖符號,利用 Proteus 的搜索功能能很方便地查找需要的元器件。 首先根據(jù)需要選擇器件。單擊元器件列表窗口上邊的按鈕“ P” ,彈出如圖18所示元器件選擇窗口。在該窗口左上方的“ keywords”欄內(nèi)鍵入“ AT89C51” ,窗口中間的“結(jié)果”欄將顯示出元器件庫中所有 AT89C51 單片機芯片,選擇其中的“ AT89C51”,窗口右 上方將顯示出 AT89C51 圖形符號,同時顯示該器件的虛擬仿真模型,單擊“確定”按鈕后, AT89C51 將出現(xiàn)在器件列表窗口。照此方法選擇所有需要的元器件。 圖 18器件選擇窗口 器件選擇完畢后,就可以開始繪制原理圖了。先用鼠標(biāo)從器件選擇窗口選中需要的器件,預(yù)覽窗口將出現(xiàn)該器件的圖標(biāo)。再將鼠標(biāo)指向編輯窗口并單擊左鍵,將選中的器件放置到原理圖中。 放置電源和地線端時,要從“終端”按鈕欄中選取。 在兩個元器件之間進行連線的方式很簡單,先將鼠標(biāo)指向第一個器件的連接點并單擊左鍵,再將鼠標(biāo)移到另一個器件的連接點并單擊左 鍵,這兩個點就連接到一起了。對于相隔較遠,直接連線不方便的器件,可以用標(biāo)號的方式進行連接。 仿真實例 ( 1) 在 Keil 軟件中 進行參數(shù)的選定 , 本系統(tǒng)主芯片采用的 AT89C51。因此選定該型號 ,如圖 19。其次, 在 Option For Target Target 1 中選擇生成 HEX 文件 ,如圖 20。 再次 運行的第一步,點擊運行程序。確認(rèn)運行程序無誤,即沒有錯誤和警告 , 如圖 21。 點擊生成工程文件并生成 HEX 文件 , 如圖 22。 臨沂 大學(xué) 2021 屆本科畢業(yè)論文 (設(shè)計) 27 圖 19芯片型號選擇 圖 20 HEX文件生成 圖 21 確認(rèn)程序無誤 臨沂 大學(xué) 2021 屆本科畢業(yè)論文 (設(shè)計) 28 圖 22已 生成 HEX 文件。 ( 2) 在 Proteus 平臺上進行單片機系統(tǒng)電路設(shè)計、選擇元器件、接插件、連接電路和電氣檢測等 。 ( 3) 原理圖繪制完成之后,給單片機添加應(yīng)用程序,就可以進行虛擬仿真調(diào)試。先用鼠標(biāo)右鍵選中 AT89C51 單片機,再單擊左鍵,彈出如圖 23所示器件編輯窗口。 圖 23器件編輯窗口 在器件編輯窗口中“ Program File” 欄單擊文件夾瀏覽按鈕 ,找到需要仿真的Hex 文件,單擊“確定”按鈕完成添加文件,在“ Clock Frequency” 文本框中把頻率改為 12MHz,單擊“確定”按鈕退出。這時單擊仿真工具欄中全速運 行按鈕即可開始進行虛擬仿真。 在 Proteus 軟件里仿真的效果圖 。常速狀態(tài)如圖24,超速狀態(tài)如圖 25。 臨沂 大學(xué) 2021 屆本科畢業(yè)論文 (設(shè)計) 29 圖 24 仿真顯示圖 常速狀態(tài) 圖 25 仿真顯示圖 報警狀態(tài) 臨沂 大學(xué) 2021 屆本科畢業(yè)論文 (設(shè)計) 30 附 錄 源程序代碼 : include include define uint unsigned int define uchar unsigned char /*端口命名 */ sbit rs=P2^0。 //LCD 的數(shù)據(jù) /命令選擇端 sbit rw=P2^1。 //LCD 的讀寫選擇端 sbit lcden=P2^2。 //LCD 的使能信號端 sbit warning=P1^7。 //蜂鳴器端 sbit led=P1^6。 sbit key1=P1^0。 //限速值加 10km/h sbit key2=P1^1。 // 限速值減 10km/h sbit key3=P1^2。 //60km/h 限速 /**/ /*定義參數(shù) */ uint i,count,zhuan,msec,speed,speed1。 //定義參數(shù) uint D=2 。 //周長 2m uint full=30。 //最初限速值 uchar display[]={ max= km/h}。 //定義顯示參數(shù) uchar display2[]={ now= km/h}。 //57 數(shù)據(jù) /**/ /*毫秒延時 */ void delayms(uint ms) { uint i,j。 //為延時引入 i,j 兩參數(shù) for (j=0。jms。j++) //延時第一循環(huán) for (i=0。i110。i++)。 //延時第二循環(huán) } /**/ /*向 LCD1602 寫命令 */ void write_mand(uchar mand) { rs=0。 //選擇寫命令 P0=mand。 //向 LCD 寫命令 lcden=0。 delayms(5)。 lcden=1。 //信號使能端高電平 delayms(5)。 lcden=0。 //信號使能端低電平 } /**/ 臨沂 大學(xué) 2021 屆本科畢業(yè)論文 (設(shè)計) 31 /*向 LCD1602 寫數(shù)據(jù) */ void write_data(uchar data0) { rs=1。 //選著寫數(shù)據(jù) P0=data0。 //向 LCD 寫數(shù)據(jù) lcden=0。 delayms(5)。 lcden=1。 //信號使能端高電平 delayms(5)。 lcden=0。 //信號使能端低電平 } /**/ /*外部中斷 0 計數(shù)程序 */ void counter(void) interrupt 0 { EX1=0。 //關(guān)外部中斷 0 count++。 //轉(zhuǎn)圈計數(shù)加 1 EX1=1。 //開外部中斷 0 } /**/ /*LCD 顯示 */ void displaytolcd() { write_mand(0x80)。 //向 LCD1602 寫命令 80H for (i=0。isizeof(display)1。i++) //循環(huán)要傳輸?shù)淖址麄€數(shù)次 ,每一次傳輸一個字符 { write_data(display[i])。 delayms(5)。 } write_mand(0x80+0x40)。 //向 LCD1602 寫命令 c0H for (i=0。isizeof(display2)1。i++) //循環(huán)要傳輸?shù)淖址麄€數(shù)次 ,每一次傳輸一個字符 { write_data(display2[i])。 delayms(5)。 } } /**/ /*數(shù)據(jù)處理 */ void disp_count() { speed=zhuan*D。 //速度 m/s speed1=speed*。 //速度 km/h 臨沂 大學(xué) 2021 屆本科畢業(yè)論文 (設(shè)計) 32 display2[5]=(speed1/100%1
點擊復(fù)制文檔內(nèi)容
研究報告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1