www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當前位置:首頁 > 單片機 > 單片機
[導讀]如何開始編寫一個簡單的單片機程序呢?接下來就來介紹一下步驟和方法以便更快更好的編寫出來單片機程序。

編寫一個單片機程序需要七步,

1.建立工程;對于單片機程序來說,每個功能程序,都必須要有一個配套的工程(Project)。點擊:Project-->New uVision Project...然后會出現(xiàn)一個新建工程的界面。選擇工程放置位置,(位置是任意的,建議不要放在系統(tǒng)盤)并在根目錄創(chuàng)建文件夾,用來放置工程文件,我們將它命名為LED,軟件會自動添加擴展名.uvproj。我們可以直接點保存,工程會自動保存成 LED.uvproj 文件,下次要打開 LED 這個工程時,可以直接找到文件夾,雙擊這個.uvproj 文件就可以直接打開了。保存之后會彈出一個對話框,這個對話框讓我們選擇單片機型號。找到Atmel單片機,選擇AT89S52. 點擊 OK 之后,會彈出一個對話框每個工程都需要一段啟動代碼,如果點“否”編譯器會自動處理這個問題,如果點“是”,這部分代碼會提供給我們用戶,我們就可以按需要自己去處理這部分代碼,那這部分代碼在我們初學 51 的這段時間內(nèi),一般是不需要去修改的,但是隨著技術(shù)的提高和知識的擴展,我們就有可能會需要了解這塊內(nèi)容,到時候我們選擇是就好了。在這里我們不需要太多復雜的內(nèi)容,所以我們就點擊否就好了。此時,我們會發(fā)現(xiàn)keil uVision4界面左邊的工程窗口里多了一個目標文件夾“Target 1”,其下有一個源文件組文件夾“Suorce Group 1”。

2.建立C文件;“Suorce Group 1”這個源文件夾下還沒有任何文件。接下來就是創(chuàng)建一個C文件。我們要建立編寫代碼的文件,點擊“File”菜單,選擇“New”,,新建一個文件,也就是我們編寫程序的平臺。然后點 “File”“Save ”或者直接點擊那個 Save 的快捷鍵,可以保存文件,保存時我們把它命名為 LED.c。(注意我們必須要命名成.c)這個地方的擴展名是.asm,頭文件就是.h 等等,我們編寫的是 C 語言程序,這個地方必須自己添加文件的擴展名.c

3.添加C文件到工程;雖然“LED.c”這個文件已經(jīng)在我們的工程文件夾里,但還不屬于我們的工程文件,如果不把它添加到工程里去,它的存在對這個工程將沒有任何意義。接下來就是把C文件添加到工程里,讓它變成我們的工程文件。鼠標右鍵點 Source Group 1,點 Add Files to Group?Source Group 1?...在彈出的對話框中,單擊 LED.c 選中它,然后點 Add,然后單擊 Close,關(guān)閉添加。這個時候大家會看到在 Source Group 1下邊又多了一個 LED.c 文件。

4.編寫C代碼

#include <reg52.h>  //包含特殊功能寄存器定義的頭文件

sbit LED = P0^0;     //位地址聲明,注意:sbit 必須小寫、P 大寫!

void main(){        //任何一個 C 程序都必須有且僅有一個 main 函數(shù)

while(1){         //循環(huán)

LED = 0;   //分號表示一條語句結(jié)束

}

}

該程序的功能是程序在反復不斷的無限次執(zhí)行 LED = 0;這條語句。


5.設置目標工程的選項;這一步主要是設置時鐘頻率和產(chǎn)生HEX文件這兩項。在編譯之前,我們先要勾選一個選項,“Project”“Options for Target” ?Target1?...,在彈出的對話框中,點擊 Output 選項頁,勾選其中的“Create HEX File”復選框,然后點 OK。

6.編譯工程產(chǎn)生HEX文件;點擊第二條工具欄的第三個按鈕(Rebuild),工程便進入編譯鏈接狀態(tài),編譯完成后,在我們的 Keil 下方的 Output 窗口會出現(xiàn)相應的提示。

7.將HEX文件下載到單片機;以上步驟完成后我們只需要下載我們的程序就可以了。

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

在嵌入式系統(tǒng)開發(fā)中,時間戳的獲取是一項基礎(chǔ)而關(guān)鍵的功能。時間戳,即表示某一瞬間的時間點的唯一標識,通常以自某一固定時間點(如Unix紀元,即1970年1月1日00:00:00 UTC)以來的秒數(shù)或毫秒數(shù)表示。它不僅在日志...

關(guān)鍵字: 嵌入式系統(tǒng)開發(fā) C代碼 時間戳 Unix

關(guān)注、星標公眾號,直達精彩內(nèi)容文章來源:segmentfault作者:Ethson【導讀】:樹是數(shù)據(jù)結(jié)構(gòu)中的重中之重,尤其以各類二叉樹為學習的難點。在面試環(huán)節(jié)中,二叉樹也是必考的模塊。本文主要講二叉樹操作的相關(guān)知識,梳理...

關(guān)鍵字: C代碼 BSP ORDER WHILE

【導讀】:樹是數(shù)據(jù)結(jié)構(gòu)中的重中之重,尤其以各類二叉樹為學習的難點。在面試環(huán)節(jié)中,二叉樹也是必考的模塊。本文主要講二叉樹操作的相關(guān)知識,梳理面試??嫉膬?nèi)容。請大家跟隨小編一起來復習吧。本文針對面試中常見的二叉樹操作做個總結(jié)...

關(guān)鍵字: C代碼 ORDER WHILE RETURN

關(guān)注「Linux大陸」,一起進步!繼?300來行代碼帶你實現(xiàn)一個能跑的最小Linux文件系統(tǒng)?之后,我們來看看如何60行C代碼實現(xiàn)一個shell!在實現(xiàn)它之前,先看看這樣做的意義。美是有目共睹的。Unix之美,稍微體會,...

關(guān)鍵字: shell C代碼

來源:公眾號【編程珠璣】作者:守望先生前言如何在C代碼中調(diào)用寫好的C接口?你可能會奇怪,C不是兼容C嗎?直接調(diào)用不就可以了?這里我們先按下不表,先看看C如何調(diào)用C代碼接口。C如何調(diào)用C接口為什么會有這樣的情況呢?想象一下...

關(guān)鍵字: C代碼

今天跟大家分享三種表驅(qū)動設計的方法,都非常的精妙,值得收藏和細品。

關(guān)鍵字: 表驅(qū)動 靜態(tài)結(jié)構(gòu)體 C代碼

▍很懶很操心 有一次,我在項目開發(fā)中想監(jiān)控某段空間數(shù)據(jù)的大小,即這段空間在MCU中非常有限,希望每個版本在集成軟件的時候都想獲取其使用了多少空間,防止某些愣頭青不珍惜內(nèi)存,亂塞東西。而這段空間,我定義了一個神一樣的結(jié)構(gòu)體...

關(guān)鍵字: C代碼

為了優(yōu)化鉆井流程并降低作業(yè)成本,Baker Hughes的動力學與遙測(Dynamics & Telemetry)小組開發(fā)了一個序列預測算法,用于在鉆井作業(yè)期間快速可靠的解碼井下數(shù)據(jù)。這個已集成

關(guān)鍵字: C代碼 編碼 自動代碼生成 馬爾可夫鏈

  本文講解的是飛思卡爾軟件開發(fā)C語言編碼規(guī)范。來自于痞子衡嵌入式公眾號,下面是編碼規(guī)范原文: 1.引言   制定此編碼風格指導手冊的目的是為了使按此規(guī)范編寫出的C/C++代碼極易被閱讀和理解。 2.與其他編碼風格對比...

關(guān)鍵字: 軟件開發(fā) MCU 半導體 C代碼

1. 不能清晰理解“==”運算以及優(yōu)先級和結(jié)核性的含義在判斷i,j,k三個變量是否相等時往往會輕率地寫出“i == j == k ”這樣的表達式并誤以為三個變量

關(guān)鍵字: C語言 RSQUO IP C代碼
關(guān)閉