




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、項(xiàng)目二 認(rèn)識(shí)單片機(jī)開發(fā)系統(tǒng)一個(gè)單片機(jī)應(yīng)用系統(tǒng)從提出任務(wù)到正式投入運(yùn)行的過(guò)程,稱為單片機(jī)的開發(fā)過(guò)程。開發(fā)過(guò)程所用的設(shè)備與軟件稱為單片機(jī)開發(fā)系統(tǒng)或開發(fā)工具。本項(xiàng)目以信號(hào)燈控制系統(tǒng)為基礎(chǔ),介紹單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)必需的開發(fā)工具,采用開發(fā)工具進(jìn)行單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)的開發(fā)過(guò)程,以及單片機(jī)應(yīng)用系統(tǒng)的基本調(diào)試方法。 知識(shí)目標(biāo)1.掌握單片機(jī)開發(fā)系統(tǒng)及功能。2.掌握單片機(jī)開發(fā)系統(tǒng)的使用。 技能目標(biāo)學(xué)會(huì)單片機(jī)開發(fā)系統(tǒng)調(diào)試程序的方法。子項(xiàng)目一 用KeilC5l調(diào)試LED控制程序基本知識(shí)一、單片機(jī)開發(fā)系統(tǒng)及功能單片機(jī)開發(fā)系統(tǒng)是單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)的必需工具,包括計(jì)算機(jī)、單片機(jī)在線仿真器、工具軟件、編程器等。單片機(jī)開發(fā)系統(tǒng)
2、的功能包括在線仿真、調(diào)試、軟件輔助設(shè)計(jì)、目標(biāo)程序固化等。1、在線仿真功能在線仿真器(In Circuit Emulator,簡(jiǎn)稱ICE)是由一系列硬件構(gòu)成的設(shè)備,它能仿真用戶系統(tǒng)中的單片機(jī),并能模擬用戶系統(tǒng)的ROM、RAM和I/O端口,因此,處于在線仿真狀態(tài)時(shí),用戶系統(tǒng)的運(yùn)行環(huán)境和脫機(jī)運(yùn)行的環(huán)境完全“逼真”。2、調(diào)試功能開發(fā)系統(tǒng)對(duì)用戶系統(tǒng)軟、硬件調(diào)試功能的強(qiáng)弱,將直接關(guān)系到開發(fā)的效率。性能優(yōu)良的單片機(jī)開發(fā)系統(tǒng)應(yīng)具備下列調(diào)試功能。(1)運(yùn)行控制功能開發(fā)系統(tǒng)應(yīng)能使用戶有效地控制目標(biāo)程序的運(yùn)行,以便檢查程序運(yùn)行的結(jié)果,對(duì)存在的硬件故障和軟件錯(cuò)誤進(jìn)行定位。單步運(yùn)行:CPU從任意程序地址開始執(zhí)行一條語(yǔ)句
3、后停止運(yùn)行。斷點(diǎn)運(yùn)行:允許用戶任意設(shè)置斷點(diǎn)條件,啟動(dòng)CPU從規(guī)定地址運(yùn)行后,當(dāng)遇到斷點(diǎn)條件符合后停止運(yùn)行。全速運(yùn)行:CPU從指定地址開始連續(xù)全速運(yùn)行目標(biāo)程序。跟蹤運(yùn)行:類似單步運(yùn)行過(guò)程,但可以跟蹤函數(shù)內(nèi)部運(yùn)行狀態(tài)。(2)目標(biāo)系統(tǒng)狀態(tài)的讀出修改功能當(dāng)CPU停止執(zhí)行目標(biāo)系統(tǒng)程序后,允許用戶方便地讀出或修改目標(biāo)系統(tǒng)資源的狀態(tài),以便檢查程序運(yùn)行的結(jié)果,設(shè)置斷點(diǎn)條件及設(shè)置程序的初始參數(shù)。3、輔助設(shè)計(jì)功能軟件輔助設(shè)計(jì)功能的強(qiáng)弱也是衡量單片機(jī)開發(fā)系統(tǒng)性能高低的重要標(biāo)志。單片機(jī)應(yīng)用系統(tǒng)軟件開發(fā)效率在很大程度上取決于開發(fā)系統(tǒng)的輔助設(shè)計(jì)功能。(1)程序設(shè)計(jì)語(yǔ)言單片機(jī)程序設(shè)計(jì)語(yǔ)言包括機(jī)器語(yǔ)言、匯編語(yǔ)言和高級(jí)語(yǔ)言。機(jī)
4、器語(yǔ)言是單片機(jī)唯一能識(shí)別的語(yǔ)言,程序的設(shè)計(jì)、輸入、修改和調(diào)試都很麻煩,只能用來(lái)開發(fā)一些非常簡(jiǎn)單的單片機(jī)應(yīng)用系統(tǒng)。匯編語(yǔ)言具有使用靈活、實(shí)時(shí)性好的特點(diǎn),是單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)常用的程序設(shè)計(jì)語(yǔ)言。但是采用匯編語(yǔ)言編寫程序,要求編程員必須對(duì)單片機(jī)的指令系統(tǒng)非常熟悉,并具有一定的程序設(shè)計(jì)經(jīng)驗(yàn),才能編制出功能復(fù)雜的應(yīng)用程序,且匯編語(yǔ)言程序的可讀性和可移植性都較差。高級(jí)語(yǔ)言的通用性好,程序設(shè)計(jì)人員只要掌握開發(fā)系統(tǒng)所提供的高級(jí)語(yǔ)言使用發(fā)法,就可以直接編寫程序。MCS-51系列單片機(jī)的編譯型高級(jí)語(yǔ)言有:PL/M51C51MBASIC-51等。高級(jí)語(yǔ)言對(duì)不熟悉單片機(jī)指令系統(tǒng)的用戶比較適用,且具有較好的可移植性,是
5、目前單片機(jī)編程語(yǔ)言的主流,本書采用C51編程語(yǔ)言。(2)程序編譯幾乎所有的單片機(jī)開發(fā)系統(tǒng)都能與PC連接,允許用戶使用PC的編輯程序編寫匯編語(yǔ)言或高級(jí)語(yǔ)言,生成匯編語(yǔ)言或高級(jí)語(yǔ)言的源文件;然后利用開發(fā)系統(tǒng)提供的交叉匯編或編譯系統(tǒng),將源程序編譯成可在目標(biāo)機(jī)上直接運(yùn)行的目標(biāo)程序;再通過(guò)PC的串口或并口直接傳輸?shù)介_發(fā)機(jī)的RAM中。一些單片機(jī)的開發(fā)系統(tǒng)還提供反匯編功能,并可提供用戶宏調(diào)用的子程序庫(kù),以減少用戶軟件研制的工作量。4、程序固化功能當(dāng)系統(tǒng)調(diào)試完畢,確認(rèn)軟件無(wú)故障時(shí),應(yīng)把用戶應(yīng)用系統(tǒng)的程序固化到程序存儲(chǔ)器中脫機(jī)運(yùn)行,編程器就是完成這種任務(wù)的專用設(shè)備,它也是單片機(jī)開發(fā)系統(tǒng)的重要組成部分。二、Kei
6、l C51軟件的使用Keil C51軟件是目前在流行的開發(fā)MCS-51系列單片機(jī)的軟件。Keil C51提供了包括C編譯器、宏匯編、鏈接器、庫(kù)管理和一個(gè)功能強(qiáng)大的仿真調(diào)試器等在內(nèi)的完整開發(fā)方案,并通過(guò)一個(gè)集成開發(fā)環(huán)境(Vision)將它們組合在一起。掌握這一軟件的使用對(duì)于MCS-51系列單片機(jī)的開發(fā)人員來(lái)說(shuō)是十分必要的。Keil Vision3集成開發(fā)環(huán)境是Keil Software Inc/Keil Elektronik GmbH開發(fā)的基于80C51內(nèi)核的微處理器軟件開發(fā)平臺(tái),內(nèi)嵌多種符合當(dāng)前工業(yè)標(biāo)準(zhǔn)的開發(fā)工具,可以完成工程建立和管理、編譯、鏈接、目標(biāo)代碼的生成、軟件仿真和硬件仿真等完整的開
7、發(fā)流程,尤其是C編譯工具在產(chǎn)生代碼的準(zhǔn)確性和效率方面達(dá)到了較高水平,而且可以附加靈活的控制選項(xiàng),在開發(fā)大型項(xiàng)目時(shí)非常理想。由于Keil C51本身是純軟件,還不能直接進(jìn)行硬件仿真,必須掛接單片機(jī)仿真器的硬件才可以進(jìn)行仿真。KEILC51軟件的使用步驟如下: (1)首先啟動(dòng)KEIL C51軟件的集成開發(fā)環(huán)境。單擊“開始”按鈕,在隨即彈出的“開始”菜單里選擇“程序”中的KeilVision3選項(xiàng),或在桌面上直接雙擊Vision3圖標(biāo),以啟動(dòng)該軟件,出現(xiàn)如圖2-1所示的窗口。圖2-1 Keilc51啟動(dòng)窗口(2)建立工程文件。通常單片機(jī)應(yīng)用系統(tǒng)軟件包含多個(gè)源程序文件,Keilc51使用工程(proj
8、ect)這一概念,將這些參數(shù)設(shè)置和所需的所有文件都加在一個(gè)工程中。因此,需要建立一個(gè)工程文件,并為這個(gè)工程文件選擇CPU,確定編譯、鏈接的參數(shù),指定調(diào)試的方式。在Keilc51啟動(dòng)窗口中,單擊“project”菜單的下拉菜單的“New project”菜單,出現(xiàn)“Create New Project”對(duì)話框,如圖2-2所示。在“保存在”下拉列表中選擇工程的保存目錄,并在“文件名”文本框中輸入工程名,不需要擴(kuò)展名,單擊“保存”按鈕,出現(xiàn)如圖2-3所示的“Select Device for Target Target”對(duì)話框。圖2-2 建立工程文件圖2-3 選擇目標(biāo)CPU在圖2-3的Data ba
9、se欄中選擇所要使用的CPU型號(hào),Keilc51支持的CPU型號(hào)很多,我們選擇Atmel公司的芯片,單擊“Atmel”前面的“+”號(hào),展開該層,單擊其中的“AT89C51”,然后單擊“確定”按鈕,回到主界面。(3)建立并添加源文件。使用菜單“File”菜單的下拉菜單中的“New”或者單擊工具欄的“新建文件”按鈕,出現(xiàn)如圖2-4所示的文本編輯窗口,在該窗口中輸入新編制的源程序并保存該文件。 圖2-4 文本編輯窗口小提示1、在源文件名的后面必須加擴(kuò)展名“.C”,如“EX1.C”。源文件不一定要使用Keilc51軟件編寫,也可以使用其他文本編輯器編寫好后在復(fù)制到Keilc51中。2、源文件名最好和工
10、程名相同,但工程不需加擴(kuò)展名。將左邊“Target1”前面的“+”號(hào)展開,在“Source Group 1”上單擊鼠標(biāo)右鍵打開快捷菜單,如圖2-5所示,再單擊“Add Files to Group Source Group 1”選項(xiàng),出現(xiàn)如圖2-6所示的界面。 圖2-5 增加文件到組中圖2-6 選擇文件類型在圖2-6中,選擇 “文件類型”下拉列表框中的“C Source file(*.c)”,找到前面新建源程序文件后,單擊“Add”按鈕加到工程中。此時(shí),在左邊文件夾“Source Group 1”前面出現(xiàn)一個(gè)“+”號(hào),單擊“+”號(hào)展開后,出現(xiàn)一個(gè)名為“EX1.c”的文件,說(shuō)明新文件的添加已完成
11、。(4)配置工程屬性。鼠標(biāo)移到左邊窗口的“Target 1”上,單擊鼠標(biāo)右鍵打開快捷菜單,在單擊“Option for Target Target”選項(xiàng),彈出如圖2-7所示的“Option for Target Target 1”對(duì)話框。圖2-7 目標(biāo)屬性對(duì)話框及各對(duì)話框含義在這個(gè)對(duì)話框中設(shè)置芯片的工作頻率。首先在Target選項(xiàng)卡的Xtal(MHZ)欄中輸入12,指定此芯片的工作頻率為12MHZ。在圖2-7中單擊“Output”選項(xiàng)卡,然后切換到Output選項(xiàng)卡,彈出如圖2-8所示的界面。在“Create HEX File”選項(xiàng)前面的小圓內(nèi)打點(diǎn),確認(rèn)已選中該項(xiàng),如此才會(huì)產(chǎn)生十六進(jìn)制文件,單
12、擊“確定”按鈕關(guān)閉對(duì)話框即可完成設(shè)置,回到主界面。圖2-8 產(chǎn)生執(zhí)行文件對(duì)話框及各對(duì)話框含義小提示在圖2-7目標(biāo)屬性對(duì)話框中各選項(xiàng)的含義如下:(1)Xtal (晶振頻率):默認(rèn)值是所選目標(biāo)CPU的最高可用頻率,該值與最終產(chǎn)生的目標(biāo)代碼無(wú)關(guān),僅用于軟件模擬調(diào)試時(shí)顯示程序的執(zhí)行時(shí)間。正確設(shè)置該數(shù)值可使顯示時(shí)間與實(shí)際所用時(shí)間一致,一般將其設(shè)置成實(shí)際硬件所用晶振頻率。如果沒(méi)有必要了解程序執(zhí)行的時(shí)間,也可以不設(shè)置該項(xiàng)。(2)Memory Model (存儲(chǔ)器模式):用于設(shè)置RAM使用模式。有以下三個(gè)選擇項(xiàng)。Small (小型):所有變量都定義在單片機(jī)的內(nèi)部RAM中。Compact (緊湊):可以使用一頁(yè)
13、(256B)外部擴(kuò)展RAM。Large (大型):可以使用全部64KB外部擴(kuò)展RAM。(3) Code Rom Size (代碼存儲(chǔ)器模式):用于設(shè)置ROM空間的使用,也有以下三個(gè)選擇項(xiàng)。Small (小型):只使用低2KB程序空間。Compact (緊湊):?jiǎn)蝹€(gè)函數(shù)的代碼量不能超過(guò)2KB,整個(gè)程序可以使用64KB程序空間。Large (大型):可用全部64KB程序空間。這些選擇必須根據(jù)所用硬件來(lái)確定。(4) Operating (操作系統(tǒng)):Keil C51提供了Rtx tiny和Rtx full兩種操作系統(tǒng),通常不使用任何操作系統(tǒng),即使用該項(xiàng)的默認(rèn)值None。(5) Off-chip Co
14、de memory (片外代碼存儲(chǔ)器):用于確定系統(tǒng)擴(kuò)展ROM的地址范圍,由硬件確定,一般為默認(rèn)值。(6) Off-chip Xdata memory (片外Xdata存儲(chǔ)器):用于確定系統(tǒng)擴(kuò)展RAM的地址范圍,由硬件確定,一般為默認(rèn)值。(5)編譯、連接。單擊主界面左上方的按鈕即可進(jìn)行編譯與連接,而其過(guò)程將記錄在下方的輸出窗口中,如圖2-9、圖2-10所示。圖2-9 編譯連接過(guò)程中有錯(cuò)誤的對(duì)話框圖2-10 成功完成編譯連接的對(duì)話框圖2-10中的“0 Error(s),0 Warnning(s)?!北硎緵](méi)有錯(cuò)誤,因此就可繼續(xù)進(jìn)行調(diào)試/仿真。如果編譯連接過(guò)程中有錯(cuò)誤,出現(xiàn)圖2-9對(duì)話框,一定要查找
15、并改正錯(cuò)誤,直到成功完成編譯連接才能往下進(jìn)行。(6)調(diào)試、仿真。編譯、連接后如果沒(méi)有錯(cuò)誤,就可繼續(xù)進(jìn)行調(diào)試/仿真。單擊按鈕打開調(diào)試工具欄,屏幕出現(xiàn)確認(rèn)對(duì)話框,如圖2-11所示。單擊“確定“按鈕關(guān)閉對(duì)話框,即進(jìn)入調(diào)試狀態(tài)。圖2-11 確定對(duì)話框(7)觀察輸出結(jié)果。單擊菜單欄中的Peripherals菜單,在此菜單的下拉菜單中選擇相應(yīng)的選項(xiàng),比如在任務(wù)一中是通過(guò)P1口看結(jié)果,所以需跟蹤P1口。選擇Peripherals菜單下的I/O-Ports命令下的Port1選項(xiàng),如圖2-12所示。即可打開P2窗口,如圖2-13所示。圖2-12 Peripherals 菜單 圖2-13 I/O端口設(shè)置(8)運(yùn)行
16、程序。若要運(yùn)行程序,可單擊 按鈕,P2窗口的內(nèi)容都將隨程序的進(jìn)行而變化。若想從頭開始,則單擊按鈕停止運(yùn)行,在單擊運(yùn)行按鈕即可。若要關(guān)閉此程序,則先單擊按鈕離開調(diào)試狀態(tài),再啟動(dòng)Project菜單下的Close Project命令。最后啟動(dòng)File菜單下的Exit命令,即可關(guān)閉Keil C程序。三、STC_ISP_V3.5下載軟件的使用下面以STC_ISP_V3.5下載軟件為例說(shuō)明下載程序的方法。連接好下載線和單片機(jī)目標(biāo)板,目標(biāo)板加上+5V電源。啟動(dòng)STC_ISP_V3.5下載軟件,如圖2-14 所示。具體的實(shí)施步驟為:(1)首先根據(jù)目標(biāo)板上單片機(jī)的型號(hào)選擇單片機(jī)型號(hào)。如圖2-14所示。 點(diǎn)擊“O
17、pen Fle”按鈕,打開待下載的HEX文件;如圖所示。 點(diǎn)擊“鑒”按鈕,檢查單片機(jī)型號(hào); 點(diǎn)擊“擦除”按鈕,將單片機(jī)程序存儲(chǔ)器中原有內(nèi)容擦除; 點(diǎn)擊“寫入”按鈕,將打開的文件下載到單片機(jī)程序存儲(chǔ)器中。也可以設(shè)置好自動(dòng)選項(xiàng)后,點(diǎn)擊“自動(dòng)”按鈕完成程序的擦除和寫入。圖 選擇單片機(jī)型號(hào)圖2-14 STC_ISP_V3.5下載軟件窗口界面(2)點(diǎn)擊“Open File”按鈕,打開待下載的HEX文件; 如圖2-15所示。 點(diǎn)擊“鑒別”按鈕,檢查單片機(jī)型號(hào); 點(diǎn)擊“擦除”按鈕,將單片機(jī)程序存儲(chǔ)器中原有內(nèi)容擦除; 點(diǎn)擊“寫入”按鈕,將打開的文件下載到單片機(jī)程序存儲(chǔ)器中。圖2-15 STC_ISP_V3.5
18、下載軟件窗口界面(3)選擇端口和工作頻率。如圖2-16所示。圖2-16 STC_ISP_V3.5下載軟件窗口界面(4)下載程序。單擊“DownFile”按鈕,進(jìn)行程序的下載。在左下側(cè)的窗口中出現(xiàn)“已加密”表示程序下載完成。圖2-17 輸入/輸出端口對(duì)話框 小提示Keil C51內(nèi)建了一個(gè)仿真CPU來(lái)模擬執(zhí)行程序,該仿真CPU功能強(qiáng)大,可以在沒(méi)有硬件和仿真器的情況下進(jìn)行程序的調(diào)試。不過(guò),軟件模擬與真實(shí)的硬件執(zhí)行程序還是有區(qū)別的,其中最明顯的就是時(shí)序,具體表現(xiàn)在程序執(zhí)行的速度和用戶使用的計(jì)算機(jī)有關(guān),計(jì)算機(jī)性能越好,運(yùn)行速度越快?;炯寄苋蝿?wù)一 LED燈閃爍控制一、任務(wù)目的(1)能利用KEILC軟件
19、進(jìn)行程序的調(diào)試;(2)能利用下載軟件進(jìn)行程序的下載。二、任務(wù)要求89C51單片機(jī)P1.0口接發(fā)光二極管,通過(guò)單片機(jī)控制使該發(fā)光二極管閃爍。首先在萬(wàn)能板上焊接按鍵控制發(fā)光二極管閃爍控制的硬件電路,然后將編寫好的程序下載到該單片機(jī),實(shí)現(xiàn)發(fā)光二極管閃爍設(shè)計(jì)。三、任務(wù)實(shí)施步驟1、硬件電路設(shè)計(jì)通過(guò)單片機(jī)控制發(fā)光二極管實(shí)現(xiàn)閃爍效果的硬件電路實(shí)物圖同圖1-20。2、參考程序/程序名稱:EX2.C/程序功能:通過(guò)89C51單片機(jī)芯片控制一個(gè)發(fā)光二極管實(shí)現(xiàn)閃爍效果。/源程序如下:#include reg51.h#define uchar unsigned char#define uint unsigned in
20、tsbit P1_0=P10; /*延時(shí)函數(shù)*/void mdelay(uint delay)uint i;for(;delay0;delay-)for(i=0;i124;i+); /延時(shí)1ms/*主函數(shù)*/void main()for(;) /實(shí)現(xiàn)程序的無(wú)限循環(huán),也可以用while(1) P1_0=!P1_0; /!表示狀態(tài)取反,實(shí)現(xiàn)閃爍的功能。mdelay(1000); /延時(shí)1000ms即1s3、程序調(diào)試按照KEILC51軟件的使用步驟對(duì)EX2.C源程序進(jìn)行編譯、鏈接后,生成二進(jìn)制代碼文件EX2.hex。二進(jìn)制代碼文件EX2.hex可以直接下載到單片機(jī)的程序存儲(chǔ)器中,從而控制LED發(fā)光二
21、極管動(dòng)作。4、程序運(yùn)行測(cè)試接通硬件電路板電源,可觀察到發(fā)光二極管閃爍。5、任務(wù)小結(jié)通過(guò)制作單片機(jī)芯片控制LED發(fā)光二極管信號(hào)燈,讓學(xué)生對(duì)單片機(jī)、單片機(jī)最小系統(tǒng)和KEILC51軟件的使用步驟有了一個(gè)初步的了解和直觀的認(rèn)識(shí),并對(duì)單片機(jī)的基本工作過(guò)程加深了了解。6、拓展練習(xí)按照單片機(jī)應(yīng)用系統(tǒng)的開發(fā)過(guò)程進(jìn)行此拓展練習(xí),具體要求是:89C51單片機(jī)P1口接8只發(fā)光二極管,通過(guò)單片機(jī)控制使8只發(fā)光二極管交替亮滅實(shí)現(xiàn)閃爍效果。子項(xiàng)目二 Vision3環(huán)境簡(jiǎn)介 Keil Vision3提供了比較順暢的C語(yǔ)言或匯編語(yǔ)言的開發(fā)環(huán)境,提供了C語(yǔ)言或匯編語(yǔ)言的編輯、編譯與連接、調(diào)試與仿真等功能,當(dāng)然,還能產(chǎn)生在線仿真
22、或刻錄到芯片所需的HEX等。一、 認(rèn)識(shí)Vision3環(huán)境當(dāng)Keil Vision3安裝成功后,雙擊Keil Vision3圖標(biāo),即可進(jìn)入Keil Vision3,打開Keil Vision3環(huán)境。如圖2-17所示。圖2-17 Keil Vision3窗口在圖2-17中,為菜單欄,為工具欄,為,為,為,為狀態(tài)欄。 菜單欄KeilVision3包括11個(gè)菜單。u File菜單提供文件操作命令,如創(chuàng)建新文件(New命令)、打開文件(Open命令)、關(guān)閉文件(Close命令)、保存文件(save命令)、另存為新文件(Save As命令)、等,這些文件操作命令大多可在文件工具欄里找到相對(duì)應(yīng)的按鈕。另外可
23、利用其最后一個(gè)命令(Exit命令)關(guān)閉整個(gè)程序。u Edit菜單提供編輯命令,如剪貼功能(Copy、Cut、Pause命令)、撤銷/恢復(fù)功能(Undo、Redo命令),還有文本處理程序的縮進(jìn)/撤銷縮進(jìn)功能(Indent Selected Text 、Unindent Selected Text命令)、查找與替換功能(Find、 Replace、Find in Files 、Incremental Find命令)等。u View菜單提供窗口組件的現(xiàn)實(shí)開關(guān),例如Status Bar命令用以切換是否顯示狀態(tài)欄,F(xiàn)ile Toolbar命令用以切換是否顯示文件工具欄,Bulid Toolbar命令用以
24、切換是否顯示生成工具欄,Debug Toolbar命令用以切換是否顯示調(diào)試/仿真工具欄,Project Windo命令用以切換是否顯示項(xiàng)目窗口,Output Window命令用以切換是否顯示輸出窗口,Source Browser命令用以切換是否顯示源文件瀏覽器等。u Project菜單提供項(xiàng)目管理功能,若要打開新項(xiàng)目,可使用New Project命令;若要導(dǎo)入Vision1的項(xiàng)目,可使用ImportVision1 Project命令;若要打開項(xiàng)目,可使用Open Project命令;若要關(guān)閉項(xiàng)目,可使用Close Project命令等。u Debug菜單提供調(diào)試/仿真的操作命令,不過(guò),當(dāng)要執(zhí)行
25、調(diào)試/仿真時(shí),可直接操作調(diào)試/仿真工具欄上的按鈕。u Flash菜單提供芯片的下載與清除的功能,也就是將可執(zhí)行代碼刻錄到芯片,也可將芯片中的數(shù)據(jù)清除。u Peripherals菜單用于設(shè)置是否顯示CPU內(nèi)部各外設(shè)的顯示窗口,如輸入/輸出窗口等。u Tools菜單提供PC-Lint程序語(yǔ)法檢查工具。u SVCS菜單提供版本管理功能。u Windows菜單提供工作區(qū)內(nèi)的窗口排列功能。u Help菜單提供輔助說(shuō)明功能,其中包括多項(xiàng)通過(guò)Internet的輔助說(shuō)明服務(wù)。 文件工具欄KeilVision3將常用的功能放置在該工具欄里,包括文件操作、剪貼功能、撤銷與恢復(fù)等與一般Windows軟件類似的功能,
26、而這些功能的按鈕圖案也與其他Windows軟件類似。若不是很清除,只要指向該按鈕,稍微停頓一下,即可顯示小提示。如圖2-18所示。圖2-18 小提示 生成工具欄在keil vision3里,8x51程序的開發(fā)分為兩個(gè)階段,第一個(gè)階段是程序編輯與生成(build),所謂生成是指程序的編譯/連接及產(chǎn)生可執(zhí)行文件。第二個(gè)階段是調(diào)試/仿真,以確定程序的正確性。在第一階段時(shí),將打開該工具欄,可利用其中的按鈕進(jìn)行選項(xiàng)設(shè)置,單擊按鈕即可進(jìn)行生成,單擊按鈕則是重新生成。若該工具欄消失,可執(zhí)行view菜單下的 build toolbar命令,即可重新打開。 項(xiàng)目窗口在左邊長(zhǎng)條型的項(xiàng)目窗口下方有5個(gè)標(biāo)簽,點(diǎn)擊可以
27、切換到不同的窗口,如圖2-19所示,其中各項(xiàng)說(shuō)明如下:圖2-19 項(xiàng)目窗口的標(biāo)簽欄u 單擊File標(biāo)簽,即可切換到文件管理窗口,其中將列出項(xiàng)目里的所有文件。u 單擊Regs標(biāo)簽,即可切換到寄存器窗口,其中將列出CPU里的所有寄存器內(nèi)容,以輔助我們進(jìn)行調(diào)試工作;當(dāng)然,即使我們不切換到該窗口,進(jìn)入調(diào)試/仿真狀態(tài)時(shí),也將自動(dòng)切換到該窗口。u 單擊Books標(biāo)簽,即可切換到輔助說(shuō)明窗口,其中將列出所有說(shuō)明項(xiàng)目。u 單擊Functions標(biāo)簽,即可切換到函數(shù)窗口,其中將列出所有函數(shù)。u 單擊Templates標(biāo)簽,即可切換到模板窗口,其中將列出所有模板。 輸出窗口在vision3窗口下方為輸出窗口,其中
28、包括三個(gè)子窗口,在Build窗口里將記錄生成的過(guò)程與狀態(tài)。在Command窗口里將記錄所操作的命令。在Find in Files窗口里將記錄制定文件查找的結(jié)果。我們可單擊按鈕或運(yùn)行View菜單下的Output Window命令,以決定是否顯示輸出窗口。 狀態(tài)欄在狀態(tài)欄里包括七欄,如圖2-20所示,其中各項(xiàng)說(shuō)明如下:圖2-20 狀態(tài)欄u 調(diào)試通道(Debug Channel)欄為顯示動(dòng)作的調(diào)試工具,若使用內(nèi)如的vision仿真器,還會(huì)顯示高級(jí)圖形接口驅(qū)動(dòng)器(Advanced GDI Driver)或仿真(Simulation)。u 執(zhí)行時(shí)間欄為顯示執(zhí)行仿真的時(shí)間,在此欄單擊鼠標(biāo)右鍵,即可設(shè)置時(shí)序
29、分析的標(biāo)志。u 光標(biāo)位置欄為顯示光標(biāo)所在位置,其中L代表第幾行,C代表第幾列。下列欄位為編輯器與鍵盤狀態(tài)。u CAP表示當(dāng)前鍵盤是鎖住為大寫狀態(tài)(Caps Lock)。u NUM表示當(dāng)前鍵盤是鎖住為數(shù)字鍵狀態(tài)(Num Lock)。u SCRL表示當(dāng)前鍵盤是鎖住為滾動(dòng)狀態(tài)(Scroll Lock)。u OVR表示當(dāng)前鍵盤輸入模式為覆蓋模式,若不顯示為插入模式。u R/W或R/O表示當(dāng)前所編輯的文件的屬性,“R/W”代表該文件可讀取與寫入,“R/O”代表該文件為只讀文件。我們可運(yùn)行View菜單下的Satus Bar命令,以決定是否顯示狀態(tài)欄。 工作區(qū)在keil vision3窗口中間一大片灰色區(qū)域
30、為工作區(qū),我們所編輯的文件將以窗口的形式出現(xiàn)在此區(qū)域之中,若同時(shí)打開多個(gè)文件,則可利用Window菜單里的命令進(jìn)行窗口的排序。二、項(xiàng)目管理與選項(xiàng)大部分的設(shè)計(jì)都是采用項(xiàng)目(Project)管理,在keil vision3里也是采用項(xiàng)目管理,所有設(shè)計(jì)的開始都源自于項(xiàng)目的建立或打開既有的方案。若要新建項(xiàng)目,可運(yùn)行Project菜單下的New Project命令;若要打開指定的項(xiàng)目,可運(yùn)行Project菜單下的Open Project命令。以新建項(xiàng)目而言,則除項(xiàng)目窗口多出一個(gè)Target 1 項(xiàng)目外,工作區(qū)仍然是空白的,我們還得進(jìn)行幾個(gè)操作,說(shuō)明如下。 添加源程序文件若要將源程序文件添加到當(dāng)前的項(xiàng)目,
31、可在項(xiàng)目窗口左側(cè)單擊Target 1 節(jié)點(diǎn)下的Source Group 1項(xiàng),單擊鼠標(biāo)右鍵,彈出菜單,再選擇其中的Add Files to GroupSource Group 1選項(xiàng),即可在隨即出現(xiàn)的對(duì)話框里指定所要添加該項(xiàng)目的源程序文件,再單擊 按鈕即可。我們可以繼續(xù)指定所要添加的文件,一個(gè)項(xiàng)目可包含多個(gè)文件。最后單擊按鈕,關(guān)閉該對(duì)話框。 項(xiàng)目選項(xiàng)設(shè)置項(xiàng)目選項(xiàng)的設(shè)置是一個(gè)重要的文件,單擊按鈕即可打開選項(xiàng)對(duì)話框,如圖2-21所示。圖2-21 選項(xiàng)對(duì)話框的Target選項(xiàng)卡在圖2-21中可以設(shè)置程序的存儲(chǔ)器,其中的時(shí)鐘脈沖頻率的設(shè)置(即Xtal(MHz)欄)與設(shè)計(jì)息息相關(guān),其默認(rèn)值為該芯片的最高
32、時(shí)鐘脈沖頻率,但在實(shí)際的電路里并不一定使用最高頻率,而是有助于程序設(shè)計(jì)與電路控制的頻率,通常是12MHz(在此輸入12即可)。另外,若使用內(nèi)部程序存儲(chǔ)器,則選中Use On-Chip ROM選項(xiàng)。關(guān)于C語(yǔ)言的程序存儲(chǔ)器規(guī)范稍后說(shuō)明。若要改變或指定其他芯片,可單擊Device,切換到Device選項(xiàng)卡,如圖2-22所示。圖2-22 選項(xiàng)對(duì)話框的Device選項(xiàng)卡這時(shí)候就可在左邊的列表框中指定所要采用的芯片,其中排列方式是按半導(dǎo)體廠商分類,每個(gè)半導(dǎo)體廠商下面列出了所提供的芯片。選擇所采用的芯片后,該芯片的說(shuō)明將出現(xiàn)在右邊區(qū)域之中,在單擊Output標(biāo)簽,即可切換到Output選項(xiàng)卡,如圖2-23所
33、示。圖2-23 選項(xiàng)對(duì)話框的Output選項(xiàng)卡若要刻錄或在線仿真所需的HEX文件,則在Output選項(xiàng)卡里選中Create Executable選項(xiàng),在選中Create HEX File選項(xiàng)即可。其他各選項(xiàng)卡的選項(xiàng)只要采用程序默認(rèn)值即可,并不需要另行設(shè)置,具體功能簡(jiǎn)述如下。u Listing選項(xiàng)卡的功能是產(chǎn)生列表文件的相關(guān)設(shè)置。u C51選項(xiàng)卡的功能是設(shè)置C51編譯器的選項(xiàng)。u A51選項(xiàng)卡的功能是設(shè)置A51匯編器的選項(xiàng)。u BL51 Locate選項(xiàng)卡的功能是設(shè)置BL51連接器的定位選項(xiàng)。u BL51 Misc選項(xiàng)卡的功能是設(shè)置BL51連接器的其他選項(xiàng)。u Debug選項(xiàng)卡的功能是設(shè)置調(diào)試器
34、的相關(guān)選項(xiàng)。u Utilities選項(xiàng)卡的功能是設(shè)置通用工具的相關(guān)選項(xiàng)。當(dāng)上述工作設(shè)置完成且源程序編輯完成后,即可單擊按鈕進(jìn)行生成。然而程序的編寫難免有錯(cuò),若有錯(cuò)誤,則生成的過(guò)程中就會(huì)反應(yīng)在下方的輸出窗口中,如圖2-24所示。圖2-24 生成過(guò)程中有錯(cuò)誤其中“CH2.C(13):error C141:.問(wèn)題,我們可直接查看并修改,然后單擊按鈕重新生成。若程序語(yǔ)法正確,則可成功完成生成過(guò)程,而下方的輸出窗口將顯示如圖2-25所示內(nèi)容。圖2-25 成功完成生成三、認(rèn)識(shí)調(diào)試/仿真環(huán)境完成生成后,可單擊按鈕進(jìn)入調(diào)試/仿真狀態(tài),若使用調(diào)試版,屏幕將出現(xiàn)如圖2-26所示的確定對(duì)話框。圖2-26 確定對(duì)話框
35、這個(gè)對(duì)話框通知我們當(dāng)前使用的是試用版,具有2KB的限制。當(dāng)然,對(duì)于大部分的使用者而言,2KB足夠了。若要開發(fā)超過(guò)2KB的程序,課購(gòu)買商用版。單擊按鈕關(guān)閉對(duì)話框,窗口中可以明顯看到生成工具欄不見了,取而代之的是調(diào)試/仿真工具欄,如圖2-27所示,其中各按鈕說(shuō)明如下。圖2-27 調(diào)試/仿真工具欄u 用于復(fù)位CPU,同時(shí)讓程序從頭開始執(zhí)行。u 用于全速執(zhí)行程序。u 用于停止程序的執(zhí)行。u 用于單步執(zhí)行,每按一下執(zhí)行一個(gè)指令,若遇到函數(shù)(子程序),則跳入該函數(shù), 同樣一步一步執(zhí)行函數(shù)里的語(yǔ)句。u 用于單步執(zhí)行,每按一下執(zhí)行一個(gè)語(yǔ)句,若遇到函數(shù),則直接執(zhí)行完成該函數(shù)。u 用于完成當(dāng)前所執(zhí)行的函數(shù),跳出函
36、數(shù),返回主程序。u 用于執(zhí)行到文件插入點(diǎn)(文字光標(biāo),即I形光標(biāo))所在的第一行語(yǔ)句,所以在按該按鈕之前,應(yīng)先將文字插入點(diǎn)移至指定的那一行。u 用于打開STARUP.A51窗口,以展示程序相對(duì)應(yīng)的匯編語(yǔ)言執(zhí)行的狀態(tài)。u 用于啟動(dòng)/停止跟蹤記錄。u 用于顯示跟蹤記錄,并打開反匯編窗口(Disassembly)。u 用于打開反匯編窗口(Disassembly)。u 用于打開監(jiān)視窗口(Watch)。u 用于打開指令碼包含率窗口(Code Coverage)。u 用于打開串行端口窗口(Serial #1)。u 用于打開存儲(chǔ)器窗口(Memory)。u 用于打開性能分析器窗口(Prefermance Anal
37、yzer)。u 用于打開邏輯分析儀窗口(Logic Analyzer),以進(jìn)行時(shí)序(波形)分析。u 用于打開符號(hào)窗口(Symbols Analyzer),它與項(xiàng)目窗口在同一個(gè)位置。u 用于打開工具箱窗口(Toolbox)。四、外圍操作在調(diào)試/仿真狀態(tài)下,Peripherals菜單對(duì)于調(diào)試工作有不少幫助,如圖2-28所示。圖2-28 調(diào)試/仿真狀態(tài)下的Peripherals菜單其中各命令說(shuō)明如下。 Reset CPU 命令 該命令的功能是復(fù)位CPU,與單擊 按鈕的功能一樣。 Interrupt命令 該命令用于設(shè)置是否顯示是否顯示中斷系統(tǒng)對(duì)話框(Interrupt System),如圖2-29 所
38、示。圖2-29 中斷系統(tǒng)對(duì)話框其中列出了該芯片中的所有中斷源,如果直接選擇所需要操作的中斷源,則該中斷源的所有相關(guān)選項(xiàng)將呈現(xiàn)于對(duì)話框下方,以P3.2/Int0選項(xiàng)為例,對(duì)話框下方出現(xiàn)下列選項(xiàng)。u EA選項(xiàng)表示程序是否設(shè)置打開中斷源的總開關(guān),若選擇此選項(xiàng),表示程序中設(shè)置打開中斷源的總開關(guān)。u IT0選項(xiàng)表示程序所設(shè)置的中斷觸發(fā)方式,若選擇此項(xiàng)(即IT0=1),表示該中斷采用邊緣觸發(fā)方式;否則表示該中斷采用低電平觸發(fā)方式。u IE0選項(xiàng)為觸發(fā)該中斷的信號(hào),若要觸發(fā)該中斷,單擊該選項(xiàng)即進(jìn)入執(zhí)行其中斷子程序。u EX0選項(xiàng)表示程序是處于該中斷源的中斷狀態(tài)中,若選擇此選項(xiàng)(即EX0=1),表示程序以處于
39、該中斷之中。u Pri欄表示程序?qū)υ撝袛嗨O(shè)置的優(yōu)先級(jí)。復(fù)位CPU與單擊 按鈕的功能一樣。 I/O-Ports 命令該命令用于設(shè)置是否顯示輸入/輸出端口對(duì)話框(Parallel Port),而選擇該命令后,將彈出輸入輸出/端口菜單,如圖2-30所示,以Port0選項(xiàng)為例,選擇后將打開如圖 所示的對(duì)話框,其中分為P0與Pins兩行,P0行顯示該輸入/輸出的輸出狀態(tài),Pins行則為輸入狀態(tài),我們可在此行中輸入信號(hào),其中打勾為1,沒(méi)有打勾為0;取該命令后,將彈出輸入/輸出端口菜單,如圖2-31所示。圖2-30 輸入/輸出端口菜單 圖2-31 parallel Port0對(duì)話框 Serial命令該命令
40、用于設(shè)置是否顯示串行端口對(duì)話框(Serial Channel),如圖2-32所示。圖2-32 Serial Channel對(duì)話框其中各項(xiàng)說(shuō)明如下:u Mode欄為程序中所設(shè)置的串行端口方式。u SCON欄為程序中所設(shè)置SCON寄存器的內(nèi)存。u SBUF欄為串行口緩沖器(SUBF)的內(nèi)容。u SM2選項(xiàng)為程序中所設(shè)置SM2位的狀態(tài),若選擇此選項(xiàng),代表SM2=1,否則代表SM2=0。u REN選項(xiàng)為程序中所設(shè)置REN位的狀態(tài),若選擇此選項(xiàng),代表REN=1,否則代表REN=0。u TB8選項(xiàng)為程序中所設(shè)置TB8位的狀態(tài),若選擇此選項(xiàng),代表TB8=1,否則代表TB8=0。u RB8選項(xiàng)為程序中所設(shè)置RB8位的狀態(tài),若選擇此選項(xiàng),代表RB8=1,否則代表RB8=0。u SMOD選項(xiàng)為程序中所設(shè)置SMOD位的狀態(tài),若選擇此選項(xiàng),代表SMOD=1,否則代表SMOD=0。u Baudrate欄為程序中所設(shè)置波特率。u T1
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度綠色建筑材料代理商合作協(xié)議
- 2025年度聯(lián)合辦學(xué)協(xié)議書-國(guó)際教育交流與合作發(fā)展協(xié)議
- 2025年度綠茶茶園承包與茶葉電商合作合同
- 2025年度豬肉行業(yè)人才培養(yǎng)與引進(jìn)合作協(xié)議
- 二零二五年度法治百科普法詞條合同保全及金融科技創(chuàng)新合同
- 二零二五年度住房公積金購(gòu)房合同原件遺失與房屋交易風(fēng)險(xiǎn)規(guī)避及補(bǔ)償合同
- 二零二五年度房屋租賃合同糾紛調(diào)解協(xié)議模板
- 06 寫作 學(xué)習(xí)描寫景物2024-2025學(xué)年八年級(jí)語(yǔ)文上冊(cè)同步教學(xué)設(shè)計(jì)(河北專版)
- 二零二五年度旅游服務(wù)合同履約金收取標(biāo)準(zhǔn)及服務(wù)承諾
- 2025年度中式快餐品牌全國(guó)加盟連鎖協(xié)議
- 別克林蔭大道說(shuō)明書
- 原神適合寫在作文里的句子80句
- 數(shù)學(xué)三分鐘演講
- EPC項(xiàng)目設(shè)計(jì)管理實(shí)施策劃書
- von frey絲K值表完整版
- 人體解剖學(xué)試題庫(kù)及答案
- 學(xué)校幼兒花名冊(cè)模板
- GB/T 6418-2008銅基釬料
- GB/T 3452.4-2020液壓氣動(dòng)用O形橡膠密封圈第4部分:抗擠壓環(huán)(擋環(huán))
- GA/T 1310-2016法庭科學(xué)筆跡鑒定意見規(guī)范
- 熒光的猝滅解析課件
評(píng)論
0/150
提交評(píng)論