www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁(yè) > 單片機(jī) > 單片機(jī)
[導(dǎo)讀]Keil C51使用教程---開(kāi)發(fā)系統(tǒng)基本知識(shí)(一)第一節(jié) 系統(tǒng)概述Keil C51是美國(guó)Keil Software公司出品的51系列兼容單片機(jī)C語(yǔ)言軟件開(kāi)發(fā)系統(tǒng),與匯編相比,C語(yǔ)言在功能上、結(jié)構(gòu)性、可讀性、可維護(hù)性上有明顯的優(yōu)勢(shì),因而易


Keil C51使用教程---開(kāi)發(fā)系統(tǒng)基本知識(shí)(一)

第一節(jié) 系統(tǒng)概述

Keil C51是美國(guó)Keil Software公司出品的51系列兼容單片機(jī)C語(yǔ)言軟件開(kāi)發(fā)系統(tǒng),與匯編相比,C語(yǔ)言在功能上、結(jié)構(gòu)性、可讀性、可維護(hù)性上有明顯的優(yōu)勢(shì),因而易學(xué)易用。用過(guò)匯編語(yǔ)言后再使用C來(lái)開(kāi)發(fā),體會(huì)更加深刻。

Keil C51軟件提供豐富的庫(kù)函數(shù)和功能強(qiáng)大的集成開(kāi)發(fā)調(diào)試工具,全Windows界面。另外重要的一點(diǎn),只要看一下編譯后生成的匯編代碼,就能體會(huì)到Keil C51生成的目標(biāo)代碼效率非常之高,多數(shù)語(yǔ)句生成的匯編代碼很緊湊,容易理解。在開(kāi)發(fā)大型軟件時(shí)更能體現(xiàn)高級(jí)語(yǔ)言的優(yōu)勢(shì)。

下面詳細(xì)介紹Keil C51開(kāi)發(fā)系統(tǒng)各部分功能和使用。


第二節(jié) Keil C51單片機(jī)軟件開(kāi)發(fā)系統(tǒng)的整體結(jié)構(gòu)

C51工具包的整體結(jié)構(gòu),如圖(1)所示,其中uVision與Ishell分別是C51 for Windows和for Dos的集成開(kāi)發(fā)環(huán)境(IDE),可以完成編輯、編譯、連接、調(diào)試、仿真等整個(gè)開(kāi)發(fā)流程。開(kāi)發(fā)人員可用IDE本身或其它編輯器編輯C或匯編源文件。然后分別由C51及A51編譯器編譯生成目標(biāo)文件(.OBJ)。目標(biāo)文件可由LIB51創(chuàng)建生成庫(kù)文件,也可以與庫(kù)文件一起經(jīng)L51連接定位生成絕對(duì)目標(biāo)文件(.ABS)。ABS文件由OH51轉(zhuǎn)換成標(biāo)準(zhǔn)的Hex文件,以供調(diào)試器dScope51或tScope51使用進(jìn)行源代碼級(jí)調(diào)試,也可由仿真器使用直接對(duì)目標(biāo)板進(jìn)行調(diào)試,也可以直接寫(xiě)入程序存貯器如EPROM中。



圖(1) C51工具包整體結(jié)構(gòu)圖


第三節(jié) Keil C51工具包的安裝


1. C51 for Dos

在Windows下直接運(yùn)行軟件包中DOSC51DOS.exe然后選擇安裝目錄即可。完畢后欲使系統(tǒng)正常工作須進(jìn)行以下操作(設(shè)C:C51為安裝目錄):

修改Autoexec.bat,加入

path=C:C51Bin

Set C51LIB=C:C51LIB

Set C51INC=C:C51INC

然后運(yùn)行Autoexec.bat

2. C51 for Windows的安裝及注意事項(xiàng):

在Windows下運(yùn)行軟件包中WINSetup.exe,最好選擇安裝目錄與C51 for Dos相同,這樣設(shè)置最簡(jiǎn)單(設(shè)安裝于C:C51目錄下)。然后將軟件包中crack目錄中的文件拷入C:C51Bin目錄下。

第四節(jié) Keil C51工具包各部分功能及使用簡(jiǎn)介

1. C51與A51

(1) C51

C51是C語(yǔ)言編譯器,其使用方法為:

C51 sourcefile[編譯控制指令]

或者 C51 @ commandfile

其中sourcefile為C源文件(.C)。大量的編譯控制指令完成C51編譯器的全部功能。包控C51輸出文件C.LST,.OBJ,.I和.SRC文件的控制。源文件(.C)的控制等,詳見(jiàn)第五部分的具體介紹。

而Commandfile為一個(gè)連接控制文件其內(nèi)容包括:.C源文件及各編譯控制指令,它沒(méi)有固定的名字,開(kāi)發(fā)人員可根據(jù)自己的習(xí)慣指定,它適于用控制指令較多的場(chǎng)合。

(2) A51

A51是匯編語(yǔ)言編譯器,使用方法為:

A51 sourcefile[編譯控制指令]

或 A51 @ commandfile

其中sourcefile為匯編源文件(.asm或.a51),而編譯控制指令的使用與其它匯編如ASM語(yǔ)言類(lèi)似,可參考其他匯編語(yǔ)言材料。

Commandfile同C51中的Commandfile類(lèi)似,它使A51使用和修改方便。

2. L51和BL51

(1) L51

L51是Keil C51軟件包提供的連接/定位器,其功能是將編譯生成的OBJ文件與庫(kù)文件連接定位生成絕對(duì)目標(biāo)文件(.ABS),其使用方法為:

L51 目標(biāo)文件列表[庫(kù)文件列表] [to outputfile] [連接控制指令]

或 L51 @Commandfile

源程序的多個(gè)模塊分別經(jīng)C51與A51編譯后生成多個(gè)OBJ文件,連接時(shí),這些文件全列于目標(biāo)文件列表中,作為輸入文件,如果還需與庫(kù)文件(.LiB)相連接,則庫(kù)文件也必須列在其后。outputfile為輸文件名,缺少時(shí)為第一模塊名,后綴為.ABS。連接控制指令提供了連接定位時(shí)的所有控制功能。Commandfile為連接控制文件,其具體內(nèi)容是包括了目標(biāo)文件列表,庫(kù)文件列表及輸出文件、連接控制命令,以取代第一種繁瑣的格式,由于目標(biāo)模塊庫(kù)文件大多不止1個(gè),因而第2種方法較多見(jiàn),這個(gè)文件名字也可由使用者隨意指定。

(2) Bl51

BL51也是C51軟件包的連接/定位器,其具有L51的所有功能,此外它還具有以下3點(diǎn)特別之處:

a. 可以連接定位大于64kBytes的程序。

b. 具有代碼域及域切換功能(CodeBanking & Bank Switching)

c. 可用于RTX51操作系統(tǒng)

RTX51是一個(gè)實(shí)時(shí)多任務(wù)操作系統(tǒng),它改變了傳統(tǒng)的編程模式,甚至不必用main( )函數(shù),單片機(jī)系統(tǒng)軟件向RTOS發(fā)展是一種趨勢(shì),這種趨勢(shì)對(duì)于186和386及68K系列CPU更為明顯和必須,對(duì)8051因CPU較為簡(jiǎn)單,程序結(jié)構(gòu)等都不太復(fù)雜,RTX51作用顯得不太突出,其專(zhuān)業(yè)版軟件PK51軟件包甚至不包括RTX51Full,而只有一個(gè)RTX51TINY版本的RTOS。RTX51 TINY適用于無(wú)外部RAM的單片機(jī)系統(tǒng),因而可用面很窄,在本文中不作介紹。Bank switching技術(shù)因使用很少也不作介紹。

3. DScope51,Tscope51及Monitor51

(1) dScope51

dScope51是一個(gè)源級(jí)調(diào)試器和模擬器,它可以調(diào)試由C51編譯器、A51匯編器、PL/M-51編譯器及ASM-51匯編器產(chǎn)生的程序。它不需目標(biāo)板(for windows也可通過(guò)mon51接目標(biāo)板),只能進(jìn)行軟件模擬,但其功能強(qiáng)大,可模擬CPU及其外圍器件,如內(nèi)部串口,外部I/O及定時(shí)器等,能對(duì)嵌入式軟件功能進(jìn)行有效測(cè)試。

其使用方法為:

DS51[debugfile][INIT(initfile)]

其中debugfile是一個(gè)Hex格式的8051文件,即待調(diào)試的文件其為可選的,可在進(jìn)入dScope51后用load命令裝入。

Initfile為一個(gè)初使化文件,它在啟動(dòng)dScope51后,在debugfile裝入前裝入,裝有一些dScope的初使化參數(shù)及常用調(diào)試函數(shù)等。下面是一個(gè)dScope.ini文件(for dos)的內(nèi)容:

Load ....ds518051.iof

Map 0,0xffff

dScope51 for Windows則直接用鼠標(biāo)進(jìn)入,然后用load裝入待調(diào)文件。

(2) tScope51

與dScope51不同的是Scope51必須帶目標(biāo)板,目前它可以通過(guò)兩種方式訪問(wèn)目標(biāo)板。(1) 通過(guò)EMul51在線仿真器,tScope51為該仿真器準(zhǔn)備了一個(gè)動(dòng)態(tài)連接文件EMUL51.IOT,但該方法必須配合該仿真器。(2) 通過(guò)Monitov51監(jiān)控程序,這種方法是可行的,tScope51為訪問(wèn)Monitor51專(zhuān)門(mén)帶有MON51.IOT連接程序,使用時(shí)可通過(guò)串口及監(jiān)控程序來(lái)調(diào)試目標(biāo)板。

其使用方法為:

TS51[INIT(file_name.ini)]

其中file_name.ini為一個(gè)初使化文件。

進(jìn)入TS51后,必須裝入IOT文件,可用的有MON51.IOT及EMUL51.IOT兩種,如裝入MON51.IOT:

Load.C:C51TS51MON51.IOT CPUTYPE(80517)

可惜的是tScope51只有for Dos的版本。

(3) Monitor 51

Monitor51是一個(gè)監(jiān)控程序通過(guò)PC機(jī)的串口與目標(biāo)板進(jìn)行通信,Monitor操作需要MON51或dScope51 for Windows,后面部分將對(duì)Monitor51做較為詳細(xì)的介紹。

4. Ishell及uVision

(1) Ishell for Dos

這是一個(gè)for Dos的IDE,直接在命令行鍵入Ishell,則進(jìn)入該環(huán)境,它使用簡(jiǎn)單方便。其命令行與DOS命令行具有同樣的功能,對(duì)單模塊的Project直接由菜單進(jìn)行編譯連接,對(duì)多模塊的project。則通過(guò)批處理,BAT文件進(jìn)行編譯連接,然后通過(guò)菜單控制由dScope51或tScope51對(duì)程序進(jìn)行調(diào)試,因?yàn)槭莊or dos的,不做太詳細(xì)介紹。

(2) uVision for Windows

uVision for Windows是一個(gè)標(biāo)準(zhǔn)的Windows應(yīng)用程序,它是C51的一個(gè)集成軟件開(kāi)發(fā)平臺(tái),具有源代碼編輯、project管理、集成的make等功能,它的人機(jī)界面友好,操作方便,是開(kāi)發(fā)者的首選,具體配置及使用見(jiàn)第五部分。


本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專(zhuān)欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

嵌入式開(kāi)發(fā)作為一種專(zhuān)業(yè)且技術(shù)密集型的領(lǐng)域,涵蓋了從硬件底層驅(qū)動(dòng)、中間件到應(yīng)用層軟件開(kāi)發(fā)等多個(gè)層面的工作,其所需的工具種類(lèi)繁多,各有針對(duì)性,旨在提升開(kāi)發(fā)效率、保證代碼質(zhì)量以及簡(jiǎn)化調(diào)試過(guò)程。

關(guān)鍵字: 嵌入式開(kāi)發(fā) keil

單片機(jī)內(nèi)部有很多的特殊功能寄存器,每個(gè)寄存器在單片機(jī)內(nèi)部都分配有唯一的地址,一般我們會(huì)根據(jù)寄存器功能的不同給寄存器賦予各自的名稱(chēng),當(dāng)我們需要在程序中操作這些特殊功能寄存器時(shí),必須要在程序的最前面將這些名稱(chēng)加以聲明,聲明的...

關(guān)鍵字: C51 數(shù)據(jù)類(lèi)型 擴(kuò)充定義

數(shù)據(jù)元(Data Element),也稱(chēng)為數(shù)據(jù)元素,是用一組屬性描述其定義、標(biāo)識(shí)、表示和允許值的數(shù)據(jù)單元,在一定語(yǔ)境下,通常用于構(gòu)建一個(gè)語(yǔ)義正確、獨(dú)立且無(wú)歧義的特定概念語(yǔ)義的信息單元。數(shù)據(jù)元可以理解為數(shù)據(jù)的基本單元,將若...

關(guān)鍵字: C51 數(shù)據(jù)類(lèi)型

之后新建新的工程,添加.a文件就可以使用了,當(dāng)然也可以使用keil來(lái)添加,但是keil默認(rèn)的是用.lab,需要自己配置一下文件屬性,改為lib文件即可。一半release sdk的時(shí)候用這種方式很關(guān)鍵的,畢竟自己的核心代...

關(guān)鍵字: keil 文件屬性 lib文件

▼點(diǎn)擊下方名片,關(guān)注公眾號(hào)▼歡迎關(guān)注【玩轉(zhuǎn)單片機(jī)與嵌入式】公眾號(hào),回復(fù)關(guān)鍵字獲取更多免費(fèi)資料。回復(fù)【加群】,限時(shí)免費(fèi)進(jìn)入知識(shí)共享群;回復(fù)【3D封裝庫(kù)】,常用元器件的3D封裝庫(kù);回復(fù)【電容】,獲取電容、元器件選型相關(guān)的內(nèi)容...

關(guān)鍵字: C51 MDK RealView

在Keil C51軟件中51單片機(jī)的中斷服務(wù)和外設(shè)驅(qū)動(dòng)程序的開(kāi)發(fā)

關(guān)鍵字: keil5 編譯 C51

Intel公司1980年推出了MCS-51系列單片機(jī):集成 8位CPU、4K字節(jié)ROM、128字節(jié)RAM、4個(gè)8位并口、1個(gè)全雙工串行口、2個(gè)16位定時(shí)/計(jì)數(shù)器。尋址范圍64K,并有控制功能較強(qiáng)的布爾處理器。 80C5...

關(guān)鍵字: C51 KEIL 編程

c上標(biāo)3下標(biāo)5怎么算用計(jì)算機(jī),c上標(biāo)3下標(biāo)5怎么算

關(guān)鍵字: C51 KEIL

DSP28335與AD7606通過(guò)SPI的串行數(shù)據(jù)交互

關(guān)鍵字: keil C
關(guān)閉