![實(shí)驗(yàn)一 Keil_C 集成開發(fā)環(huán)境的練習(xí)20141502_第1頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2021-12/6/e3676a94-69c4-45a8-99ff-e5793a94f115/e3676a94-69c4-45a8-99ff-e5793a94f1151.gif)
![實(shí)驗(yàn)一 Keil_C 集成開發(fā)環(huán)境的練習(xí)20141502_第2頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2021-12/6/e3676a94-69c4-45a8-99ff-e5793a94f115/e3676a94-69c4-45a8-99ff-e5793a94f1152.gif)
![實(shí)驗(yàn)一 Keil_C 集成開發(fā)環(huán)境的練習(xí)20141502_第3頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2021-12/6/e3676a94-69c4-45a8-99ff-e5793a94f115/e3676a94-69c4-45a8-99ff-e5793a94f1153.gif)
![實(shí)驗(yàn)一 Keil_C 集成開發(fā)環(huán)境的練習(xí)20141502_第4頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2021-12/6/e3676a94-69c4-45a8-99ff-e5793a94f115/e3676a94-69c4-45a8-99ff-e5793a94f1154.gif)
![實(shí)驗(yàn)一 Keil_C 集成開發(fā)環(huán)境的練習(xí)20141502_第5頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2021-12/6/e3676a94-69c4-45a8-99ff-e5793a94f115/e3676a94-69c4-45a8-99ff-e5793a94f1155.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、實(shí)驗(yàn)一 keil C集成開發(fā)環(huán)境的使用Keil C51軟件可以從相關(guān)網(wǎng)站下載并安裝。安裝好后,雙擊桌面快捷圖標(biāo)或在“開始”菜單中選擇Keil Vision3,啟動(dòng)Keil Vision3集成開發(fā)環(huán)境,啟動(dòng)后界面如圖4-3所示。圖4-3 Keil Vision3啟動(dòng)后的集成開發(fā)環(huán)境界面(一)創(chuàng)建項(xiàng)目Keil Vision3中有一個(gè)項(xiàng)目管理器,用于對(duì)項(xiàng)目文件進(jìn)行管理。它包含了程序段環(huán)境變量和編程有關(guān)的全部信息,為單片機(jī)程序的管理帶來了很大的方便。創(chuàng)建一個(gè)新項(xiàng)目的操作步驟如下:(1)啟動(dòng)Vision3,創(chuàng)建一個(gè)項(xiàng)目文件,并從器件數(shù)據(jù)庫(kù)中選擇一款合適的單片機(jī)型號(hào)。(2)創(chuàng)建一個(gè)新的源程序文件,并把這個(gè)
2、源文件添加到項(xiàng)目中;(3)為該單片機(jī)芯片添加或配置啟動(dòng)程序代碼;(4)設(shè)置工具選項(xiàng),使之適合目標(biāo)硬件;(5)編譯項(xiàng)目并創(chuàng)建一個(gè)*.hex文件。下面以本章任務(wù)為例分別介紹每一步的具體操作。1新建項(xiàng)目文件單擊菜單“Project”“New Project”命令,彈出如圖4-4所示的新建項(xiàng)目對(duì)話框,指定保存路徑,建議每個(gè)項(xiàng)目使用一個(gè)獨(dú)立文件夾,例如本項(xiàng)目保存在“第4章”文件夾;然后,在“文件中名”輸入項(xiàng)目名稱,例如“4-1”,單擊“保存”按鈕即完成新項(xiàng)目的創(chuàng)建(系統(tǒng)默認(rèn)擴(kuò)展名為“.uv2”)。保存路徑輸入文件名 圖4-4 新建項(xiàng)目對(duì)話框此時(shí)彈出選擇單片機(jī)的型號(hào)對(duì)話框,如圖4-5所示,展開Atmel系
3、列單片機(jī),選擇“AT89C51”,單擊“確定”按鈕完成設(shè)備的選擇。圖4-5 選擇單片機(jī)的型號(hào)對(duì)話框單片機(jī)型號(hào)選擇結(jié)束后,在Vision3工作界面左邊的項(xiàng)目管理器中新增加了一個(gè)“Target 1”目標(biāo)1文件夾,如圖4-6所示。圖4-6 項(xiàng)目管理器中新增“Target 1”對(duì)話框2新建源程序文件單擊菜單“File”“New”命令,就可以創(chuàng)建一個(gè)源程序文件。該命令會(huì)打開一個(gè)空的編輯器窗口,默認(rèn)名為“Text 1”,輸入如下源程序:/*名稱: 流水燈控制
4、0; 模 塊 名:AT89C51,74LS373 功能描述:當(dāng)開關(guān)打開時(shí),LED
5、自上而下依次點(diǎn)亮;當(dāng)開關(guān)閉合時(shí),LED從下向上依次點(diǎn)亮。*/#include<reg51.h>#define uchar unsigned char /類型重定義#define uint unsigned intsbit Key = P00; /定義位名稱void DelayMS(uint ms); /延時(shí)函數(shù)原型聲明/ 主程序void main( ) uchar i,keyPre,shift; Key = 1; while(1) keyPre = Key; if(keyPre) shift=0x01; for(i=0;i<8;i+) P1 = shift; DelayMS(
6、200); shift<<=1; else shift=0x80; for(i=0;i<8;i+) P1 = shift; DelayMS(200); shift>>=1; /*函數(shù)名稱:DelayMS函數(shù)功能:延時(shí)函數(shù)入口參數(shù):參數(shù)ms控制循環(huán)次數(shù),從而控制延時(shí)時(shí)間長(zhǎng)短*/void DelayMS(uint ms) uchar i; while(ms-) for(i=0; i<120; i+);程序輸入完畢后,單擊“File”“Save”命令對(duì)源程序進(jìn)行保存,在保存時(shí),文件名可以是字符、字母或數(shù)字,并且一定要帶擴(kuò)展名(使用匯編語(yǔ)言編寫的源程序,擴(kuò)展名為.a
7、sm,使用單片機(jī)C語(yǔ)言編寫的源程序,擴(kuò)展名為.c)。保存好源程序后,源程序窗口中的關(guān)鍵字呈彩色高亮顯示。這里保存為“4-1.c”。特別注意:源程序擴(kuò)展名“.c”必須手動(dòng)輸入,表示為C語(yǔ)言程序,使Keil C51采用對(duì)應(yīng)的C語(yǔ)言的方式來編譯源程序。源程序文件創(chuàng)建好后,可以把這個(gè)文件添加到項(xiàng)目管理器中。單擊項(xiàng)目管理器中“Target 1”文件夾旁邊的“+”按鈕,展開后在“Source Group 1”上單擊右鍵,彈出快捷菜單,如圖4-7所示。選擇“Add Files to Group Source Group 1”命令,彈出如圖4-8所示的加載文件對(duì)話框。在該對(duì)話框中選擇文件類型為“c Sourc
8、e file”,找到剛才創(chuàng)建的“4-1.c”源程序文件,然后單擊“Add”按鈕,4-1.c即被加入到項(xiàng)目中,此時(shí)對(duì)話框不消失可以繼續(xù)加載其它文件。單擊“Close”按鈕將對(duì)話框關(guān)閉。 圖4-7 在快捷菜單中選擇加載源程序文件命令圖4-8 在對(duì)話框中選擇要添加的文件此時(shí)在Keil軟件項(xiàng)目管理器的“Source Group 1”文件夾中可以看到新加載的4-1.c文件。3為目標(biāo)1設(shè)置選項(xiàng)選中Target 1,單擊菜單“Project”“Options for Target Target 1”命令,彈出為目標(biāo)1的設(shè)置選項(xiàng)對(duì)話框,如圖4-9所示,共有11個(gè)選項(xiàng),其中“Target”、“Output”和“
9、Debug”選項(xiàng)較為常用,默認(rèn)打開“Target”選項(xiàng)。圖4-9 為目標(biāo)1設(shè)置選項(xiàng)對(duì)話框在該選項(xiàng)中可以對(duì)目標(biāo)硬件及所選器件片內(nèi)部件進(jìn)行參數(shù)設(shè)置:包括指定CPU時(shí)鐘頻率;是否使用片上自帶的ROM存儲(chǔ)器;指定C51編譯器的存儲(chǔ)模式(默認(rèn)為SMALL模式);指定ROM存儲(chǔ)器大小使用;指定片外程序存儲(chǔ)器和片外數(shù)據(jù)存儲(chǔ)器的地址范圍(如果沒有則不填)等。4編譯項(xiàng)目并創(chuàng)建*.hex文件單片機(jī)不能處理C語(yǔ)言程序,必須將C程序轉(zhuǎn)換成二進(jìn)制或十六進(jìn)制代碼,這個(gè)轉(zhuǎn)換過程稱為匯編或編譯。Keil C51軟件本身帶有C51編譯器,可將C程序轉(zhuǎn)換成十六進(jìn)制代碼,即*.hex文件。在完成項(xiàng)目設(shè)置后,就可對(duì)源程序進(jìn)行編譯。執(zhí)
10、行菜單“Project”“Rebuild all target files”命令,可以編譯源程序并生成目標(biāo)文件。如果程序有錯(cuò),則編譯不成功,Vision3將會(huì)在輸出窗口(“View”“Output Window”命令切換顯示或屏蔽此窗口)的編譯頁(yè)中顯示如圖4-10所示信息,雙擊某一條錯(cuò)誤信息,光標(biāo)將會(huì)停留在Vision3文本編輯窗口中出現(xiàn)語(yǔ)法錯(cuò)誤或警告的位置處,修改并保存后,重新編譯,直至正確無(wú)誤。圖4-10 錯(cuò)誤和警告信息若成功創(chuàng)建并編譯了應(yīng)用程序,就可以開始調(diào)試。當(dāng)程序調(diào)試好之后,要求創(chuàng)建一個(gè)*.hex文件,生成的*.hex文件可以下載到EPROM或仿真器中。若要?jiǎng)?chuàng)建*.hex文件,必須在
11、為目標(biāo)設(shè)置選項(xiàng),在“Output”選項(xiàng)卡中選中“Create HEX file”復(fù)選框,如圖4-11所示,單擊“確定”按鈕完成所需設(shè)置。設(shè)置完成后,執(zhí)行菜單“Project”“Rebuild all target files”命令即可。選中“生成.HEX文件” 圖4-11 編譯時(shí)生成“HEX”文件設(shè)置打開“第4章”文件夾,可以看到已經(jīng)創(chuàng)建了的4-1.HEX文件。(二)調(diào)試程序1CPU仿真使用Vision3可對(duì)源程序進(jìn)行測(cè)試,它提供了兩種工作模式,這兩種模式可以在“Options for Target Target 1”對(duì)話框的“Debug”選項(xiàng)卡中進(jìn)行選擇,如圖4-12所示。圖4-12 仿真調(diào)
12、試設(shè)置“Use simulator”:軟件仿真模式,將Vision3調(diào)試器配置成純軟件產(chǎn)品,能仿真8051系列的絕大多數(shù)功能而不需任何硬件目標(biāo)板,如串行口、外部I/O和定時(shí)器等,這些外圍部件是在選擇單片機(jī)CPU時(shí)選定的。“Use”:硬件仿真,用戶選擇相應(yīng)的硬件仿真器仿真。如果選中Use:Keil Monitor-51 Driver硬件仿真選項(xiàng),還可以單擊右邊的Settings按鈕,對(duì)硬件仿真器連接情況進(jìn)行設(shè)置,如圖4-13所示。圖4-13 仿真器連接參數(shù)設(shè)置Port:串行口號(hào),仿真器與計(jì)算機(jī)連接的串行口號(hào)。Baudrate:波特率設(shè)置,與仿真器串行通信時(shí)的波特率,仿真器上的設(shè)置必須與它一致。S
13、erial Interrupt:選中它允許單片機(jī)串行中斷。Cache Option:緩存選項(xiàng),可選可不選,選擇可加快程序的運(yùn)行速度。2啟動(dòng)調(diào)試源程序編譯好后,選擇相應(yīng)的仿真操作模式,可啟動(dòng)源程序的調(diào)試。單擊圖標(biāo)或執(zhí)行菜單“Debug”“Start/Stop Debug Session”命令,可以啟動(dòng)Vision3的調(diào)試模式,調(diào)試界面如圖4-14所示。Keil內(nèi)建了一個(gè)仿真CPU用來模擬執(zhí)行程序,該仿真CPU功能強(qiáng)大,可以在沒有硬件和仿真器的情況下進(jìn)行程序的調(diào)試。圖4-14 調(diào)試界面進(jìn)入調(diào)試狀態(tài)后,“調(diào)試”菜單項(xiàng)中原來不能用的命令現(xiàn)在已可以使用了,而且工具欄多出一個(gè)用于運(yùn)行和調(diào)試的工具條,如圖4
14、-15所示,Debug菜單上的大部分命令可以在此找到對(duì)應(yīng)的快捷按鈕,從左到右依次是復(fù)位、連續(xù)運(yùn)行、暫停運(yùn)行、單步運(yùn)行、過程單步運(yùn)行、執(zhí)行完當(dāng)前子程序、運(yùn)行到當(dāng)前行、下一狀態(tài)、打開跟蹤、觀察跟蹤、反匯編窗口、觀察窗口、代碼作用范圍分析、1串行窗口、內(nèi)存窗口、性能分析、工具按鈕等命令。圖4-15 運(yùn)行調(diào)試工具條3斷點(diǎn)的設(shè)定和刪除在Vision3中,用戶可以采用以下不同的方法來定義斷點(diǎn):(1)在文本編輯窗口或反匯編窗口中選定所在行,然后單擊工具欄的設(shè)置斷點(diǎn)按鈕圖標(biāo),或執(zhí)行菜單“Debug”“Insert/Remove Breakpoint ”命令。(2)在文本編輯窗口或反匯編窗口中選定所在行,單擊右
15、鍵,從打開的快捷菜單中選擇“Insert/Remove Breakpoint”命令。(3)利用“Debug”下拉菜單,打開“Breakpoints”對(duì)話框,在這個(gè)對(duì)話框中可以查看定義或更改斷點(diǎn)設(shè)置。4目標(biāo)程序的執(zhí)行目標(biāo)程序的執(zhí)行可以使用以下方法:(1)使用菜單“Debug”“Run”命令或命令按鈕或按下功能鍵“F5”全速執(zhí)行程序。(2)使用菜單“Debug”“Step” 命令或相應(yīng)的命令按鈕或使用功能鍵F11可以單步執(zhí)行程序,(3)使用菜單“Debug”“Step Over” 命令或相應(yīng)的命令按鈕或功能鍵F10可以以過程單步形式執(zhí)行命令,所謂過程單步,是指把C語(yǔ)言中的一個(gè)函數(shù)作為一條語(yǔ)句來全速
16、執(zhí)行。按下F11鍵,可以看到源程序窗口的左邊出現(xiàn)了一個(gè)黃色調(diào)試箭頭,指向源程序的第一行。每按一次F11,即執(zhí)行該箭頭所指程序行,然后箭頭指向下一行。如果程序有錯(cuò)誤,可以通過單步執(zhí)行來查找錯(cuò)誤,但是如果程序已正確,每次進(jìn)行程序調(diào)試都要反復(fù)執(zhí)行這些程序行,會(huì)使得調(diào)試效率很低,為此可以在調(diào)試時(shí)使用F10來替代F11。5反匯編窗口在進(jìn)行程序調(diào)試及分析時(shí),經(jīng)常會(huì)用到反匯編。反匯編窗口同時(shí)顯示目標(biāo)程序、編譯的匯編程序和二進(jìn)制文件,如圖4-16所示。利用“View”“Disassembly Window”切換顯示或屏蔽此窗口。圖4-16 反匯編窗口當(dāng)反匯編窗口作為當(dāng)前活動(dòng)窗口時(shí),若單步執(zhí)行指令,所有的程序?qū)?/p>
17、按照CPU指令及匯編指令來單步執(zhí)行,而不是C語(yǔ)言的單步執(zhí)行。6CPU寄存器窗口單擊圖標(biāo)或執(zhí)行菜單“Debug”“Start/Stop Debug Session”命令后,在“Project Workspace”項(xiàng)目窗口中可顯示CPU寄存器內(nèi)容,如圖4-17所示。用戶除了可以觀察外還可以修改,單擊選中一個(gè)單元,出現(xiàn)文本框后輸入相應(yīng)的數(shù)值按回車即可。7存儲(chǔ)器窗口在存儲(chǔ)器窗口中,可以顯示4個(gè)不同的存儲(chǔ)區(qū),每個(gè)存儲(chǔ)區(qū)能顯示不同地址存儲(chǔ)單元的內(nèi)容。利用“View”“Memory Window”切換顯示或屏蔽此窗口KeilVision3 IDE把MCS-51內(nèi)核的存儲(chǔ)器資源分成以下4個(gè)不同區(qū)域。(1)內(nèi)部
18、可直接尋址RAM區(qū)data,表示為D:xx;(2)內(nèi)部間接尋址RAM區(qū)idata,表示為I:xx;(3)外部RAM區(qū)xdata,表示為X:xxxx;(4)程序存儲(chǔ)器ROM區(qū)code,表示為C:xxxx。例如,單擊“Memory #1”切換存儲(chǔ)區(qū),在“address”欄中輸入地址值“D:0000”后按回車鍵,顯示區(qū)域直接顯示該地址開始的存儲(chǔ)單元內(nèi)容,如圖4-18所示。若要更改某地址存儲(chǔ)單元的內(nèi)容,只需要在該地址上雙擊鼠標(biāo)并輸入新內(nèi)容即可。在Memory窗口中顯示的RAM數(shù)據(jù)可以修改,用鼠標(biāo)右鍵對(duì)準(zhǔn)要修改的存儲(chǔ)器單元,右擊,在彈出的快捷菜單中選擇“Modify Memory at 0x”,在接著彈
19、出的對(duì)話框文本輸入欄內(nèi)輸入相應(yīng)數(shù)值后按回車即可。 圖4-17 寄存器窗口 圖4-18 存儲(chǔ)器窗口8觀察和修改變量窗口執(zhí)行菜單“View”“Watch & Call stack Window”命令,打開相應(yīng)的窗口,如圖4-19所示,選擇Watch 13中的任一窗口,按下F2鍵,在name欄中填入用戶變量名即可,但必須是存在的變量,或者使用鼠標(biāo)直接將變量拖入欄中。如果想修改數(shù)值,可單擊Value欄,出現(xiàn)文本框后輸入相應(yīng)的數(shù)值。圖4-19 存儲(chǔ)器窗口9串行窗口Vision3中提供了3個(gè)專門用于串行調(diào)試輸入和輸出的窗口,模擬的單片機(jī)串行口數(shù)據(jù)將在該窗口顯示??蛇x擇“UART #0”或“UART #1”或“UART #2”命令打開相應(yīng)串行窗口。10外圍設(shè)備窗口在線調(diào)試時(shí),通過菜單“Peripherals”下面的“Interrupt、I/O-Ports、Serial、Timer”命令,可以依次對(duì)單片機(jī)的外部中斷、4個(gè)并行口、串行口、定時(shí)計(jì)數(shù)器進(jìn)行設(shè)置。在本任務(wù)調(diào)試中可以看到P1口的狀態(tài)值隨變量shift的內(nèi)容而變化,如圖4-20所示,修改P0.0的值,P1口的值變化順序隨之翻轉(zhuǎn)。圖4-20 并行口調(diào)試窗口實(shí)驗(yàn)思考內(nèi)容:1、在keil C集成開發(fā)環(huán)境下,基于C8051F410開發(fā)板和仿真器調(diào)試以下程序,觀察實(shí)驗(yàn)現(xiàn)象。
溫馨提示
- 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度商場(chǎng)餐飲品牌授權(quán)許可合同
- 服裝鞋帽居間合同模板
- 眼鏡店改造維修合同
- 居家裝修設(shè)計(jì)合同模板范本
- 二零二五年度企業(yè)核心辦公室文員職責(zé)合同
- 高端半導(dǎo)體制造廠房租賃合同樣本(二零二五年度)
- 小型機(jī)動(dòng)車輛抵押合同年
- 水產(chǎn)養(yǎng)殖管理操作手冊(cè)
- 高分子材料與工程塑料作業(yè)指導(dǎo)書
- 移動(dòng)應(yīng)用開發(fā)實(shí)戰(zhàn)作業(yè)指導(dǎo)書
- 患者發(fā)生輸液反應(yīng)的應(yīng)急預(yù)案
- 銷售團(tuán)隊(duì)組建和管理課件
- 中國(guó)內(nèi)部審計(jì)準(zhǔn)則及指南
- 銀行個(gè)人業(yè)務(wù)培訓(xùn)課件
- 2024年ISTQB認(rèn)證筆試歷年真題薈萃含答案
- tpu顆粒生產(chǎn)工藝
- 《體檢中心培訓(xùn)》課件
- 《跟著音樂去旅行》課件
- 初中數(shù)學(xué)深度學(xué)習(xí)與核心素養(yǎng)探討
- 特殊教育導(dǎo)論 課件 第1-6章 特殊教育的基本概念-智力異常兒童的教育
- 辭職申請(qǐng)表-中英文模板
評(píng)論
0/150
提交評(píng)論