0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

單片機C語言有哪些優(yōu)越性?如何建立一個Keil C51項目

Wildesbeast ? 來源:未知 ? 2019-09-08 11:43 ? 次閱讀

隨著單片機技術(shù)的不斷發(fā)展,以單片機C語言為主流的高級語言也不斷被更多的單片機愛好者和工程師所喜愛。使用C51肯定要使用到編譯器,以便把寫好的C程序編譯為機器碼,這樣單片機才能執(zhí)行編寫好的程序。KEIL uVISION2 是眾多單片機應(yīng)用開發(fā)軟件中優(yōu)秀的軟件之一,它支持眾多不一樣公司的MCS51架構(gòu)的芯片,它集編輯,編譯,仿真等于一體,同時還支持,PLM,匯編和C語言的程序設(shè)計,它的界面和常用的微軟 VC++的界面相似,界面友好,易學(xué)易用,在調(diào)試程序,軟件仿真方面也有很強大的功能。本站提供的單片機c語言教程都是基于keilc51的。

下面結(jié)合8051介紹單片機C語言的優(yōu)越性:

·無須懂得單片機的具體硬件,也能夠編出符合硬件實際的專業(yè)水平的程序;

·不懂得單片機的指令集,也能夠編寫完美的單片機程序;

·不同函數(shù)的數(shù)據(jù)實行覆蓋,有效利用片上有限的RAM空間;

·提供auto、static、const等存儲類型和專門針對8051單片機的data、idata、pdata、xdata、code等存儲類型,自動為變量合理地分配地址;

·C語言提供復(fù)雜的數(shù)據(jù)類型(數(shù)組、結(jié)構(gòu)、聯(lián)合、枚舉、指針等),極大地增強了程序處理能力和靈活性;

·提供small、compact、large等編譯模式,以適應(yīng)片上存儲器的大??;

·中斷服務(wù)程序的現(xiàn)場保護和恢復(fù),中斷向量表的填寫,是直接與單片機相關(guān)的,都由C編譯器代辦;

·程序具有堅固性:數(shù)據(jù)被破壞是導(dǎo)致程序運行異常的重要因素。C語言對數(shù)據(jù)進行了許多專業(yè)性的處理,避免了運行中間非異步的破壞

·提供常用的標(biāo)準(zhǔn)函數(shù)庫,以供用戶直接使用;

·有嚴(yán)格的句法檢查,錯誤很少,可容易地在高級語言的水平上迅速地被排掉;

·可方便地接受多種實用程序的服務(wù):如片上資源的初始化有專門的實用程序自動生成;再如,有實時多任務(wù)操作系統(tǒng)可調(diào)度多道任務(wù),簡化用戶編程,提高運行的安全性等等。

·頭文件中定義宏、說明復(fù)雜數(shù)據(jù)類型和函數(shù)原型,有利于程序的移植和支持單片機的系列化產(chǎn)品的開發(fā);

以上簡單介紹了 KEILC51 軟件,要使用KEILC51軟件,必需先要安裝它,這也是學(xué)習(xí)單片機編程語言所要求的第一步――建立學(xué)習(xí)環(huán)境。

安裝好后,您是不是想建立自己的第一個單片機C語言程序項目呢?下面就讓我們一起來建立一個小程序吧,請根據(jù)教程一步步的來,你絕對可以在短時間內(nèi)熟悉c51的。

首先當(dāng)然是運行KEIL軟件,接著按下面的步驟建立您的第一個項目:

(1)點擊 Project 菜單,選擇彈出的下拉式菜單中的 New Project,如圖 1-2。接著彈 出一個標(biāo)準(zhǔn) Windows 文件對話窗口,如圖 1-3。在“文件名”中輸入您的第一個 C 程序項 目名稱,這里我們用“test”?!氨4妗焙蟮奈募U展名為 uv2,這是 KEIL uVision2 項目文件擴展名,以后能直接點擊此文件以打開先前做的項目。

圖 1-2 New Project 菜單

圖 1-3 文件窗口

(2)選擇所要的單片機,這里選擇常用的 Ateml 公司的 AT89c51。而且本單片機c語言教程里的大部分程序都是基于此芯片的,此時屏幕如圖 1-4 所示。AT89c51 有什么功能、特點呢?看圖中右邊有簡單的介紹。完成上面步驟后,就可 以進行程序的編寫了。

(3)首先在項目中創(chuàng)建新的程序文件或加入舊程序文件。如果您沒有現(xiàn)成的程序,那 么就要新建一個程序文件。在 KEIL 中有一些程序的 Demo,在這里我們還是以一個 C 程序 為例介紹如何新建一個 C 程序和如何加到您的第一個項目中吧。點擊圖 1-5 中 1 的新建文 件的快捷按鈕,在 2 中出現(xiàn)一個新的文字編輯窗口,這個操作也能通過菜單 File-New 或 快捷鍵 Ctrl+N 來實現(xiàn)。好了,現(xiàn)在能編寫程序了。下面是經(jīng)典的一段程序,呵,如果您看過別的程序書也許也有類似的程序:

#include 《AT89X51.H》

#include 《stdio.h》

void main(void)

{

SCON = 0x50; //串口方式1,允許接收

TMOD = 0x20; //定時器1定時方式2

TCON = 0x40; //設(shè)定時器1開始計數(shù)

TH1 = 0xE8; //11.0592MHz 1200波特率

TL1 = 0xE8;

TI = 1;

TR1 = 1; //啟動定時器

while(1)

{

printf (“Hello World!\n”); //顯示Hello World

}

}

圖 1-4 選取芯片

圖 1-5 新建程序文件

這段程序的功能是不斷從串行口輸出“Hello World!”字符,先不管程序的語法和意思吧,先 看看如何把它加入到項目中和如何編譯試運行。

(4)點擊圖 1-5 中的 3 保存新建的程序,也能用菜單 File-Save 或快捷鍵 Ctrl+S

進行保存。因是新文件所以保存時會彈出類似圖 1-3 的文件操作窗口,把第一個程序命名

為 test1.c,保存在項目所在的目錄中,這個時候您會發(fā)現(xiàn)程序單詞有了不一樣的顏色,說明 KEIL的C語言語法檢查生效了。如圖 1-6 鼠標(biāo)在屏幕左邊的 Source Group1 文件夾圖標(biāo)上右擊彈出 菜單,在這里能做在項目中增加減少文件等操作。選“Add File to Group ‘Source Group 1’” 彈出文件窗口,選擇剛剛保存的文件,按 ADD 按鈕,關(guān)閉文件窗,程序文件已加到項目中了。這個時候在 Source Group1 文件夾圖標(biāo)左邊出現(xiàn)了一個小+號說明,文件組中有了文件,點擊它能展開查看。

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

(5)C程序文件已被加到了項目中了,下面就剩下編譯運行了。這個項目只是用做學(xué) 習(xí)新建程序項目和編譯運行仿真的基本方法,所以使用軟件默認(rèn)的編譯設(shè)置,它不會生成用 于芯片燒寫的 HEX 文件。先來看圖 1-7 吧,圖中 1、2、3 都是編譯按鈕,不一樣是 1 是用 于編譯單個文件。2 是編譯鏈接當(dāng)前項目,如果先前編譯過一次之后文件沒有做動編輯改動, 這個時候再點擊是不會再次重新編譯的。3 是重新編譯,每點擊一次均會再次編譯鏈接一次,不 管程序是否有改動。在 3 右邊的是停止編譯按鈕,只有點擊了前三個中的任一個,停止按鈕 才會生效。5 是菜單中的它們。在 4 中能看到編譯的錯誤信息和使用的系統(tǒng)資源情況等, 以后我們要查錯就靠它了。6 是有一個小放大鏡的按鈕,這就是開啟\關(guān)閉調(diào)試模式的按鈕, 它也存在于菜單 Debug-Start\Stop Debug Session,快捷鍵為 Ctrl+F5。

圖 1-7 編譯程序

(6)進入調(diào)試模式,軟件窗口樣式大致如圖 1-8 所示。圖中 1 為運行,當(dāng)程序處于停止 狀態(tài)時才有效,2 為停止,程序處于運行狀態(tài)時才有效。3 是復(fù)位,模擬芯片的復(fù)位,程序 回到最開頭處執(zhí)行。按 4 能打開 5 中的串行調(diào)試窗口,這個窗口能看到從 51 芯片的串 行口輸入輸出的字符,這里的第一個項目也正是在這里看運行結(jié)果。這些在菜單中也有。首 先按 4 打開串行調(diào)試窗口,再按運行鍵,這個時候就能看到串行調(diào)試窗口中不斷的打印“Hello World!”。最后要停止程序運行回到文件編輯模式中,就要先按停止按鈕再按開啟\關(guān)閉調(diào)試 模式按鈕。然后就能進行關(guān)閉 KEIL 等相關(guān)操作了。

圖 1-8 調(diào)試運行程序

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 單片機
    +關(guān)注

    關(guān)注

    6026

    文章

    44452

    瀏覽量

    630797
  • C語言
    +關(guān)注

    關(guān)注

    180

    文章

    7581

    瀏覽量

    135542
  • keil
    +關(guān)注

    關(guān)注

    68

    文章

    1208

    瀏覽量

    166444
收藏 人收藏

    評論

    相關(guān)推薦

    【跟我學(xué)單片機C語言建立屬于你的第一個KeilC51項目

    語言也不斷被更多的單片機愛好者和工程師所喜愛。使用C51肯定要使用到編譯器,以便把寫好的C程序編譯為機器碼,這樣單片機才能執(zhí)行編寫好的程序。
    發(fā)表于 11-29 11:05

    單片機C語言教程

    `建立你的第一個KeilC51項目  隨著單片機技術(shù)的不斷發(fā)展,以單片機
    發(fā)表于 12-19 10:13

    單片機C語言優(yōu)越性

    單片機為什么要使用C語言?8051介紹單片機C語言優(yōu)越性
    發(fā)表于 01-27 06:48

    單片機為什么要使用C語言單片機C語言優(yōu)越性是什么?

    單片機為什么要使用C語言單片機C語言優(yōu)越性是什么
    發(fā)表于 10-15 07:48

    單片機C語言優(yōu)越性是什么

    、概述1、結(jié)合8051介紹單片機C語言優(yōu)越性:·無須懂得單片機的具體硬件,也能夠編出符合硬件
    發(fā)表于 11-30 06:25

    Keil C51使用詳解

    Keil C51使用詳解Keil C51 是美國Keil Software 公司出品的51 系列
    發(fā)表于 03-09 14:48 ?85次下載

    Keil C51語言使用技巧及實戰(zhàn)

    Keil C51語言使用技巧及實戰(zhàn) 對于學(xué)習(xí)單片機剛?cè)胧值男』锇槎?,,絕對是大大的福利。 學(xué)就會,熟練掌握
    發(fā)表于 11-25 11:39 ?0次下載

    Keil C51語言使用技巧及實戰(zhàn)

    Keil C51語言使用技巧及實戰(zhàn)Keil C51語言使用技巧及實戰(zhàn)
    發(fā)表于 12-28 11:57 ?0次下載

    51單片機c51語言入門教程C語言入門教程

    51單片機c51語言入門教程,C語言入門教程
    發(fā)表于 08-29 15:02 ?32次下載

    KEIL、uVision、RealView、MDK、KEIL C51單片機何區(qū)別

    分享到:標(biāo)簽:Keil uVision RealView MDK Keil C51 單片機 從接觸MCS-51
    發(fā)表于 10-18 13:57 ?0次下載

    C51單片機C語言與標(biāo)準(zhǔn)C語言什么區(qū)別?

    C51單片機C語言)與標(biāo)準(zhǔn)C語言的區(qū)別1、
    發(fā)表于 10-09 08:00 ?134次下載
    <b class='flag-5'>C51</b><b class='flag-5'>單片機</b><b class='flag-5'>C</b><b class='flag-5'>語言</b>與標(biāo)準(zhǔn)<b class='flag-5'>C</b><b class='flag-5'>語言</b><b class='flag-5'>有</b>什么區(qū)別?

    Keil C51單片機變量的使用方法詳細(xì)介紹

    8051內(nèi)核單片機種通用單片機,在國內(nèi)占有較大的市場份額。在將C語言用于51內(nèi)核
    發(fā)表于 11-24 10:20 ?4585次閱讀
    <b class='flag-5'>Keil</b> <b class='flag-5'>C51</b><b class='flag-5'>單片機</b>變量的使用方法詳細(xì)介紹

    Keil C51單片機開發(fā)入門(第一個程序)

    Keil C51單片機開發(fā)入門(第一個程序)
    發(fā)表于 11-13 15:21 ?11次下載
    <b class='flag-5'>Keil</b> <b class='flag-5'>C51</b>與<b class='flag-5'>單片機</b>開發(fā)入門(第<b class='flag-5'>一個</b>程序)

    51單片機學(xué)習(xí)筆記4 C51語言

    C51語言??C51語言與標(biāo)準(zhǔn)C語言許多相同地方
    發(fā)表于 11-21 09:51 ?42次下載
    <b class='flag-5'>51</b><b class='flag-5'>單片機</b>學(xué)習(xí)筆記4 <b class='flag-5'>C51</b><b class='flag-5'>語言</b>

    1.Keil5兼容C51以及Keil4項目

    4項目時,有時會出現(xiàn)KEIL5卡死的情況的。1.2 需要的安裝包需要的安裝如下C51KEIL51開發(fā)版本的軟件包JLINK是STM32
    發(fā)表于 11-21 14:21 ?13次下載
    1.<b class='flag-5'>Keil</b>5兼容<b class='flag-5'>C51</b>以及<b class='flag-5'>Keil</b>4<b class='flag-5'>項目</b>