當(dāng)前位置:首頁 > 單片機(jī) > 單片機(jī)
[導(dǎo)讀]隨著單片機(jī)技術(shù)的不斷發(fā)展,以單片機(jī)C語言為主流的高級(jí)語言也不斷被更多的單片機(jī)愛好者和工程師所喜愛。使用C51肯定要使用到編譯器,以便把寫好的C程序編譯為機(jī)器碼,這樣單片機(jī)才能執(zhí)行編寫好的程序。KEIL uVISION2

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

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

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

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

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

  ·提供auto、static、const等存儲(chǔ)類型和專門針對(duì)8051單片機(jī)的data、idata、pdata、xdata、code等存儲(chǔ)類型,自動(dòng)為變量合理地分配地址;

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

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

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

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

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


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

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

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

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

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

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

(1)點(diǎn)擊 Project 菜單,選擇彈出的下拉式菜單中的 New  Project,如圖 1-2。接著彈 出一個(gè)標(biāo)準(zhǔn) Windows 文件對(duì)話窗口,如圖 1-3。在“文件名”中輸入您的第一個(gè) C 程序項(xiàng) 目名稱,這里我們用“test”。“保存”后的文件擴(kuò)展名為 uv2,這是 KEIL uVision2 項(xiàng)目文件擴(kuò)展名,以后能直接點(diǎn)擊此文件以打開先前做的項(xiàng)目。

圖 1-2    New Project 菜單

圖 1-3    文件窗口

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

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

#include <AT89X51.H>
#include <stdio.h>

void main(void)
{
 SCON = 0x50; //串口方式1,允許接收
 TMOD = 0x20; //定時(shí)器1定時(shí)方式2
 TCON = 0x40; //設(shè)定時(shí)器1開始計(jì)數(shù)
 TH1 = 0xE8; //11.0592MHz 1200波特率
 TL1 = 0xE8;
 TI = 1;
 TR1 = 1; //啟動(dòng)定時(shí)器
 
 while(1)
 printf (Hello World!n);; //顯示Hello World

圖 1-4 選取芯片

圖 1-5 新建程序文件

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

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

進(jìn)行保存。因是新文件所以保存時(shí)會(huì)彈出類似圖 1-3 的文件操作窗口,把第一個(gè)程序命名

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

圖 1-6 把文件加入到項(xiàng)目文件組中

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

圖 1-7 編譯程序

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


 

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

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

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉