*注:可以肯定的說這個教程只是為初學或入門者準備的,筆者本人也只是菜鳥一只,有望各位大俠高手指點錯誤提出建議。
明浩 2003-3-30 pnzwzw@cdle.net
以上簡單介紹了KEIL51軟件,要使用KEIL51軟件,必需先要安裝它。KEIL51是一個商業的軟件,對于我們這些普通愛好者可以到KEIL中國代理周立功公司的網站上下載一份能編譯2K的DEMO版軟件,基本可以滿足一般的個人學習和小型應用的開發。(安裝的方法和普通軟件相當這里就不做介紹了)
安裝好后,你是不是迫不及待的想建立自己的第一個C程序項目呢?下面就讓我們一起來建立一個小程序項目吧。或許你手中還沒有一塊實驗板,甚至沒有一塊單片機,不過沒有關系我們可以通過KEIL軟件仿真看到程序運行的結果。
首先當然是運行KEIL51軟件。怎么打開?噢,天!那你要從頭學電腦了。呵呵,開個玩笑,這個問題我想讀者們也不會提的了:P。運行幾秒后,出現如圖1-1的屏幕。

圖1-1 啟動時的屏幕
(1)點擊Project菜單,選擇彈出的下拉式菜單中的New Project,如圖1-2。接著彈出一個標準Windows文件對話窗口,如圖1-3,這個東東想必大家是見了N次的了,用法技巧也不是這里要說的,以后的章節中出現類似情況將不再說明。在"文件名"中輸入您的第一個C程序項目名稱,這里我們用"test",這是筆者慣用的名稱,大家不必照搬就是了,只要符合Windows文件規則的文件名都行。"保存"后的文件擴展名為uv2,這是KEIL uVision2項目文件擴展名,以后我們可以直接點擊此文件以打開先前做的項目。

圖1-2 New Project菜單

圖1-3 文件窗口
(2)選擇所要的單片機,這里我們選擇常用的Ateml公司的AT89C51。此時屏幕如圖1-4所示。AT89C51有什么功能、特點呢?不用急,看圖中右邊有簡單的介紹,稍后的章節會作較詳細的介紹。完成上面步驟后,我們就可以進行程序的編寫了。
(3)首先我們要在項目中創建新的程序文件或加入舊程序文件。如果你沒有現成的程序,那么就要新建一個程序文件。在KEIL中有一些程序的Demo,在這里我們還是以一個C程序為例介紹如何新建一個C程序和如何加到您的第一個項目中吧。點擊圖1-5中1的新建文件的快捷按鈕,在2中出現一個新的文字編輯窗口,這個操作也可以通過菜單File-New或快捷鍵Ctrl+N來實現。好了,現在可以編寫程序了,光標已出現在文本編輯窗口中,等待我們的輸入了。第一程序嘛,寫個簡單明了的吧。下面是經典的一段程序,呵,如果你看過別的程序書也許也有類似的程序:
#include <AT89X51.H>
#include <stdio.h>
void main(void)
{
SCON =0x50; //串口方式1,允許接收
TMOD = 0x20; //定時器1定時方式2
TCON =0x40; //設定時器1開始計數
TH1 =0xE8; //11.0592MHz 1200波特率
TL1 =0xE8;
TI =1;
TR1 =1; //啟動定時器
while(1)
{
printf ("Hello World!\n"); //顯示Hello World
}
}

圖1-4選取芯片

圖1-5新建程序文件
(4)點擊圖1-5中的3保存新建的程序,也可以用菜單File-Save或快捷鍵Ctrl+S進行保存。因是新文件所以保存時會彈出類似圖1-3的文件操作窗口,我們把第一個程序命名為test1.c,保存在項目所在的目錄中,這時你會發現程序單詞有了不同的顏色,說明KEIL的C語法檢查生效了。如圖1-6鼠標在屏幕左邊的Source Group1文件夾圖標上右擊彈出菜單,在這里可以做在項目中增加減少文件等操作。我們?quot;Add File to Group 'Source Group 1'"彈出文件窗口,選擇剛剛保存的文件,按ADD按鈕,關閉文件窗,程序文件已加到項目中了。這時在Source Group1文件夾圖標左邊出現了一個小+號說明,文件組中有了文件,點擊它可以展開查看。

圖1-6把文件加入到項目文件組中

圖1-7編譯程序
到此為止,第一課已經完結了,初步學習了一些KEIL uVision2的項目文件創建、編譯、運行和軟件仿真的基本操作方法。其中一直有提到一些功能的快捷鍵的使用,的確在實際的開發應用中快捷鍵的運用可以大大提高工作的效率,建議大家多多使用,還有就是對這里所講的操作方法舉一反三用于類似的操作中。

圖1-8調試運行程序
Tags:單片機,c語言教程
責任編輯:adminESP32單片機入門篇
超聲波測距+溫度+報警的單片機代碼_51單片機超聲波測距C語言程序
七段數碼管顯示原理研究_數碼管顯示0~9對應的段碼
單片機C語言編程入門教程 流水燈程序示例
基于51單片機—多功能秒表,多功能計時器C語言程序
STC89C52單片機數字電流表電壓表源碼與電路圖 51單片機電流電壓
自學stm32單片機四個步驟,實用又高效!
先學51還是先學STM32?STM32和51單片機的區別
單片機最小系統介紹及電路設計 STM32單片機最小系統
什么是PIC單片機
為什么51單片機的晶振一般使用11.0592? 51單片機常用波特率初值表
51單片機寄存器功能一覽表
單片機寫延時程序的幾種方法
自學單片機編程之中斷與時鐘程序
哈佛結構與馮·諾伊曼結構區別以及X86體系
單片機萬年歷:公歷日期與農歷日期的相互轉換程序
AVR定時器1的CTC模式設置
單片機超聲波視覺識別系統的測量軟件開發,超聲波測距
LCD1602的單片機驅動詳解
- · 自學單片機編程之中斷與時鐘程序
- · 哈佛結構與馮·諾伊曼結構區別以及X86體
- · RS485通信和Modbus協議
- · 單片機時鐘,8位數碼管數字鐘的制作
- · 簡單流水燈的實現程序
- · 51單片機按鍵程序中 while(!key)的作用
- · 51單片機制作的經濟、安全的電子密碼鎖
- · 看門狗電路圖
- · 單片機數字時鐘 89C2051數字鐘套件
- · 認識單片機引腳【詳解】
- · 89C2051實現的電子鐘
- · 單片機4×4矩陣鍵盤設計方案
- · C51的中斷編程
- · c51中斷函數的介紹
- · 匯編:單片機驅動LED數碼管電路及編程
- · 單片機匯編:音樂盒DIY—生日快樂歌程序
- · 51單片機指令功能表
- · 電熱水器定時控制器設計,單片機運用
- · 單片機發展的歷史
- · MCS-51系列單片機指令表
- · 51單片機匯編程序集