官术网_书友最值得收藏!

第1章 單片機開發(fā)軟件Keil C51的使用

1.1 Keil C51簡介

常用的單片機及嵌入式系統(tǒng)編程語言有兩種,即匯編語言和C語言。匯編語言的機器代碼生成效率很高,但其可讀性卻并不強,復雜一點的程序就更是很難讀懂。C語言在大多數(shù)情況下,其機器代碼生成效率和匯編語言相當,但可讀性和可移植性卻遠遠超過匯編語言,而且C語言還可以嵌入?yún)R編語言來解決高時效性的代碼編寫問題。就開發(fā)周期來說,用C語言編寫中大型軟件的開發(fā)周期通常要比用匯編語言編寫的短很多。與匯編語言相比, C語言在功能性、結(jié)構(gòu)性、可讀性、可維護性上有明顯的優(yōu)勢,因而易學易用。由此可見,使用C語言編寫程序是一種非常好的選擇。

使用C語言肯定要用到C編譯器,以便把寫好的C程序編譯為機器碼,這樣單片機才能執(zhí)行編寫好的程序。用過匯編語言后再使用C語言來開發(fā),體會更加深刻。Keil μVision3是眾多單片機應(yīng)用開發(fā)軟件中最優(yōu)秀的軟件之一,它支持眾多不同公司的MCS51架構(gòu)的芯片,它集編輯、編譯、仿真等功能于一體,同時還支持PLM、匯編和C語言的程序設(shè)計,它的界面與常用的微軟VC++的界面相似,界面友好,易學易用。

Keil C51是美國Keil Software公司出品的51系列兼容單片機C語言軟件開發(fā)系統(tǒng)。Keil C51軟件提供了豐富的庫函數(shù)和功能強大的集成開發(fā)調(diào)試工具,全Windows界面。

另外,只要看一下編譯后生成的匯編代碼,就能體會到Keil C51生成目標代碼的效率非常高,多數(shù)語句生成的匯編代碼很緊湊,容易理解。在開發(fā)大型軟件時,更能體現(xiàn)采用高級語言的優(yōu)勢。

Keil C51標準C編譯器為8051微控制器的軟件開發(fā)提供了C語言環(huán)境,同時保留了匯編代碼高效、快速的特點。C51編譯器的功能不斷增強,使用戶可以更加“貼近”CPU本身及其他的衍生產(chǎn)品。C51已被完全集成到μVision3的集成開發(fā)環(huán)境中,這個集成開發(fā)環(huán)境包括編譯器、匯編器、實時操作系統(tǒng)、項目管理器和調(diào)試器,μVision3 IDE可以為它們提供單一而靈活的開發(fā)環(huán)境。C51V808A版本是目前版本較高的8051開發(fā)平臺,它可以支持所有8051的衍生產(chǎn)品,也可以支持所有兼容的仿真器,同時也支持其他第三方開發(fā)工具。

C51是一種專門為8051單片機設(shè)計的高級語言C編譯器,支持符合ANSI標準的C語言程序設(shè)計,同時針對8051單片機的自身特點做了一些特殊擴展。

C51默認值不支持函數(shù)遞歸調(diào)用,需要進行遞歸調(diào)用的函數(shù)必須聲明為再入函數(shù)。再入函數(shù)的局部數(shù)據(jù)和參數(shù)被放入再入棧中,從而允許進行遞歸調(diào)用。

μVision3支持所有的Keil 80C51的工具軟件,包括C51編譯器、宏匯編器、鏈接器/定位器和目標文件至Hex格式轉(zhuǎn)換器,μVision3可以自動完成編譯、匯編、鏈接程序等操作。μVision3的特點如下。

1)C51編譯器和A51匯編器 由 μVision3 IDE創(chuàng)建的源文件可以被C51編譯器或A51匯編器處理,生成可重定位的object文件。Keil C51編譯器支持ANSIC語言標準,也支持C語言的所有標準特性。另外,還增加了幾個可以直接支持80C51結(jié)構(gòu)的特性。Keil A51宏匯編器支持80C51及其派生系列的所有指令集。

2)LIB51庫管理器 LIB51庫管理器可以把由匯編器和編譯器創(chuàng)建的目標文件建立目標庫。這些庫是按規(guī)定格式排列的目標模塊,可被鏈接器使用。當鏈接器處理一個庫時,僅使用庫中程序使用的目標模塊,而不是全部加以引用。

3)BL51鏈接器/定位器 BL51鏈接器/定位器使用從庫中提取出來的目標模塊,以及由編譯器、匯編器生成的目標模塊,創(chuàng)建一個絕對地址目標模塊。絕對地址目標文件或模塊包括不可重定位的代碼和數(shù)據(jù)。所有的代碼和數(shù)據(jù)都被固定在具體的存儲器單元中。

4)μVision3軟件調(diào)試器 μVision3軟件調(diào)試器能十分理想地進行快速、可靠的程序調(diào)試。調(diào)試器包括一個高速模擬器,用戶可以使用它來模擬整個80C51系統(tǒng),包括片上外圍器件和外部硬件。當用戶從器件數(shù)據(jù)庫選擇器件時,這個器件的屬性會被自動配置。

5)μVision3硬件調(diào)試器 μVision3硬件調(diào)試器向用戶提供了幾種在實際目標硬件上測試程序的方法。

6)RTX51實時操作系統(tǒng) RTX51實時操作系統(tǒng)是針對80C51微控制器系列的一個多任務(wù)內(nèi)核。RTX51實時內(nèi)核簡化了需要對實時事件進行反應(yīng)的復雜應(yīng)用的系統(tǒng)設(shè)計、編程和調(diào)試。這個內(nèi)核完全集成在C51編譯器中,使用非常簡單。任務(wù)描述表和操作系統(tǒng)的一致性由BL51鏈接器/定位器自動進行控制。

此外,μVision3還具有極其強大的軟件環(huán)境、友好的操作界面和簡單快捷的操作方法,主要表現(xiàn)在以下幾點:

豐富的菜單欄。

可以快速選擇命令按鈕的工具條。

一些源代碼文件窗口。

對話框窗口。

直觀明了的信息顯示窗口。

主站蜘蛛池模板: 岳阳市| 江门市| 酒泉市| 阜新| 光山县| 小金县| 合阳县| 城步| 志丹县| 沙河市| 华坪县| 松阳县| 崇礼县| 文登市| 湘潭县| 曲松县| 盐边县| 景洪市| 琼结县| 邵阳县| 汉阴县| 南阳市| 德安县| 新和县| 行唐县| 塔城市| 北票市| 南汇区| 龙南县| 玛沁县| 新郑市| 晋州市| 磐石市| 大悟县| 丽江市| 黎平县| 新竹县| 额济纳旗| 清远市| 福安市| 衡阳县|