日本高清不卡中文字幕-一起草草视频在线观看-亚洲精品一区二区三区色-国产亚洲精品免费视频

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

手把手教您編寫第一個(gè)單片機(jī)程序

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

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

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

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

 

 

圖1

一.建立工程

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

 

 

圖2

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

 

 

圖3

點(diǎn)擊“保存”按鈕,跳出器件選擇對(duì)話框,如圖4:

 

 

圖4

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

 

 

圖5

點(diǎn)擊“OK按鈕,”跳出提示對(duì)話框,如圖6:

 

 

圖6

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

 

 

圖7

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

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

 

 

圖8

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

 

 

圖9

三.添加C文件到工程

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

 

 

圖10

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

 

 

圖11

四.編寫C代碼

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

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

#i nclude//包含頭文件

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

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

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

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

{

while(1)

{

led=0;//P2.0拉低,點(diǎn)亮LED

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

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

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

}

return 0;

}

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

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

{

unsigned int i,j;

for(i=0;i

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

}

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

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

五.工程選項(xiàng)設(shè)置

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

 

 

圖12

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

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

 

 

圖13

七.將HEX文件下載到單片機(jī)

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

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

擴(kuò)展閱讀:?jiǎn)纹瑱C(jī)程序架構(gòu)詳解

編輯:admin  最后修改時(shí)間:2018-05-19

聯(lián)系方式

0755-82591179

傳真:0755-82591176

郵箱:vicky@yingtexin.net

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

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

克什克腾旗| 沭阳县| 武义县| 涿州市| 万盛区| 万盛区| 侯马市| 武清区| 青田县| 香港 | 天台县| 万宁市| 天台县| 宁河县| 上林县| 航空| 武穴市| 侯马市| 徐闻县| 富川| 秭归县| 岑巩县| 玛曲县| 和硕县| 南皮县| 瓦房店市| 临朐县| 衡阳县| 平武县| 彭山县| 内乡县| 邹城市| 安溪县| 临颍县| 五台县| 峨山| 蒙自县| 新兴县| 鸡东县| 西乌珠穆沁旗| 双峰县|