国产成人av人人爽人人澡-亚洲国产日韩欧美一区-好吊日视频这里只有精品-日本高清精品视频在线

你好!歡迎來到深圳市穎特新科技有限公司!
語言
當前位置:首頁 >> 技術中心 >> 單片機入門 >> 手把手教您編寫第一個單片機程序

手把手教您編寫第一個單片機程序

關鍵字:手把手 編寫 單片機程序 作者:admin 來源:不詳 發(fā)布時間:2018-05-19  瀏覽:8

51單片機的開發(fā)環(huán)境是Keil 軟件。Keil 軟件雖然是一個收費軟件,但從uVision2到目前的uVison4版本都有破解版,在網(wǎng)上都可以找到下載。筆者推薦大家使用uVisong4破解版本,好處不用多說。Keil uVision4軟件的壓縮包里附有安裝和破解說明,本文不再贅述。

開發(fā)一個單片機程序,一般都要經(jīng)過這幾個步驟:建立工程->建立C文件->添加C文件到工程->編寫C代碼->設置目標工程的選項->編譯工程產(chǎn)生HEX文件->將HEX文件下載到單片機。本文將一步一步手把手教您開發(fā)一個LED閃爍的簡單且實用的C51程序。讓您從0基礎起步學習開發(fā)51單片機。

安裝Keil uVison4之后,第一次運行出現(xiàn)如圖1的界面,從上往下數(shù),依次是菜單欄、第一條工具欄、第二條工具欄,接下來左邊白色部分為工程文件區(qū)(顯示文件、函數(shù)、語言模板和相關書籍),右邊灰色部分為文本區(qū)(編寫源文件),最下邊為編譯信息欄(顯示編譯時產(chǎn)生的相關信息)。

 

 

圖1

一.建立工程

點擊“Project”菜單項,選“New uVision Project…”,跳出創(chuàng)建新工程對話框,選擇工程放置位置,在這里筆者選擇F盤,并在根目錄創(chuàng)建LED這個文件夾,用來放置工程文件,如圖2:

 

 

圖2

打開LED文件夾,然后給新工程取個名字(可以任意取),在這里筆者取工程名字為“LED”,如圖3:

 

 

圖3

點擊“保存”按鈕,跳出器件選擇對話框,如圖4:

 

 

圖4

找到Atmel單片機,選擇AT89S52,同時右邊的描述欄里顯示了該器件的基本信息,如圖5:

 

 

圖5

點擊“OK按鈕,”跳出提示對話框,如圖6:

 

 

圖6

提示對話框問您“是否將8051標準啟動代碼復制到工程文件夾并添加到工程?”,根據(jù)您的需要選擇,一般不需要,在這里筆者選擇“否”。此時,可看到keil uVision4界面左邊的工程窗口里多了一個目標文件夾“Target 1”,其下有一個源文件組文件夾“Suorce Group 1”,如圖7。此時,新工程已經(jīng)建立,但還只是一個空的工程。

 

 

圖7

二.建立C文件和保存C文件

從圖7可看到,“Suorce Group 1”這個源文件夾下還沒有任何文件。接下來就是創(chuàng)建一個C文件。點擊“File”菜單,選擇“New”,文檔區(qū)便出現(xiàn)了一個默認文件名為“Text 1”的空白文檔,如圖8:

 

 

圖8

在該文檔上隨便輸入一個空格,然后點擊“File”菜單,選擇“Save”,跳出保存對話框,如圖9,輸入文件名為“LED.c”,點擊“保存”按鈕。這一步需要注意的是這個C文件必須保存在剛才創(chuàng)建的工程文件夾下,否則在后面編譯時會出錯。C文件的文件名一般和工程名一致。擴展名必須為“.c”。這個C文件就是您后面要編寫C語言源代碼的源文件,現(xiàn)在已經(jīng)在你的工程文件夾里了。

 

 

圖9

三.添加C文件到工程

雖然“LED.c”這個文件已經(jīng)在您的工程文件夾里,但還不屬于你的工程文件,如果您不把它添加到工程里去,它的存在對您這個工程沒有任何意義。接下來就是把C文件添加到您的工程里,讓它變成您的工程文件。右鍵點擊左邊工程窗口里的“Suorce Group 1”這個源文件夾,選“Add File to Group ‘Suorce Group 1’…”,跳出添加源文件對話框,找到剛才建立的“LED.c”文件,點擊“Add”按鈕后,再點擊“Close”按鈕退出,不要重復點擊,如圖10:

 

 

圖10

這時可以看到“Suorce Group 1”這個源文件下多了一個源文件“LED.c”,同時,右邊的文檔區(qū)的文件名也改變了,如圖11。

 

 

圖11

四.編寫C代碼

在空白的文檔區(qū)輸入如下C代碼:

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

#i nclude//包含頭文件

sbit led=P2^0;//定義位變量led,使其關聯(lián)單片機管腳P2.0

void Delayms(unsigned int t);//聲明延時函數(shù)

/////////////////////////////////////////////////////////////////////////////////

int main(void)//主函數(shù)(C語言程序入口函數(shù))

{

while(1)

{

led=0;//P2.0拉低,點亮LED

Delayms(500);//調(diào)用延時函數(shù),延時500毫秒

led=1;//P2.0拉高,熄滅LED

Delayms(500);//調(diào)用延時函數(shù),延時500毫秒

}

return 0;

}

//////////////////////////////////////////////////////////////////////////////////

void Delayms(unsigned int t)//定義延時函數(shù)

{

unsigned int i,j;

for(i=0;i

for(j=0;j<120;j++);//大約延時1毫秒

}

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

這是一個常用的指示燈閃爍的程序,輸入完成以后,先不要馬上編譯,還需要作一些設置。

五.工程選項設置

這一步主要是設置時鐘頻率和產(chǎn)生HEX文件這兩項。進入工程選項有兩個途徑:從“Project”菜單進入和直接點擊工具欄快捷按鈕進入。這里使用工具欄快捷按鈕進入,點擊第二條工具欄的第7個按鈕(Target Opsions…),跳出選項對話框,默認選項卡為“Target”,如圖12,將晶振頻率設為你目標板所使用的晶振頻率,這里設為12.0;再點擊“Output”選項卡,將“Create HEX File ”復選框打勾,這個項設置絕不能忽略,否則您的工程就沒有 HEX文件產(chǎn)生。其他選項保持默認。最后點擊“OK”按鈕,完成選項設置。

 

 

圖12

六.編譯工程產(chǎn)生HEX文件

點擊第二條工具欄的第三個按鈕(Rebuild),工程便進入編譯鏈接狀態(tài),“Build Output”信息欄就會出現(xiàn)相關的編譯信息,如圖13。從該信息欄可以知道程序的大小,使用了的多少內(nèi)部RAM和外部RAM、生成多少個代碼、是否生成HEX文件、有多少個錯誤和警告等信息。如果有錯誤,目標文件將不會被創(chuàng)建,只要雙擊錯誤信息,光標就會跳到C文檔錯誤代碼的行號或錯誤代碼的附近,方便您排查錯誤。

 

 

圖13

七.將HEX文件下載到單片機

編譯通過的C代碼,在工程文件夾下就會生成很多文件,其中有兩個文件是最重要的,一個是擴展名為“.c”文件“LED.c”,這是移植程序用的C源文件,是程序的核心,擁有這個文件就相當于擁有整個程序;另一個是擴展名為“.hex”的文件“LED.hex”,這是下載程序用的文件。這兩個文件都可以用記事本打開。“LED.hex”文件是采用Intel hex文件格式存儲程序代碼的。下載程序的時用下載軟件打開這個hex文件,將文件里的程序代碼提取出來寫入單片機的程序存儲區(qū)里。

在下載單片機程序之前,您需要構建一個單片機最小系統(tǒng),請參閱筆者的《學單片機從構建最小系統(tǒng)開始》一文。下載軟件使用WSFISP軟件,也可以用AtmelISP軟件。下載線可根據(jù)筆者提供的原理圖自己DIY,也可以購買。51單片機程序下載軟件操作都很簡單,本文不再敘述。

擴展閱讀:單片機程序架構詳解

編輯:admin  最后修改時間:2018-05-19

聯(lián)系方式

0755-82591179

傳真:0755-82591176

郵箱:vicky@yingtexin.net

地址:深圳市龍華區(qū)民治街道民治大道973萬眾潤豐創(chuàng)業(yè)園A棟2樓A08

Copyright © 2014-2023 穎特新科技有限公司 All Rights Reserved.  粵ICP備14043402號-4