Keil C51開發系統基本知識(1)

admin @ 2014-03-14 , reply:0

Keil C51開發系統基本知識
1. 第一節 系統概述
Keil C51是美國Keil Software公司出品的51系列兼容單片機C語言軟體開發系統,與彙編相比,C語言在功能上、結構性、可讀性、可維護性上有明顯的優勢,因而易學易用。用過彙編語言后再使用C來開發,體會更加深刻。

下面詳細介紹Keil C51開發系統各部分功能和使用。
2. 第二節 Keil C51單片機軟體開發系統的整體結構
C51工具包的整體結構,如圖(1)所示,其中uVision與Ishell分別是C51 for Windows和for Dos的集成開發環境(IDE),可以完成編輯、編譯、連接、調試、模擬等整個開發流程。開發人員可用IDE本身或其它編輯器編輯C或彙編源文件。然後分別由C51及A51編譯器編譯生成目標文件(.OBJ)。目標文件可由LIB51創建生成庫文件,也可以與庫文件一起經L51連接定位生成絕對目標文件(.ABS)。ABS文件由OH51轉換成標準的Hex文件,以供調試器dScope51或tScope51使用進行源代碼級調試,也可由模擬器使用直接對目標板進行調試,也可以直接寫入程序存貯器如EPROM中。

3. 第三節 Keil C51工具包的安裝
1. 1. C51 for Dos
在Windows下直接運行軟體包中DOS\C51DOS.exe然後選擇安裝目錄即可。完畢后欲使系統正常工作須進行以下操作(設C:\C51為安裝目錄):
修改Autoexec.bat,加入
path=C:\C51\Bin
Set C51LIB=C:\C51\LIB
Set C51INC=C:\C51\INC
然後運行Autoexec.bat
2. 2. C51 for Windows的安裝及注意事項:

4. 第四節 Keil C51工具包各部分功能及使用簡介
1. 1. C51與A51
1. (1) C51
C51是C語言編譯器,其使用方法為:
C51 sourcefile[編譯控制指令]
或者
C51 @ commandfile

而Commandfile為一個連接控制文件其內容包括:.C源文件及各編譯控制指令,它沒有固定的名字,開發人員可根據自己的習慣指定,它適於用控制指令較多的場合。
2. (2) A51
A51是彙編語言編譯器,使用方法為:
A51 sourcefile[編譯控制指令]
或A51 @ commandfile
其中sourcefile為彙編源文件(.asm或.a51),而編譯控制指令的使用與其它彙編如ASM語言類似,可參考其他彙編語言材料。
Commandfile同C51中的Commandfile類似,它使A51使用和修改方便。
2. 2. L51和BL51
1. (1) L51

L51 目標文件列表[庫文件列表] [to outputfile] [連接控制指令]
或 L51 @Commandfile
源程序的多個模塊分別經C51與A51編譯後生成多個OBJ文件,連接時,這些文件全列於目標文件列表中,作為輸入文件,如果還需與庫文件(.LiB)相連接,則庫文件也必須列在其後。outputfile為輸文件名,缺少時為第一模塊名,後綴為.ABS。連接控制指令提供了連接定位時的所有控制功能。Commandfile為連接控制文件,其具體內容是包括了目標文件列表,庫文件列表及輸出文件、連接控制命令,以取代第一種繁瑣的格式,由於目標模塊庫文件大多不止1個,因而第2種方法較多見,這個文件名字也可由使用者隨意指定。
2. (2) Bl51
BL51也是C51軟體包的連接/定位器,其具有L51的所有功能,此外它還具有以下3點特別之處:
a. 可以連接定位大於64kBytes的程序。
b. 具有代碼域及域切換功能(CodeBanking & Bank Switching)
c. 可用於RTX51操作系統
RTX51是一個實時多任務操作系統,它改變了傳統的編程模式,甚至不必用main( )函數,單片機系統軟體向RTOS發展是一種趨勢,這種趨勢對於186和386及68K系列CPU更為明顯和必須,對8051因CPU較為簡單,程序結構等都不太複雜,RTX51作用顯得不太突出,其專業版軟體PK51軟體包甚至不包括RTX51Full,而只有一個RTX51TINY版本的RTOS。RTX51 TINY適用於無外部RAM的單片機系統,因而可用面很窄,在本文中不作介紹。Bank switching技術因使用很少也不作介紹。
3. 3. DScope51,Tscope51及Monitor51
1. (1) dScope51

其使用方法為:
DS51[debugfile][INIT(initfile)]
其中debugfile是一個Hex格式的8051文件,即待調試的文件其為可選的,可在進入dScope51後用load命令裝入。
Initfile為一個初使化文件,它在啟動dScope51后,在debugfile裝入前裝入,裝有一些dScope的初使化參數及常用調試函數等。下面是一個dScope.ini文件(for dos)的內容:
Load ..\..\ds51\8051.iof
Map 0,0xffff
dScope51 for Windows則直接用滑鼠進入,然後用load裝入待調文件。
2. (2) tScope51
與dScope51不同的是Scope51必須帶目標板,目前它可以通過兩種方式訪問目標板。(1) 通過EMul51在線模擬器,tScope51為該模擬器準備了一個動態連接文件EMUL51.IOT,但該方法必須配合該模擬器。(2) 通過Monitov51監控程序,這種方法是可行的,tScope51為訪問Monitor51專門帶有MON51.IOT連接程序,使用時可通過串口及監控程序來調試目標板。
其使用方法為:
TS51[INIT(file_name.ini)]
其中file_name.ini為一個初使化文件。



[admin via 研發互助社區 ] Keil C51開發系統基本知識(1)已經有5669次圍觀

http://cocdig.com/docs/show-post-642.html