版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
汽車單片機技術(shù)——項目一項目一
任務(wù)1KeilC51軟件的使用一、目的與要求
支持傳統(tǒng)8051微控制器體系結(jié)構(gòu)的Keil開發(fā)工具,適合每個階段的開發(fā)人員。不管是專業(yè)的應用工程師,還是剛學習嵌入式軟件開發(fā)的學生,學好Keil開發(fā)工具的使用都是非常重要的。項目一
任務(wù)1KeilC51軟件的使用二、KeilC51軟件基本使用方法1.啟動KeilμVision5雙擊KeilμVision5快捷方式,運行KeilμVision5,其軟件界面如下圖所示。項目一
任務(wù)1KeilC51軟件的使用二、KeilC51軟件基本使用方法2.新建工程文件(1)單擊“Project”→"NewμVisionProject…”菜單命令,打開“CreateNewProject”對話框,選擇文件夾(自定義),輸入文件名(例如“Test01”),單擊“保存”按鈕,如下圖所示項目一
任務(wù)1KeilC51軟件的使用二、KeilC51軟件基本使用方法2.新建工程文件(2)選擇CPU型號,在對話框中,單擊左側(cè)列表中“Atmel”項前面的“+”號,單擊選擇其中的“AT89C51”,如圖所示,然后單擊“OK”按鈕。項目一
任務(wù)1KeilC51軟件的使用二、KeilC51軟件基本使用方法3.新建文件(1)單擊“File”→“New”菜單命令,出現(xiàn)下圖所示的文本編輯窗口,在該窗口中輸入源程序。項目一
任務(wù)1KeilC51軟件的使用二、KeilC51軟件基本使用方法3.新建文件(2)保存文件,單擊“File”→“Save”菜單命令,將文件保存為C語言格式文件,如圖1-8所示。特別注意:文件名一定要帶.c擴展名。項目一
任務(wù)1KeilC51軟件的使用二、KeilC51軟件基本使用方法3.新建文件(3)添加文件到項目工程中,在主界面中雙擊工程管理(Project)窗口中的“SourceGroup1”或右鍵單擊打開快捷菜單,再選擇“AddFiletoGroup'SourceGroup1'”菜單命令,打開對話框,找到文件保存目錄,并選中需要添加的文件,最后單擊“Add”按鈕,完成文件添加后的主界面。項目一
任務(wù)1KeilC51軟件的使用二、KeilC51軟件基本使用方法3.新建文件(3)添加文件到項目工程中,在主界面中雙擊工程管理(Project)窗口中的“SourceGroup1”或右鍵單擊打開快捷菜單,再選擇“AddFiletoGroup'SourceGroup1'”菜單命令,打開對話框,找到文件保存目錄,并選中需要添加的文件,最后單擊“Add”按鈕,完成文件添加后的主界面。項目一
任務(wù)1KeilC51軟件的使用二、KeilC51軟件基本使用方法4.配置工程屬性(1)右鍵單擊“SourceGroupl”位置,選擇“OptionsforTarget1‘Target1’”快捷命令。(2)單擊“Output”選項卡,選中“CreateHEXFile”復選框,再單擊“OK”按鈕。項目一
任務(wù)1KeilC51軟件的使用二、KeilC51軟件基本使用方法5.編輯文件(1)在主界面中,單擊“Project”→“Buildtarget”菜單命令,對工程進行編譯,也可單擊“Rebuildalltargetfiles”對所有工程文件進行重新編譯。(2)編譯完成后,在輸出窗口查看編譯結(jié)果信息。項目一
任務(wù)1KeilC51軟件的使用三、總結(jié)1.使用KeilC51的基本步驟如下圖所示。2.文件工具欄常用按鈕功能說明如下圖所示。項目一
任務(wù)1KeilC51軟件的使用三、總結(jié)3.編譯工具欄常用按鈕功能說明如下圖所示。4.刪除工程中文件時,右鍵單擊工程管理窗口中的“test01.c”位置,在快捷菜單中選擇“RemoveFile‘test01.c’”菜單命令,即可將“test01.c”文件從現(xiàn)在工程中刪除,操作感謝您的觀看汽車單片機技術(shù)——項目二項目二
任務(wù)2-1汽車前照燈控制一、目的與要求通過單片機控制,在任意按鈕按下時,對應的LED燈點亮;按鈕松開時,對應的LED燈熄滅。以此了解C語言的數(shù)據(jù)類型、常量與變量、運算符和表達式等基本概念及使用方法。設(shè)計要求:當連接到單片機P5.5口的按鈕S1按下時,通過單片機檢測并控制連接到P3.7口的LED燈L2點亮,按鈕S1松開時L2熄滅。項目二
任務(wù)2-1汽車前照燈控制1.電路設(shè)計項目二
任務(wù)2-1汽車前照燈控制2.源程序設(shè)計項目二
任務(wù)2-1汽車前照燈控制3.程序流程圖項目二
任務(wù)2-1汽車前照燈控制二.相關(guān)知識1.發(fā)光二極管(LED)LED是一種電流型器件,雖然在它的兩端直接接上3V的電壓后能夠發(fā)光,但容易損壞,在實際使用中一定要串聯(lián)限流電阻,LED的工作電流根據(jù)型號不同一般為1~30mA。項目二
任務(wù)2-1汽車前照燈控制2.函數(shù)C語言程序采用函數(shù)結(jié)構(gòu),每個C語言程序由一個或多個函數(shù)組成,在這些函數(shù)中至少應包含一個主函數(shù)main(),也可以包含一個main()函數(shù)和若干個其他的功能函數(shù)。不管main()函數(shù)放于何處,程序總是從main()函數(shù)開始執(zhí)行,執(zhí)行到main()函數(shù)結(jié)束則結(jié)束??梢栽趍ain()函數(shù)中調(diào)用其他功能函數(shù),其他功能函數(shù)也可以相互調(diào)用,但main()函數(shù)只能調(diào)用其他功能函數(shù),而不能被其他功能函數(shù)所調(diào)用。項目二
任務(wù)2-1汽車前照燈控制3.注釋語句KeilC51編譯器所支持的注釋語句。一種是以"http://"符號開始的語句,符號之后的語句都被視為注釋,直到有<Enter>鍵換行為止。另一種是在“/*”和“*/”符號之內(nèi)的為注釋。注釋部分內(nèi)容不會被編譯器所編譯。4.數(shù)據(jù)類型每寫一個程序,總離不開數(shù)據(jù)的應用,在學習C語言的過程中理解掌握數(shù)據(jù)類型也是很關(guān)鍵的。表2-1中列出了單片機C語言編譯器所支持的數(shù)據(jù)類型。項目二
任務(wù)2-1汽車前照燈控制5.常量常量就是在程序運行過程中不能改變值的量,而變量是能在程序運行過程中不斷變化的量。變量的定義能使用所有KeilC51編譯器支持的數(shù)據(jù)類型,而常量的數(shù)據(jù)類型只有整型、浮點型、字符型和位標量。例如:#defineFalse0x0;//用預定義語句能定義常量。#defineTrue0x1;//這里定義False為0,True為1。//在程序中用到False編譯時自動用O替換,同理True用1替換。項目二
任務(wù)2-1汽車前照燈控制6.變量(1)關(guān)鍵字介紹ANSIC規(guī)定的關(guān)鍵字有32個,即:auto、const、signed、unsigned、static、extern、char、long、short、int、float、double、void、volatile、register、union、struct、enum、sizeof、typedef、if、while、break、case、continue、default、do、else、for、goto、return、switch項目二
任務(wù)2-1汽車前照燈控制6.變量(2)命名規(guī)則和標識符所謂的變量就是對存儲空間的區(qū)域命名,其存儲的值可以改變。變量定義必須放在變量使用之前,一般放在函數(shù)體的開頭部分。標識符由英文字母(A~Z,a~z)、數(shù)字(0~9)和下畫線“_”組成,并且首字符不能是數(shù)字。例如正確的標識符有Led,PT1,LY_1等。不能把C語言關(guān)鍵字作為用戶標識符,例如int、for、goto等均不可。標識符長度是由機器上的編譯系統(tǒng)決定的,一般的限制為8字符。標識符對大小寫敏感,即嚴格區(qū)分大小寫。項目二
任務(wù)2-1汽車前照燈控制6.變量(3)變量定義有了關(guān)鍵字、命名規(guī)則和標識符就可以定義變量了,一般定義變量的格式如下:[存儲種類]數(shù)據(jù)類型[存儲器類型]變量名表可以看到在定義變量的格式中除了數(shù)據(jù)類型和變量名表是必要的,其他都是可選項。存儲種類有四種:自動(auto)、外部(extern)、靜態(tài)(static)、寄存器(register),缺省類型則默認為自動(auto)。項目二
任務(wù)2-1汽車前照燈控制6.變量(3)變量定義有了關(guān)鍵字、命名規(guī)則和標識符就可以定義變量了,一般定義變量的格式如下:[存儲種類]數(shù)據(jù)類型[存儲器類型]變量名表可以看到在定義變量的格式中除了數(shù)據(jù)類型和變量名表是必要的,其他都是可選項。存儲種類有四種:自動(auto)、外部(extern)、靜態(tài)(static)、寄存器(register),缺省類型則默認為自動(auto)。項目二
任務(wù)2-1汽車前照燈控制6.變量(3)數(shù)據(jù)類型對應前邊介紹的unsigned/signedchar、int、bit等。存儲器類型為data、idata、xdata、code等。如果省略存儲器類型,系統(tǒng)默認為data型存儲器。1)data—直接訪問內(nèi)部數(shù)據(jù)存儲器(128B),訪問速度最快。2)idata—間接訪問內(nèi)部數(shù)據(jù)存儲器(256B),允許訪問全部內(nèi)部地址。3)xdata—外部數(shù)據(jù)存儲器。4)code—程序存儲器。需要注意的是AT89C51芯片中RAM只有128位;AT89C52芯片中RAM有256位,其中低128位可以直接訪問,高128位則需要間接訪問。項目二
任務(wù)2-1汽車前照燈控制7.進制轉(zhuǎn)換(1)二進制轉(zhuǎn)換為十進制在進行二進制轉(zhuǎn)換為十進制的眾多方法中,本書介紹“8421”轉(zhuǎn)換法,如圖2-6所示,將二進制位為1所對應“8421”數(shù)列里的數(shù)字相加,結(jié)果即為該二進制數(shù)對應的十進制數(shù),如果超過8位時,“8421”數(shù)列第9位的數(shù)為第8位的數(shù)的2倍,即256。項目二
任務(wù)2-1汽車前照燈控制7.進制轉(zhuǎn)換(2)二進制轉(zhuǎn)換為十六進制將二進制數(shù)從右到左每4位一分,不滿4位的在前面補0。然后按“8421”法進行轉(zhuǎn)換(3)十六進制轉(zhuǎn)換為二進制將十六進制轉(zhuǎn)換為二進制時,方法與二進制轉(zhuǎn)換為十六進制是相反的,分別將十六進制數(shù)的每1位單獨轉(zhuǎn)換成4位二進制數(shù)。轉(zhuǎn)換時拼湊“8421”數(shù)據(jù)并讓它與十六進制單個數(shù)相等,拼湊的“8421”數(shù)據(jù)對應位的二進制位為1,其他位為0項目二
任務(wù)2-1汽車前照燈控制7.進制轉(zhuǎn)換(4)十進制轉(zhuǎn)換為二進制將十進制轉(zhuǎn)換為二進制時,方法與二進制轉(zhuǎn)換為十進制是相反的。轉(zhuǎn)換時拼湊“8421”數(shù)據(jù)并讓它與十進制數(shù)相等,拼湊的“8421”數(shù)據(jù)對應位的二進制位為1,其他位為0。(5)其他進制轉(zhuǎn)換在單片機程序設(shè)計過程中,掌握二進制、十進制、十六進制的相互轉(zhuǎn)換能滿足一般設(shè)計需求,至于其他進制之間的轉(zhuǎn)換關(guān)系可以利用計算器的程序員功能進行轉(zhuǎn)換。對于比較復雜的二進制、十進制、十六進制的相互轉(zhuǎn)換也可以利用計算器的程序員功能進行轉(zhuǎn)換項目二
任務(wù)2-1汽車前照燈控制8.單片機工作條件(1)電源一般的單片機需要從Vcc引腳接入5V電源,STC15W4K32S4的工作電壓為2.4~5.5V。(2)接地GND引腳接供電電源的地線,為0V。(3)復位電路RES引腳維持高電平時間不少于24個振蕩周期,則單片機保持在復位狀態(tài)(時鐘周期=12×振蕩周期,振蕩周期=1/f)。(4)時鐘電路單片機是在統(tǒng)一時鐘下工作的,所以必須有時鐘電路。項目二
任務(wù)2-1汽車前照燈控制9.C語言的基本語句C語言程序的執(zhí)行部分由語句組成。C語言提供了豐富的程序控制語句,按照程序設(shè)計的基本結(jié)構(gòu)可分為順序結(jié)構(gòu)、選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu),由此可以組成各種復雜程序。這些語句主要包括表達式語句、復合語句、選擇語句和循環(huán)語句等。10.關(guān)鍵指令分析(1)#include"STC15F2K60S2.h"對頭文件“STC15F2K60S2.h”進行包含,此文件可對STC15W4K32S4單片機的內(nèi)部資源、端口進行定義,后面程序中可以直接調(diào)用。項目二
任務(wù)2-1汽車前照燈控制10.關(guān)鍵指令分析(2)sbitLED=P3^7定義輸出LED燈的端口號為P3.7,后面程序?qū)ψ兞俊癓ED”進行操作等同于對單片機P3.7口進行操作。(3)P3M0=0x00P3M1=0x00設(shè)置P3口為準雙向I/O(傳統(tǒng)8051模式)。(4)while指令格式:while(循環(huán)繼續(xù)的條件表達式){語句組;}項目二
任務(wù)2-1汽車前照燈控制10.關(guān)鍵指令分析(5)選擇指令1)基本if指令。格式:if(表達式){語句組;}基本if指令執(zhí)行過程:當表達式的結(jié)果為真時,執(zhí)行其后的語句組,否則跳過該語句組,繼續(xù)執(zhí)行下面的語句。項目二
任務(wù)2-1汽車前照燈控制10.關(guān)鍵指令分析2)if-else指令。格式:if(表達式){語句組1;}else{語句組2;}if-else指令執(zhí)行過程:當表達式的結(jié)果為真時,執(zhí)行其后的語句組1,否則執(zhí)行語句組2。項目二
任務(wù)2-1汽車前照燈控制
3)if-else-if指令。if-else-if指令是由if-else指令組成的嵌套,用來實現(xiàn)多個條件分支的選擇,其一般格式如下:if(表達式1){語句組1;}elseif(表達式2){語句組2;}
:elseif(表達式n){語句組n;}
else{語句組n+1;}項目二
任務(wù)2-1汽車前照燈控制
4)switch指令。多分支選擇的switch指令,其一般格式如下:switch(表達式){case常量表達式1:語句組1;break;case常量表達式2:語句組2;break;
case常量表達式n:語句組n;break;default:語句組n+1;}項目二
任務(wù)2-1汽車前照燈控制(6)賦值運算符賦值運算符的作用是把某個常量或變量或表達式的值賦值給另一個變量。符號為“=”。這里并不是等于的意思,只是賦值,等于用“==”表示。賦值語句左邊必須是變量或寄存器,且必須先定義,常量不能出現(xiàn)在左邊。(7)關(guān)系運算符用關(guān)系運算符將兩個表達式(可以是算術(shù)表達式、關(guān)系表達式、賦值表達式或邏輯表達式)連接起來的式子,稱為關(guān)系表達式。關(guān)系表達式的值為邏輯值的真或假,以1代表真,以0代表假。感謝您的觀看汽車單片機技術(shù)——項目二項目二
任務(wù)2-2汽車轉(zhuǎn)向燈控制一、目的與要求通過單片機控制,使相應的LED燈在對應的按鈕按下時閃亮;在按鈕松開時熄滅。由此了解C語言的程序設(shè)計、延時程序應用等。設(shè)計要求:當連接到單片機P5.5口的按鈕S1按下時,通過單片機檢測并控制連接到P3.7口的LED燈L2閃亮,按鈕S1松開時L2熄滅;當連接到單片機P3.2口的按鈕S2按下時,通過單片機檢測并控制連接到P3.6口的LED燈L3閃亮,按鈕S2松開時L3熄火。項目二
任務(wù)2-2汽車轉(zhuǎn)向燈控制1.電路設(shè)計項目二
任務(wù)2-2汽車轉(zhuǎn)向燈控制2.源程序設(shè)計項目二
任務(wù)2-2汽車轉(zhuǎn)向燈控制3.程序流程圖項目二
任務(wù)2-2汽車轉(zhuǎn)向燈控制二.相關(guān)知識1.關(guān)鍵指令分析
(1)for指令for指令的一般形式:for(循環(huán)變量賦初值;循環(huán)繼續(xù)條件;循環(huán)變量增值){循環(huán)體語句組;}項目二
任務(wù)2-2汽車轉(zhuǎn)向燈控制for指令執(zhí)行流程圖項目二
任務(wù)2-2汽車轉(zhuǎn)向燈控制(2)dowhile指令格式:do{循環(huán)體語句組;}while(循環(huán)繼續(xù)條件);do-while指令用來實現(xiàn)“直到型”循環(huán)。執(zhí)行過程:先無條件執(zhí)行一次循環(huán)體,然后判斷條件表達式,當表達式的值為真(非0)時,返回執(zhí)行循環(huán)體直到條件表達式為假(0)為止項目二
任務(wù)2-2汽車轉(zhuǎn)向燈控制(3)unsignedinti,j該指令定義變量“i”“j”為無符號整型,取值范圍為0~65535,雙字節(jié)存儲,單片機程序設(shè)計過程中常見的變量定義還有以下幾種形式:unsignedinti=5,j=100;—定義變量的同時給變量賦初值i=5,j=100,程序在后面執(zhí)行時i和j的值即為5和100。如果在定義時不賦初值,初值為0。unsignedchari;—定義變量i為無符號字符型,取值范圍為0~255,單字節(jié)存儲。項目二
任務(wù)2-2汽車轉(zhuǎn)向燈控制
unsignedlongi;—定義變量i為無符號長整型,取值范圍為0~4294967295,四字節(jié)存儲。.biti;—定義變量i為位變量,取值范圍為0或1。2.算術(shù)運算符+(加法運算)-(減法運算)*(乘法運算符)/(除法運算符)%(求余運算符,或稱模運算符)如:4%2=0兩個整數(shù)相除的結(jié)果為整數(shù),如8/5的結(jié)果為1,會舍去小數(shù)部分。如果參加運算的兩個數(shù)中有一個數(shù)為實數(shù),則結(jié)果是實型的。求余運算要求%兩側(cè)都是整數(shù)。項目二
任務(wù)2-2汽車轉(zhuǎn)向燈控制3.自增、自減運算自增運算符為“++”,和自減運算符為“--”。(1)前置運算++變量;--變量;即先增減、后運算。(2)后置運算變量++;變量--;即先運算、后增減。項目二
任務(wù)2-2汽車轉(zhuǎn)向燈控制4.邏輯運算符!(邏輯非)&&(邏輯與)||(邏輯或)注意:邏輯運算符與位操作運算符是有區(qū)別的。邏輯運算符可將一個或多個表達式連接起來,進行邏輯運算。假設(shè)有a=1,b=2,c=3,x=4,y=3,則下列各個表達式的值均為0:項目二
任務(wù)2-2汽車轉(zhuǎn)向燈控制5.運算優(yōu)先級項目二
任務(wù)2-2汽車轉(zhuǎn)向燈控制6.位運算(1)與運算按位與運算符:&格式:x&y;規(guī)則:對應位均為1時才為1,否則為0。例如:i=i&0x0f;//若i=0x38,執(zhí)行本語句后i=0x08。主要用途:?。ɑ虮A簦?個數(shù)的某(些)位,其余各位置0。項目二
任務(wù)2-2汽車轉(zhuǎn)向燈控制(2)或運算按位或運算符:|格式:x|y;規(guī)則:對應位均為0時才為0,否則為1。例如:i=i|0x0f;//若i=0x38,執(zhí)行本語句后i=0x3f。主要用途:將1個數(shù)的某(些)位置1,其余各位不變。項目二
任務(wù)2-2汽車轉(zhuǎn)向燈控制(3)異或運算按位異或運算符:^格式:x^y;規(guī)則:對應位相同時為0,不同時為1。例如:i=i^0x0f;//若i=0x38,執(zhí)行本語句后i=0x37。主要用途:使1個數(shù)的某(些)位翻轉(zhuǎn)(即原來為1的位變?yōu)?,為0的變?yōu)?),其余各位不變。項目二
任務(wù)2-2汽車轉(zhuǎn)向燈控制(4)按位取反運算按位取反運算符:~格式:~x;規(guī)則:各位翻轉(zhuǎn),即原來為1的位變成0,原來為0的位變成1。例如:i=~i;//若i=0x38,執(zhí)行本語句后i=0xC7。主要用途:間接地構(gòu)造一個數(shù),以增強程序的可移植性。項目二
任務(wù)2-2汽車轉(zhuǎn)向燈控制7.移位運算(1)左移運算符“<<”功能:把“<<”左邊的操作數(shù)的各二進制位全部左移若干位,移動的位數(shù)由“<<”右邊的常數(shù)指定,操作數(shù)的高位丟棄,低位補0。例如:a<<4;本語句可把a的各二進制位向左移動4位。如a=00000011B,左移4位后為00110000B。項目二
任務(wù)2-2汽車轉(zhuǎn)向燈控制(2)右移運算符“>>”功能:把“>>”左邊的操作數(shù)的各二進制位全部右移若干位,移動的位數(shù)由“>>”右邊的常數(shù)指定。進行右移運算時,如果操作數(shù)是無符號數(shù),則總是在其左端補“0”。例如:>>4;//本語句可把a的各二進制位向右移動4位。如a=01100011B,右移4位后為00000110B。項目二
任務(wù)2-2汽車轉(zhuǎn)向燈控制8.空指令格式:_nop_();空指令包括在庫函數(shù)intrins.h中,表示空循環(huán)一個機器指令的時間,一個_nop_();函數(shù)延時一個機器周期的時間。具體要通過指令周期和晶振來看:如使用805112M晶振時一個機器指令的時間約1μs。注意:要運行空指令,在程序開頭時應當包含頭文件intrins.h,具體為:#include<intrins.h>。項目二
任務(wù)2-2汽車轉(zhuǎn)向燈控制9.延時程序延時意義為了便于觀察程序的執(zhí)行情況與單片機的工作狀態(tài),需要加入延時,例如一個指示燈的亮滅,如果不加入延時是看不出來的,又例如鍵盤去抖動,一般鍵盤上的按鍵在按下時會有20ms左右的抖動,為了更好地防止抖動的干擾,也需要延時一段時間再判斷按鍵是否真被按下。感謝您的觀看汽車單片機技術(shù)——項目二項目二
任務(wù)2-3汽車點陣顯示控制一、目的與要求通過單片機控制,應用74HC595串行轉(zhuǎn)并行芯片,對單片機I/O口進行擴展,用來驅(qū)動8×8雙色LED點陣顯示器顯示相應的圖形。以此了解單片機I/O擴展方法、8×8雙色LED點陣顯示器控制方法等。設(shè)計要求:在雙色LED點陣顯示器上顯示紅色箭頭2s后再顯示綠色箭頭2s,以此循環(huán)顯示。項目二
任務(wù)2-3汽車點陣顯示控制1.電路設(shè)計項目二
任務(wù)2-3汽車點陣顯示控制2.源程序設(shè)計項目二
任務(wù)2-3汽車點陣顯示控制項目二
任務(wù)2-3汽車點陣顯示控制二.相關(guān)知識1.74HC595
74HC595的引腳圖項目二
任務(wù)2-3汽車點陣顯示控制2.LED點陣顯示器8×8單色LED點陣顯示器工作原理8×8單色LED點陣顯示器共需要64個LED,且每個LED放置在行線和列線的交叉點上,LED的陽極接行線,陰極接列線,當某一行置高電平、某一列置低電平時,交叉點的LED點亮,其他LED不亮項目二
任務(wù)2-3汽車點陣顯示控制3.數(shù)組特點1.構(gòu)造類型數(shù)據(jù)由基本類型數(shù)據(jù)按照一定規(guī)則組成。2.數(shù)組是有序數(shù)據(jù)的集合,數(shù)組中的每一個元素都屬于同一個數(shù)據(jù)類型,用一個統(tǒng)一的數(shù)組名和下角標來唯一地確定數(shù)組中的元素。3.應用場合:需要處理的數(shù)據(jù)為數(shù)量已知的若干相同類型的數(shù)據(jù)時。項目二
任務(wù)2-3汽車點陣顯示控制4.程序設(shè)計流程圖感謝您的觀看汽車單片機技術(shù)——項目三項目三
任務(wù)3-1汽車玻璃升降控制一、目的與要求通過單片機控制,在相應的按鈕按下時,電動機能正轉(zhuǎn)或反轉(zhuǎn),相應的LED燈可指示電動機轉(zhuǎn)動方向,以此來模擬汽車玻璃的上升和下降。設(shè)計要求:S1按下時,電動機正轉(zhuǎn)、L2點亮;S1松開時,電動機停轉(zhuǎn)、L2熄滅;S2按下時,電動機反轉(zhuǎn)、L3點亮;S2松開時,電動機停轉(zhuǎn)、L3熄滅。項目三任務(wù)3-1汽車玻璃升降控制1.電路設(shè)計項目三任務(wù)3-1汽車玻璃升降控制2.源程序設(shè)計項目三任務(wù)3-1汽車玻璃升降控制二.相關(guān)知識1.RZ7886(1)電路簡述RZ7886是一款直流電動機雙向驅(qū)動電路,它適用于玩具電動機驅(qū)動、自動閥門電動機驅(qū)動、電磁門鎖驅(qū)動等。它有兩個邏輯輸入端子用來控制電動機前進、后退及制動。RZ7886具有良好的抗干擾性、微小的待機電流和較低的輸出內(nèi)阻。同時,它還具有內(nèi)置二極管,能釋放電感性負載的反向沖擊電流。項目三任務(wù)3-1汽車玻璃升降控制(2)特點1)微小的待機電流,小于2μA。2)工作電壓范圍寬,為3~15V。3)有緊急停止功能。4)有過熱保護功能。5)有過電流、欠電流及短路保護功能。6)封裝外形為DIP8。項目三任務(wù)3-1汽車玻璃升降控制2.程序設(shè)計思路根據(jù)上述分析及電路連接,單片機P2.4口輸出高電平、P2.5口輸出低電平時電動機正轉(zhuǎn);單片機P2.4口輸出低電平、P2.5口輸出高電平時電動機反轉(zhuǎn);單片機P2.4口輸出低電平、P2.5口輸出低電平時電動機停轉(zhuǎn);程序設(shè)計流程如圖3-4所示。項目三任務(wù)3-1汽車玻璃升降控制程序設(shè)計流程圖感謝您的觀看汽車單片機技術(shù)——項目三項目三
任務(wù)3-2汽車刮水器控制一、目的與要求通過單片機控制,在相應的按鈕按下時,電動機能實現(xiàn)不同的速度轉(zhuǎn)動,由相應的LED燈指示電動機的轉(zhuǎn)速檔位高低,以此來模擬汽車刮水器電動機的工作情況。設(shè)計要求:S1按下時,電動機在高速檔工作、L2點亮;S1松開時,電動機停轉(zhuǎn)、L2熄滅;S2按下時,電動機在中速檔工作、L3點亮;S2松開時,電動機停轉(zhuǎn)、L3熄滅;S3按下時,電動機在中低速檔工作、L4點亮;S3松開時,電動機停轉(zhuǎn)、L4熄滅;S4按下時,電動機在低速檔工作、L7點亮;S4松開時,電動機停轉(zhuǎn)、L7熄滅。。項目三任務(wù)3-2汽車刮水器控制1.電路設(shè)計項目三任務(wù)3-2汽車刮水器控制2.源程序設(shè)計項目三任務(wù)3-2汽車刮水器控制二.相關(guān)知識1.PWM的概念PWM是PulseWidthModulation的縮寫,即脈沖寬度調(diào)制,它利用微處理器的數(shù)字輸出來控制模擬電路,其實就是使用數(shù)字信號達到一個模擬信號的效果。PWM用改變脈沖寬度的方式來實現(xiàn)不同的效果。項目三任務(wù)3-2汽車刮水器控制①組脈沖的占空比為50%,此時高低電平脈沖時長各占一半。②組脈沖的占空比為40%,此時同一周期內(nèi)高電平時長少于低電平時長。③組脈沖的占空比為80%,此時同一周期內(nèi)高電平時長大于低電平時長。項目三任務(wù)3-2汽車刮水器控制2.PWM的應用例如點亮一個LED小燈,設(shè)計電路讓LED=0時小燈長亮,當LED=1時小燈滅。當小燈亮和滅間隔運行的時候,小燈閃爍。如果把這個間隔不斷減小,減小到肉眼分辨不出來,也就是100Hz以上的頻率,這個時候小燈表現(xiàn)出來的現(xiàn)象是看起來長亮但沒有在LED=0時的亮度大。若不斷改變時間參數(shù),讓LED=0的時間大于或者小于LED=1的時間,會發(fā)現(xiàn)小燈亮度相應的都不一樣,這就是模擬電路的感覺了。項目三任務(wù)3-2汽車刮水器控制3.PWM的實現(xiàn)PWM可以利用兩種程序設(shè)計方案實現(xiàn):一是利用延時程序進行輸出,此方案下單片機大部分時間在處理延時程序而不能進行其他工作,僅用于單路PWM輸出并且內(nèi)容簡單的程序控制;項目三任務(wù)3-2汽車刮水器控制二是利用定時器/計數(shù)器進行控制,利用單片機定時器/計數(shù)器T0或T1產(chǎn)生1個0.1ms的中斷定時,然后在定時器程序中設(shè)計一個0到100的計數(shù)器,相當于10ms的周期計數(shù),在0到100的計數(shù)器中設(shè)置一個中間變量,計數(shù)大于中間變量時PWM輸出為高電平,計數(shù)器大于100時計數(shù)器清零同時PWM輸出為低電平,以此循環(huán)就可以得到一個固定占空比的輸出,若改變中間變量的值,即可改變輸出波形的占空比,此時也就得到了一個周期為10ms,占空比可調(diào)的輸出波形。項目三任務(wù)3-2汽車刮水器控制4.定時器/計數(shù)器STC15W4K32S4系列單片機內(nèi)部設(shè)置了5個16位定時器/計數(shù)器:16位定時器/計數(shù)器T0、T1、T2、T3以及T4,它們都具有計數(shù)方式和定時方式兩種工作方式。對定時器/計數(shù)器T0和T1,可用它們在特殊功能寄存器TMOD中相對應的控制位C/T來選擇T0或T1為定時器還是計數(shù)器。項目三任務(wù)3-2汽車刮水器控制5.定時器/計數(shù)器應用項目三任務(wù)3-2汽車刮水器控制6.程序設(shè)計流程圖感謝您的觀看汽車單片機技術(shù)——項目三項目三
任務(wù)3-3汽車蜂鳴器控制一、目的與要求通過單片機控制,在相應的按鈕按下時,蜂鳴器響和停的時間對應不同的間隔,以此來模擬汽車的各種警報提示。設(shè)計要求:S1按下時,蜂鳴器長響;S2按下時,蜂鳴器一響一停,響停間隔時間相同;S3按下時,蜂鳴器一響一停,響的時間大于停的時間;S4按下時,蜂鳴器一響一停,響的時間小于停的時間。項目三任務(wù)3-3汽車蜂鳴器控制1.電路設(shè)計項目三任務(wù)3-3汽車蜂鳴器控制2.源程序設(shè)計項目三任務(wù)3-3汽車蜂鳴器控制二.相關(guān)知識1.程序設(shè)計流程圖項目三任務(wù)3-3汽車蜂鳴器控制2.關(guān)鍵指令分析感謝您的觀看汽車單片機技術(shù)——項目三項目三
任務(wù)3-4汽車舵機控制一、目的與要求通過單片機控制,在相應的按鈕按下時,舵機轉(zhuǎn)到相應的角度,以此來模擬汽車的各種轉(zhuǎn)角控制。設(shè)計要求:S1按下時,舵機轉(zhuǎn)到0°位置;S2按下時,舵機轉(zhuǎn)到90°位置;S3按下時,舵機轉(zhuǎn)到180°位置;S4按下時,舵機轉(zhuǎn)角從0~180°調(diào)節(jié)。項目三任務(wù)3-4汽車舵機控制1.電路設(shè)計項目三任務(wù)3-4汽車舵機控制2.源程序設(shè)計項目三任務(wù)3-4汽車舵機控制項目三任務(wù)3-4汽車舵機控制二.相關(guān)知識1.程序設(shè)計流程圖項目三任務(wù)3-4汽車舵機控制2.關(guān)鍵指令分析(1)TO初始化程序項目三任務(wù)3-4汽車舵機控制(2)TO中斷程序項目三任務(wù)3-4汽車舵機控制(3)主程序?qū)O初始化程序的調(diào)用(4)按鈕及PWM占空比調(diào)節(jié)項目三任務(wù)3-4汽車舵機控制感謝您的觀看汽車單片機技術(shù)——項目四項目四任務(wù)4-1汽車儀表顯示控制一、目的與要求通過單片機控制,在4位LED數(shù)碼管上顯示數(shù)字,以此來模擬汽車上的各種儀表顯示系統(tǒng)。設(shè)計要求:在4位LED數(shù)碼管上顯示“0123”。項目四任務(wù)4-1汽車儀表顯示控制1.電路設(shè)計項目四任務(wù)4-1汽車儀表顯示控制2.源程序設(shè)計項目四任務(wù)4-1汽車儀表顯示控制二.相關(guān)知識1.程序流程圖項目四任務(wù)4-1汽車儀表顯示控制4位LED數(shù)碼管項目四任務(wù)4-1汽車儀表顯示控制2.關(guān)鍵指令分析(1)74HC595輸出子程序項目四任務(wù)4-1汽車儀表顯示控制(2)4位LED數(shù)碼管顯示子程序感謝您的觀看汽車單片機技術(shù)——項目四項目四
任務(wù)4-2汽車燃油表控制一、目的與要求通過單片機控制,轉(zhuǎn)動連接在單片機引腳上的電位器,實現(xiàn)模擬電壓信號的讀取,在LED數(shù)碼管上顯示出模擬信號轉(zhuǎn)換成的數(shù)字信號,以此來模擬汽車燃油表顯示。設(shè)計要求:轉(zhuǎn)動P1.5口上的電位器,數(shù)碼管顯示A/D轉(zhuǎn)換數(shù)據(jù)。項目四任務(wù)4-2汽車燃油表控制1.電路設(shè)計項目四任務(wù)4-2汽車燃油表控制2.源程序設(shè)計項目四任務(wù)4-2汽車燃油表控制項目四任務(wù)4-2汽車燃油表控制二.相關(guān)知識1.A/D轉(zhuǎn)換器的結(jié)構(gòu)項目四任務(wù)4-2汽車燃油表控制2.程序設(shè)計思路項目四任務(wù)4-2汽車燃油表控制3.關(guān)鍵指令分析(1)顯示子程序項目四任務(wù)4-2汽車燃油表控制(2)主程序中的關(guān)鍵指令項目四任務(wù)4-2汽車燃油表控制(3)讀相應通道的A/D轉(zhuǎn)換數(shù)據(jù)值子程序項目四任務(wù)4-2汽車燃油表控制(4)取內(nèi)部10位A/D轉(zhuǎn)換數(shù)據(jù)子程序項目四任務(wù)4-2汽車燃油表控制(5)內(nèi)部A/D轉(zhuǎn)換初始化程序感謝您的觀看汽車單片機技術(shù)——項目四項目四
任務(wù)4-3汽車里程表控制一、目的與要求通過單片機控制,檢測相應的S1按下的次數(shù),并顯示出來,要求在單片機斷電后計數(shù)值不會丟失,以此來模擬汽車里程表控制。設(shè)計要求:S1按下時,計數(shù)器不操作,S1松開時,計數(shù)器加1操作,單片機在任意時刻斷電后再次上電時計數(shù)值保持原來的數(shù)據(jù),要求將計數(shù)器的值寫入STC15單片機內(nèi)部的EEPROM,通過LED數(shù)碼管顯示計數(shù)器值。項目四任務(wù)4-3汽車里程表控制1.電路設(shè)計項目四任務(wù)4-3汽車里程表控制2.源程序設(shè)計項目四任務(wù)4-3汽車里程表控制項目四任務(wù)4-3汽車里程表控制項目四任務(wù)4-3汽車里程表控制二.相關(guān)知識1.程序設(shè)計流程圖項目四任務(wù)4-3汽車里程表控制2.汽車里程表控制程序關(guān)鍵指令分析感謝您的觀看汽車單片機技術(shù)——項目四項目四
任務(wù)4-4汽車時鐘控制一、目的與要求通過單片機控制,LED數(shù)碼管顯示秒鐘和分鐘,以此來模擬汽車時鐘系統(tǒng)。設(shè)計要求:單片機復位后,秒鐘和分鐘清零,然后開始以秒計時,當達到60s時,分鐘計時加1,秒鐘清零,當分鐘計時達到60min時,分鐘和秒鐘均清零。項目四任務(wù)4-4汽車時鐘控制1.電路設(shè)計項目四任務(wù)4-4汽車時鐘控制2.源程序設(shè)計項目四任務(wù)4-4汽車時鐘控制項目四任務(wù)4-4汽車時鐘控制二.相關(guān)知識1.程序設(shè)計思路項目四任務(wù)4-4汽車時鐘控制2.關(guān)鍵指令分析(1)分秒時間控制指令(2)分秒計時器取十位和個位指令感謝您的觀看汽車單片機技術(shù)——項目五項目五
任務(wù)5-1汽車自動循跡控制一、目的與要求通過單片機控制,檢測Y2口上接的自動循跡傳感器反饋回的黑白線信息,以點亮相應的LED燈,由此來模擬汽車自動循跡控制。設(shè)計要求:當Y2口上的自動循跡傳感器檢測到黑線時,相對應的LED燈點亮,否則LED燈不亮;當Y2口上的碰撞傳感器檢測到信號時,所有LED燈閃動。項目五任務(wù)5-1汽車自動循跡控制1.電路設(shè)計項目五任務(wù)5-1汽車自動循跡控制2.源程序設(shè)計項目五任務(wù)5-1汽車自動循跡控制二.相關(guān)知識
程序設(shè)計思路感謝您的觀看汽車單片機技術(shù)——項目五項目五
任務(wù)5-2汽車倒車雷達控制一、目的與要求通過單片機控制,在LCD1602液晶顯示器上顯示超聲波測距模塊測量的距離值,以此來模擬汽車倒車雷達控制。設(shè)計要求:在LCD1602液晶顯示器上顯示單片機檢測到的距離值。項目五任務(wù)5-2汽車倒車雷達控制1.電路設(shè)計項目五任務(wù)5-2汽車倒車雷達控制2.源程序設(shè)計項目五任務(wù)5-2汽車倒車雷達控制項目五任務(wù)5-2汽車倒車雷達控制二.相關(guān)知識1.程序設(shè)計思路項目五任務(wù)5-2汽車倒車雷達控制2.關(guān)鍵指令分析
(1)超聲波測距程序項目五任務(wù)5-2汽車倒車雷達控制(2)LCD1602程序感謝您的觀看汽車單片機技術(shù)——項目五項目五
任務(wù)5-3汽車串行口通信控制一、目的與要求通過單片機控制,實現(xiàn)上位機與單片機之間的串行口通信,以此來模擬汽車串行口通信控制。設(shè)計要求:上位機通過串行口發(fā)送“L2”,控制LED燈L2點亮;發(fā)送“L3”,控制LED燈L3點亮;發(fā)送“L4”,控制LED燈L4點亮;發(fā)送“L7”,控制LED燈L7點亮;發(fā)送“L0”,控制所有LED燈熄滅。按下S1,單片機向上位機發(fā)送“T1”;按下S2,單片機向上位機發(fā)送“T2”;按下S3,單片機向上位機發(fā)送“T3”;按下S4,單片機向上位機發(fā)送“T4”。要求LCD1602上顯示單片機通過串行口接收與發(fā)送的數(shù)據(jù)。項目五任務(wù)5-3汽車串行口通信控制1.電路設(shè)計項目五任務(wù)5-3汽車串行口通信控制2.源程序設(shè)計項
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度診所與保險代理公司健康管理合同
- 2025年度住宅小區(qū)物業(yè)費及增值服務(wù)合同
- 2025年度足療店會員服務(wù)系統(tǒng)開發(fā)承包合同
- 跨行業(yè)工業(yè)互聯(lián)網(wǎng)平臺的整合實踐
- 2025年度門面房使用權(quán)轉(zhuǎn)讓及租賃合同續(xù)簽合同
- 2025年度銀行按揭購房貸款提前還款合同
- 科技創(chuàng)新與農(nóng)業(yè)商業(yè)模式的革新探索
- 2025年度旅游行業(yè)管理人員招聘與目的地營銷合同
- 高科技在辦公環(huán)境更新中的應用研究
- 2024年T305型氧化鋅脫硫劑項目資金籌措計劃書代可行性研究報告
- toc測定儀的原理及使用(ppt頁)
- 對違反政治紀律行為的處分心得體會
- 領(lǐng)導干部的情緒管理教學課件
- 初中英語-Unit2 My dream job(writing)教學課件設(shè)計
- 供貨方案及時間計劃安排
- 唐山動物園景觀規(guī)劃設(shè)計方案
- 中國版梅尼埃病診斷指南解讀
- 創(chuàng)業(yè)投資管理知到章節(jié)答案智慧樹2023年武漢科技大學
- 暨南大學《經(jīng)濟學》考博歷年真題詳解(宏觀經(jīng)濟學部分)
- GB/T 8014.1-2005鋁及鋁合金陽極氧化氧化膜厚度的測量方法第1部分:測量原則
- eNSP簡介及操作課件
評論
0/150
提交評論