版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
單片機(jī)原理與應(yīng)用操作實(shí)例KeilC51簡(jiǎn)介KeilC51軟件是德國(guó)Keil公司開(kāi)發(fā)的51系列單片機(jī)編程軟件,采用目前流行的集成化開(kāi)發(fā)環(huán)境,集編輯、編譯和仿真于一體。在該軟件中,用戶可以編寫(xiě)匯編語(yǔ)言或C語(yǔ)言源程序,并可利用該軟件將源程序編譯成單片機(jī)能夠運(yùn)行的十六進(jìn)制文件。下圖為KeilC51的工作界面:菜單工程窗口主窗口輸出窗口工具欄Keil工程的建立在Keil中對(duì)文件的管理是通過(guò)項(xiàng)目方式,即將所需要的C語(yǔ)言源程序、匯編程序和頭文件都放在一個(gè)工程項(xiàng)目里統(tǒng)一管理。1.首先在某個(gè)地方建立一個(gè)空文件夾,如“Mytest”用來(lái)存放Keil創(chuàng)建的各種工程,在該目錄下再建立一個(gè)文件夾“test1”,此為test1工程所需的文件夾,系統(tǒng)對(duì)test1工程創(chuàng)建的文件都存放在test1目錄下,如果沒(méi)有test1文件夾,多個(gè)工程的文件都放在一起,比較混亂。所以要養(yǎng)成習(xí)慣,每個(gè)工程單獨(dú)用一個(gè)文件夾存放。2.運(yùn)行KeiluVision4(雙擊圖標(biāo)即可)3.點(diǎn)擊“project”菜單,選擇下拉菜單中的“newuvisionproject”此時(shí),會(huì)彈出一個(gè)對(duì)話框,首先要選擇保存的位置,如剛才建立的test1文件夾。然后輸入文件名。此文件名為新建工程的名字,如test1,不需加后綴,默認(rèn)為uvproj,然后點(diǎn)擊保存。4.此時(shí)會(huì)出現(xiàn)一個(gè)新的對(duì)話框“selectdevicetarget”,這個(gè)對(duì)話框是讓你選擇使用單片機(jī)的型號(hào),通常都選擇Atmel公司的AT89C51,由于51內(nèi)核單片機(jī)具有通用性,可任選。右邊會(huì)列出該型號(hào)單片機(jī)的相關(guān)信息,點(diǎn)擊OK即可。然后系統(tǒng)提示是否加入“Startup.A51”,選擇“否”,進(jìn)入主界面。5.工程創(chuàng)建完畢后,要建立一個(gè)源文件文本。通過(guò)File菜單下的New即可,也可使用工具欄上的新建按鈕。此時(shí)會(huì)創(chuàng)建一個(gè)新文本,先不要著急輸入程序。點(diǎn)擊保存按鈕,給該文本文件起一個(gè)文件名,如test1.c,如果用C編寫(xiě),擴(kuò)展名.c,如果用匯編寫(xiě),擴(kuò)展名.asm。保存在當(dāng)前目錄即可(一定要加擴(kuò)展名)6.此時(shí),仍然不要急于輸入程序。在工程窗口中右鍵點(diǎn)擊“sourcegroup1”,選擇“addfiles
togroup....”,在打開(kāi)的對(duì)話框中,選擇剛剛創(chuàng)建的test1.c文件,然后點(diǎn)擊add按鈕,再點(diǎn)擊close按鈕。此時(shí)把剛剛創(chuàng)建的C文件,添加到項(xiàng)目組1中了。7.然后,即可在test1.c中輸入程序,輸入程序后系統(tǒng)會(huì)自動(dòng)識(shí)別c語(yǔ)言的命令,并以不同的顏色來(lái)顯示??梢暂斎胍韵吕蹋?include<reg51.h>//包含單片機(jī)寄存器的頭文件voidmain()//主函數(shù){while(1)//無(wú)限循環(huán){P1=0xff;//給P1口復(fù)制11111111P0=P1;P2=P1;P3=P1;//此三條指令,把P1口的狀態(tài)分別送到P0,P2,P3口}}注意保存!8.編譯連接。點(diǎn)擊工具欄上的“rebuildalltarget...”按鈕即可??稍谙路降妮敵龃翱谥胁榭摧敵鲂畔?。若編譯不通過(guò),可通過(guò)該信息了解問(wèn)題所在,再進(jìn)行修改,直至通過(guò)。相關(guān)設(shè)置右鍵點(diǎn)擊項(xiàng)目窗口的target1,選擇“optionsfortarget........”,打開(kāi)選項(xiàng)設(shè)置對(duì)話框。在target選項(xiàng)下,可選擇使用晶振的頻率??筛鶕?jù)具體情況設(shè)置,如選擇11.0592MHz,也可為方便計(jì)算指令時(shí)間,選擇12MHz。在output選項(xiàng)下,選中復(fù)選框“createhexfile”,該選項(xiàng)允許在編譯時(shí),同時(shí)輸出單片機(jī)所需要的HEX文件。只需要將該文件下載到單片機(jī)上,單片機(jī)即可程序執(zhí)行......調(diào)試功能.....Debug菜單或快捷按鈕,啟動(dòng)調(diào)試功能................至此,掌握了用Keil創(chuàng)建工程的方法仿真軟件Proteus簡(jiǎn)介Proteus軟件是英國(guó)LabcenterElectronics公司研發(fā)的模擬電路、數(shù)字電路、模/數(shù)混合電路的設(shè)計(jì)與仿真平臺(tái)。它真正實(shí)現(xiàn)了在計(jì)算機(jī)上完成原理圖與電路設(shè)計(jì)、電路分析與仿真、單片機(jī)系統(tǒng)測(cè)試與功能驗(yàn)證,并能夠一鍵切換到PCB設(shè)計(jì),真正實(shí)現(xiàn)了從概念到產(chǎn)品的完整設(shè)計(jì)。使用Proteus軟件進(jìn)行單片機(jī)系統(tǒng)仿真設(shè)計(jì),有利于培養(yǎng)學(xué)生的電路設(shè)計(jì)能力與仿真軟件的操作能力,在不需要硬件投入的條件下,可以更快捷有效的掌握單片機(jī)技術(shù)。應(yīng)用非常廣泛.........Proteus主要由ISIS和ARS兩部分組成,ISIS的主要功能是原理圖設(shè)計(jì)及與電路原理圖的交互仿真,而ARS則主要用于印制電路板的設(shè)計(jì)。Proteus使用1.在開(kāi)始菜單---程序---proteus菜單項(xiàng),選ISIS項(xiàng),即進(jìn)入proteusISIS的工作界面(ARES,制作PCB用)。如下圖所示:編輯區(qū)菜單欄工具欄預(yù)覽窗口模型選擇工具欄仿真按鈕對(duì)象選擇器窗口對(duì)象選擇按鈕2.點(diǎn)擊對(duì)象選擇器上方的P,打開(kāi)添加器件對(duì)話框,可在該對(duì)話框中選取需要的元器件。在上方Keywords處,輸入需要添加元器件的名稱(chēng)或關(guān)鍵字,在右側(cè)Results窗口中列出相關(guān)的器件,進(jìn)行選取即可。也可在Category器件種類(lèi)目錄下面選擇器件。如:Category--MicroprocessorICs--80C51我們要?jiǎng)?chuàng)建如圖所示電路,需要添加元件:3WATT470R電阻;AT89C5151單片機(jī)BUTTON按鍵;LED-YELLOW黃色發(fā)光二極管把以上器件按上圖所示排列,連線-------另外還需要添加電源終端:在最左邊的工具欄中選擇TerminalsMode,然后選擇Power(電源)和GND(地),再添加到電路圖中,完成電路圖。3.加載單片機(jī)運(yùn)行的HEX文件。雙擊編輯區(qū)單片機(jī)芯片,在打開(kāi)對(duì)話框的programfile中選擇要加載的HEX文件。比如,我們上面通過(guò)Keil創(chuàng)建的test1工程的hex文件。4.加載相應(yīng)hex文件后,即可點(diǎn)擊仿真按鈕中的運(yùn)行鍵,即可實(shí)現(xiàn)單片機(jī)的仿真演示。說(shuō)明:在制作上面電路圖時(shí),并沒(méi)有加時(shí)鐘電路和復(fù)位電路,也能夠運(yùn)行,是因?yàn)樵赑roteus中繪制仿真原理圖時(shí),最小系統(tǒng)所需的晶振電路、復(fù)位電路和EA*引腳與電源的連接都可省略,并不影響仿真效果。如需添加,只需在對(duì)象選擇窗口中添加相應(yīng)的器件即可。晶振crystal,電容ceramic33p,極性電容10u35VP口操作實(shí)例例1:點(diǎn)亮一個(gè)發(fā)光二極管由原理圖可知,LED陽(yáng)極與Vcc相連,所以要想點(diǎn)亮該發(fā)光二極管,只需要讓與其陰極相連的P1.0管腳輸出低電平即可。程序代碼:#include<reg51.h>//包含51單片機(jī)寄存器定義的頭文件voidmain(void){ while(1) { P1=0xfe;//通過(guò)字節(jié)操作的方式對(duì)P1口賦值,
//11111110,即P1.0口引腳輸出低電平
//點(diǎn)亮對(duì)應(yīng)的LED }}例2:用單片機(jī)控制一個(gè)燈閃爍(電路同上)由圖可知,P1.0輸出低電平時(shí),二極管點(diǎn)亮,P1.0輸出高電平時(shí),就會(huì)熄滅。如果P1.0輸出電平不斷在高、低電平之間轉(zhuǎn)換,則二極管就會(huì)閃爍??捎醚h(huán)實(shí)現(xiàn)。//用單片機(jī)控制一個(gè)燈閃爍//子函數(shù)delay()voiddelay(void)//延時(shí)函數(shù),延時(shí)一段時(shí)間{ unsignedinti; //定義無(wú)符號(hào)整型變量i,最多65535 for(i=0;i<20000;i++)//20000次空循環(huán)
;//什么也不做,等待一個(gè)機(jī)器周期}voidmain(void)//主函數(shù){ while(1) { P1=0xfe;//p1=11111110,P1.0輸出低電平,二極管點(diǎn)亮
delay();//延時(shí)
P1=0xff;//全部高電平,二極管滅
delay();//延時(shí)一段時(shí)間
}}實(shí)驗(yàn)晶振的影響:點(diǎn)擊左側(cè)工具欄中的虛擬儀表按鈕(VirtualInstruments...),添加示波器對(duì)象(OSCILLOSCOPE),并將示波器中的一個(gè)端口與P1.0引腳相連。點(diǎn)擊仿真按鈕,運(yùn)行仿真。示波器設(shè)置:電源幅值2V/格,分辨率100ms/格可觀測(cè)到LED不斷閃爍。示波器上輸出一系列的矩形波。為了研究單片機(jī)工作頻率對(duì)閃爍速度的影響,可將單片機(jī)的頻率改為2MHz,啟動(dòng)仿真后,可觀測(cè)到LED的閃爍頻率明顯變慢。同時(shí),示波器上觀測(cè)到矩形波脈沖寬度增大。例3:前面講Keil和Proteus時(shí)講的例子程序中有:P1=0xff,即在編程時(shí)P1口各引腳被置為高電平,但當(dāng)S鍵被按下時(shí),該引腳接地,其電平也被強(qiáng)制變?yōu)榈碗娖?,此時(shí)低電平0通過(guò)P1.7引腳被輸入到單片機(jī)中,即單片機(jī)的P口的輸入功能。在按下S鍵時(shí)不僅P1.7引腳的LED點(diǎn)亮,其余的都被點(diǎn)亮,表明P1口的狀態(tài)也被送到其他的P口,即輸出功能。其他口也具有類(lèi)似的輸入/輸出功能。例4:使用P3口流水點(diǎn)亮8位LED電路如圖,8位LED分別接在P3口的8個(gè)引腳上。陽(yáng)極接Vcc,所以只要讓相應(yīng)引腳輸出低電平即可點(diǎn)亮該LED#include<reg51.h>//包含單片機(jī)寄存器的頭文件voiddelay(void)//延時(shí)函數(shù){ unsignedchari,j;//定義兩個(gè)無(wú)符號(hào)正數(shù)i,j for(i=0;i<250;i++) for(j=0;j<250;j++) ;//空操作}voidmain(void)//主函數(shù){ while(1)//無(wú)限循環(huán)
{ P3=0xfe;//P3口11111110,即P3.0位為低電平,點(diǎn)亮對(duì)應(yīng)二極管
delay();//延時(shí)
P3=0xfd;//11111101,即P3.1位為低電平,點(diǎn)亮對(duì)應(yīng)二極管
delay(); p3=0xfb;//11111011 delay(); P3=0xf7;//11110111 delay();P3=0xef;//11101111 delay(); P3=0xdf;//11011111 delay(); P3=0xbf;//10111111 delay(); P3=0x7f;//01111111 delay(); }//循環(huán)點(diǎn)亮}或者使用內(nèi)部函數(shù)_crol_(_cror_)實(shí)現(xiàn)流水燈。該函數(shù)在intrins.h中有定義,所以要先把該頭文件包含進(jìn)來(lái)。_cror_(P,n)將P循環(huán)右移n位_crol_(P,n)將P循環(huán)左移n位#inc
溫馨提示
- 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ù)網(wǎng)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年預(yù)拌混凝土訂購(gòu)條款
- 銀行助學(xué)貸款管理辦法
- 2024年高端墻紙施工質(zhì)量保證協(xié)議版B版
- 2024年餐館后廚員工合同范本
- 2024年版房地產(chǎn)項(xiàng)目合作開(kāi)發(fā)委托合同版B版
- 2024完整辦公樓轉(zhuǎn)讓居間業(yè)務(wù)合同(帶裝修)3篇
- 網(wǎng)絡(luò)與新媒體概論說(shuō)課稿
- 2025年度碼頭集裝箱清洗消毒服務(wù)合同范本2篇
- 醫(yī)院年會(huì)主持詞
- 2025年度體育設(shè)施場(chǎng)地使用權(quán)出讓合同范本3篇
- 曹操出行線上推廣方案
- 酒店財(cái)務(wù)年度述職報(bào)告
- 高海拔地區(qū)設(shè)備低溫運(yùn)行溫控策略
- PLC與人工智能的融合和發(fā)展趨勢(shì)
- 注塑工程師年度總結(jié)報(bào)告
- 肝癌治療情況總結(jié)匯報(bào)
- 科技創(chuàng)新與科技服務(wù)業(yè)協(xié)同發(fā)展策略
- 崗位資質(zhì)管理流程培訓(xùn)方案
- 腦動(dòng)脈狹窄支架植入術(shù)護(hù)理及健康宣教
- 腹膜透析建立課件
- 花籃拉桿式懸挑腳手架工程技術(shù)交底
評(píng)論
0/150
提交評(píng)論