C51 單片機開發(fā)用 Keil 創(chuàng)建工程
公眾號文章同步閱讀網(wǎng)址: www.netor0x86.com
上篇文章安裝并注冊了 Keil 這個集成開發(fā)環(huán)境,本篇文章在上篇文章的基礎上來創(chuàng)建一個簡單的工程。這里的工程是 Project,有的翻譯是工程,有的翻譯是項目,別太糾結!
如果沒有看過上篇文章的話,那么可以進行查看:C51 單片機開發(fā)環(huán)境的安裝
0x01:創(chuàng)建項目
首先 “以管理員身份運行” Keil 的開發(fā)環(huán)境,具體需不需要這樣運行,我也不知道,反正我是每次都這么運行,為了給自己省一些不必要的麻煩吧!
打開以后,就開始創(chuàng)建工程,按照步驟操作就好。
在菜單欄選擇 "Project" -> "New Vision Project",在打開的 "Create New Project" 窗口中選擇要保存代碼的文件夾。注意:文件夾需要是一個空的文件夾,因為一個工程中有多個文件,這個文件夾最好是專門為一個工程單獨創(chuàng)建的。
選擇好文件夾以后,在 "文件名" 的位置填入工程的名稱,這里根據(jù)實際的項目填寫即可。填好后點擊 “確定” 按鈕,這樣會在當前的文件夾下生成一個 ".uvproj" 的文件,這個文件是項目管理文件,以后雙擊它就可以通過 Keil 打開這個工程。當然了,我們目前可以不用關心這個文件。
在填好填入工程名稱并確定以后,會選擇目標設備(這里顯示的是 Select Device For Target 窗口),這里選擇 Atmel 下的 AT89C52,選擇 AT89C51 也可以,如下圖。

選擇以后點擊 “確定” 按鈕,就是上面圖中的那個 “OK” 按鈕。點擊后會提示是否將啟動代碼加入到工程中,如下圖:

這里點擊 “是” 按鈕。此時會在工程目錄中添加一個 STARTUP.A51 的文件,這個是啟動代碼,用來在單片機啟動時完成的一些初始化的工作,有了它應該就省去自己寫很多代碼了!到此,Keil 的工程目錄結構如下:

到此,用 Keil 就創(chuàng)建了一個空的工程,接下來在該工程中添加一個 C 程序代碼。
0x02:添加 C 代碼
上圖中,在 Source Group 1 上點擊右鍵,選擇 "Add New Item to Group 'Source Group 1' ...",如下圖:

會彈出一個添加源代碼到工程的對話框,這里選擇 .c 文件,并對源代碼命名為 main,如下圖:

填寫后,點擊 "確定" 按鈕,讓 main.c 加入到工程中。
然后,寫一段簡單的示例代碼到 main.c 文件中,代碼如下:
#include "reg52.h"
sbit led1 = P3 ^ 7;sbit led2 = P3 ^ 6;
void main(){led1 = 0;led2 = 0;
while (1);}
代碼的作用無所謂,就是一段示例代碼。
0x03:工程編譯

編譯完成后,到工程目錄下查看是否有一個 .hex 的文件,如果有就說明生成了,如果沒有,到 Keil 菜單的 "Project" -> "Options for Target" 中進行查看,選擇 "Output" 選項卡,然后檢查是否勾選 "Create Hex File" 選項,如下圖:

如果沒有勾選,則將其勾選后,再次進行編譯,則會生成 hex 文件。當然,在 "Build Output" 窗口中也可以看到是否創(chuàng)建 hex 文件的提示。

在 "Build Output" 窗口的最后一行,可以看到有一個 "0 Error(s), 0 Warning(s)" 的提示,表示代碼中沒有錯誤,也沒有警告,一般這是 C/C++ 程序員最愛看到的結果。一般情況下,如果有 Error 需要修改,有 Warning 可以暫時忽略不管。
這樣,第一個通過 Keil 創(chuàng)建的 C51 的工程就完成了,生成的 hex 文件就是要燒錄到單片機中的文件,后面的文章會進行介紹。
我是一個程序員,了解 C、PHP、Java、ASM、Python,有 信安、CISP 證書,寫小白也能看得懂的文章,感謝關注!!!
我的網(wǎng)站:https://www.netor0x86.com
我的視頻課程:
1. 入門級棧溢出分析
2. WEB端獲取MAC地址真實項目案例
3. PHP擴展模塊開發(fā)之DLL編寫與調(diào)用
4. C語言零基礎入門教程
5. PE 文件結構初識與二進制手寫可執(zhí)行程序
