單片機(jī)C語(yǔ)言1課件_第1頁(yè)
單片機(jī)C語(yǔ)言1課件_第2頁(yè)
單片機(jī)C語(yǔ)言1課件_第3頁(yè)
單片機(jī)C語(yǔ)言1課件_第4頁(yè)
單片機(jī)C語(yǔ)言1課件_第5頁(yè)
已閱讀5頁(yè),還剩56頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、單片機(jī)C語(yǔ)言開(kāi)發(fā)軟件及工具1本講主要內(nèi)容1. C51概述2. KEIL C51快速入門(mén)3. Proteus 快速入門(mén)2單片機(jī)入門(mén)主要掌握以下知識(shí)和應(yīng)用最小系統(tǒng)能夠運(yùn)行起來(lái)的必要條件。 1.電源 2.晶振3.復(fù)位電路對(duì)單片機(jī)任意IO口的隨意操作 1.輸出控制電平高低2.輸入檢測(cè)電平高低。定時(shí)器:重點(diǎn)掌握最常用的方式2中斷:外部中斷、定時(shí)器中斷、串口中斷串口通信:?jiǎn)纹瑱C(jī)之間、單片機(jī)與計(jì)算機(jī)間3C51簡(jiǎn)介C語(yǔ)言是一種編譯型程序設(shè)計(jì)語(yǔ)言,它兼顧了多種高級(jí)語(yǔ)言的特點(diǎn),并具備匯編語(yǔ)言的功能。目前,使用C語(yǔ)言進(jìn)行程序設(shè)計(jì)已經(jīng)成為軟件開(kāi)發(fā)的一個(gè)主流。用C語(yǔ)言開(kāi)發(fā)系統(tǒng)可以大大縮短開(kāi)發(fā)周期,明顯增強(qiáng)程序的可讀性,

2、便于改進(jìn)、擴(kuò)充和移植。而針對(duì)89C51的C語(yǔ)言開(kāi)發(fā)日趨成熟,成為了專業(yè)化的實(shí)用高級(jí)語(yǔ)言。4C語(yǔ)言開(kāi)發(fā)相比匯編語(yǔ)言的特點(diǎn)1.對(duì)單片機(jī)的指令系統(tǒng)不要求了解,僅要求對(duì)單片機(jī)的存貯器結(jié)構(gòu)有初步了解;2.寄存器分配、不同存貯器的尋址及數(shù)據(jù)類型等細(xì)節(jié)可由編譯器管理;3.程序有規(guī)范的結(jié)構(gòu),可分成不同的函數(shù),這種方式可使程序結(jié)構(gòu)化;4.提供的庫(kù)包含許多標(biāo)準(zhǔn)子程序,具有較強(qiáng)的數(shù)據(jù)處理能力;5.由于具有方便的模塊化編程技術(shù),使已編好程序可容易地移植。6C語(yǔ)言的基本數(shù)據(jù)類型類型符號(hào)關(guān)鍵字?jǐn)?shù)的表示范圍所占位數(shù)整型字符型實(shí)型有無(wú)(signed) int16-3276832767(signed) short16-3276

3、832767(signed) long32-2147483648214748364716unsigned int0655353204294967295unsigned long intunsigned short int16065535有float323.4e-383.4e38有double641.7e-3081.7e308有char8-128127無(wú)unsigned char802557C51包含的頭文件通常有:reg51.h reg52.h math.h ctype.h stdio.h stdlib.h absacc.h常用有:reg51.h reg52.h (定義特殊功能寄存器和位寄存器

4、); math.h (定義常用數(shù)學(xué)運(yùn)算); 9C51的運(yùn)算符與C語(yǔ)言基本相同:+ - * / (加 減 乘 除) = (位右移 位左移)& | (按位與 按位或) (按位異或 按位取反)10C51的基本語(yǔ)句 與標(biāo)準(zhǔn)C語(yǔ)言基本相同: if 選擇語(yǔ)言 while 循環(huán)語(yǔ)言 for 循環(huán)語(yǔ)言 switch/case 多分支選擇語(yǔ)言 do-while 循環(huán)語(yǔ)言 11 While (表達(dá)式)語(yǔ)句(內(nèi)部也可為空)特點(diǎn):先判斷表達(dá)式,后執(zhí)行語(yǔ)句。原則:若表達(dá)式不是0,即為真,那么執(zhí)行語(yǔ)句。否則跳出while 語(yǔ)句。12 For (表達(dá)式1;表達(dá)式2;表達(dá)式3) 語(yǔ)句(內(nèi)部可為空)執(zhí)行過(guò)程:1.求解一次表達(dá)式

5、1.2.求解表達(dá)式2,若其值為真(非0 即為真),則執(zhí)行for中語(yǔ)句。然后執(zhí)行第3步。否則結(jié)束for 語(yǔ)句,直接跳出,不再執(zhí)行第3步。3.求解表達(dá)式3.4.跳到第2步重復(fù)執(zhí)行。13中斷服務(wù)程序函數(shù)名()interrupt n using m函數(shù)內(nèi)部實(shí)現(xiàn) . I/O口定義sbit beep=P23;14Keil C51軟件快速入門(mén) 進(jìn)入 Keil C51 后,屏幕如下圖所示。幾秒鐘后出現(xiàn)編輯界面,如圖2。如圖1啟動(dòng)Keil C51時(shí)的屏幕圖1 啟動(dòng)Keil C51時(shí)的屏幕圖2 進(jìn)入Keil C51后的編輯界面16 1、建立一個(gè)新工程 單擊Project菜單,在彈出的下拉菜單中選中New Proj

6、ect選項(xiàng),如圖3所示。圖3 新建工程文件17 3、這時(shí)會(huì)彈出一個(gè)對(duì)話框,要求你選擇單片機(jī)的型號(hào),你可以根據(jù)你使用的單片機(jī)來(lái)選擇,keil c51幾乎支持所有的51內(nèi)核的單片機(jī), 如圖所示,選擇89C51之后,右邊欄是對(duì)這個(gè)單片機(jī)的基本的說(shuō)明,然后點(diǎn)擊確定。圖5 選擇單片機(jī)的型號(hào)194、完成上一步驟后,屏幕如圖6所示。圖6 完成新建工程文件20 下面可以編寫(xiě)程序。 5、在圖2-7中,單擊“File”菜單,再在下拉菜單中單擊“New”選項(xiàng)。新建文件后屏幕如圖8所示。圖7 新建文檔圖8 完成 新建文檔21 此時(shí)光標(biāo)在編輯窗口里閃爍,這時(shí)可以鍵入應(yīng)用程序了,建議首先保存該空白的文件,單擊菜單上的“F

7、ile”,在下拉菜單中選中“Save As”選項(xiàng)單擊,屏幕如下圖所示,在“文件名”欄右側(cè)的編輯框中,鍵入欲使用的文件名,用C語(yǔ)言編寫(xiě)擴(kuò)展名為(.c)如果用匯編語(yǔ)言編寫(xiě)擴(kuò)展名必須為(.asm)。然后,單擊“保存”按鈕。 如圖8所示。圖8 保存新建文檔22 6、回到編輯界面后,單擊“Target 1”前面的“”號(hào),然后在“Source Group 1”上單擊右鍵,彈出菜單9。圖9 打開(kāi)添加文檔界面23 然后單擊“Add File to Group Source Group 1”,屏幕如圖10所示。 圖10 添加文檔24Proteus 快速入門(mén) Proteus軟件和我們手頭的其他電路設(shè)計(jì)仿真軟件最大

8、的不同即它的功能不是單一的。它的強(qiáng)大的元件庫(kù)可以和任何電路設(shè)計(jì)軟件相媲美;它的電路仿真功能可以和Multisim相媲美,且獨(dú)特的單片機(jī)仿真功能是Multisim及其他任何仿真軟件都不具備的;它的PCB電路制版功能可以和Protel相媲美。它的功能不但強(qiáng)大,而且每種功能都毫不遜于Protel,是學(xué)習(xí)電子設(shè)計(jì)難得的一個(gè)工具軟件。26ISIS智能原理圖輸入系統(tǒng),系統(tǒng)設(shè)計(jì)與仿真的基本平臺(tái)。ARES 高級(jí)PCB布線編輯軟件。在Proteus中,從原理圖設(shè)計(jì)、單片機(jī)編程、系統(tǒng)仿真到PCB設(shè)計(jì)一氣呵成,真正實(shí)現(xiàn)了從概念到產(chǎn)品的完整設(shè)計(jì)。Proteus 從原理圖設(shè)計(jì)到PCB設(shè)計(jì),再到電路板完成的流程如圖所示。

9、27單片機(jī)交互仿真實(shí)例29Proteus與Keil的聯(lián)調(diào)30Proteus的PCB三維預(yù)覽31Proteus啟動(dòng)畫(huà)面32我們都知道,學(xué)習(xí)軟件的最大困惑是,想一下子能夠上手,但看到層層疊疊的英文菜單和詳而又細(xì)的教程卻望而生畏,最后會(huì)因沒(méi)有足夠的耐心而失去興趣,半途而廢。其實(shí),對(duì)于初學(xué)者,我們不必了解軟件的全部功能,只要能夠把握它的核心和宗旨的東西,拿來(lái)就能用,能快速玩轉(zhuǎn),是最開(kāi)心不過(guò)的了。至于內(nèi)部的詳細(xì)功能,在有了興趣和信心之后,再具體學(xué)習(xí)即可。我們先從最簡(jiǎn)單的電路入手,來(lái)設(shè)計(jì)一個(gè)電容充放電電路,并通過(guò)電路仿真觀察其電流流向和燈的亮滅。大家跟我做,一步一步來(lái),一會(huì)兒你會(huì)找到一種成就感。 PROT

10、EUS跟我做331. 元件的拾取在桌面上選擇【開(kāi)始】【程序】“Proteus 7 Professional”,單擊藍(lán)色圖標(biāo)“ISIS 7 Professional”打開(kāi)應(yīng)用程序。ISIS Professional的編輯界面如圖所示。圖1-14 ISIS Professional的編輯界面34在彈出的對(duì)話框中選擇“No”,選中“以后不再顯示此對(duì)話框”,關(guān)閉彈出提示。本例所用到的元件清單如表所示。35 用鼠標(biāo)左鍵單擊界面左側(cè)預(yù)覽窗口下面的“P”按鈕,彈出“Pick Devices”(元件拾取)對(duì)話框,如圖所示。36ISIS 7 Professional的元件拾取就是把元件從元件拾取對(duì)話框中拾取到圖

11、形編輯界面的對(duì)象選擇器中。元件拾取共有兩種辦法。(1) 按類別查找和拾取元件元件通常以其英文名稱或器件代號(hào)在庫(kù)中存放。我們?cè)谌∫粋€(gè)元件時(shí),首先要清楚它屬于哪一大類,然后還要知道它歸屬哪一子類,這樣就縮小了查找范圍,然后在子類所列出的元件中逐個(gè)查找,根據(jù)顯示的元件符號(hào)、參數(shù)來(lái)判斷是否找到了所需要的元件。雙擊找到的元件名,該元件便拾取到編輯界面中了。37按照表中的順序來(lái)依次拾取元件。首先是充電電容CAPACITOR,在打開(kāi)的元件對(duì)話框中,在“Category”類中選中“Capacitors”電容類,在下方的“Sub-category”(子類)中選中“Animated”(可動(dòng)畫(huà)演示),查詢結(jié)果元件列

12、表中只有一個(gè)元件,即我們要找的CAPACITOR,雙擊元件名,元件即被選入編輯界面的元件區(qū)中了,。如圖單擊一個(gè)元件后單擊右下角的“OK”,元件拾取后對(duì)話框關(guān)閉。連續(xù)取元件時(shí)不要單擊“OK”按鈕,直接雙擊元件名可繼續(xù)。拾取元件對(duì)話框共分四部分,左側(cè)從上到下分別為直接查找時(shí)的名稱輸入、分類查找時(shí)的大類列表、子類列表和生產(chǎn)廠家列表。中間為查到的元件38列表。右側(cè)自上而下分別為元件圖形和元件封裝,圖中的元件沒(méi)有顯示封裝。39(2) 直接查找和拾取元件把元件名的全稱或部分輸入到Pick Devices(元件拾取)對(duì)話框中的“Keywords”欄,在中間的查找結(jié)果“Results”中顯示所有電容元件列表,

13、用鼠標(biāo)拖動(dòng)右邊的滾動(dòng)條,出現(xiàn)灰色標(biāo)示的元件即為找到的匹配元件,如后所示。這種方法主要用于對(duì)元件名熟悉之后,為節(jié)約時(shí)間而直接查找。對(duì)于初學(xué)者來(lái)說(shuō),還是分類查找比較好,一是不用記太多的元件名,二是對(duì)元件的分類有一個(gè)清楚的概念,利于以后對(duì)大量元件的拾取。40直接拾取元件示意圖41按照電容的拾取方法,依次把五個(gè)元件拾取到編輯界面的對(duì)象選擇器中,然后關(guān)閉元件拾取對(duì)話框。元件拾取后的界面如圖所示。42下面把元件從對(duì)象選擇器中放置到圖形編輯區(qū)中。用鼠標(biāo)單擊對(duì)象選擇區(qū)中的某一元件名,把鼠標(biāo)指針移動(dòng)到圖形編輯區(qū),雙擊鼠標(biāo)左鍵,元件即被放置到編輯區(qū)中。電阻要放置兩次,因?yàn)楸纠杏玫絻蓚€(gè)電阻。放置后的界面如圖所示。

14、432. 編輯窗口視野控制 學(xué)會(huì)合理控制編輯區(qū)的視野是元件編輯和電路連接進(jìn)行前的首要工作。編輯窗口的視野平移可用以下方法:在原理圖編輯區(qū)的藍(lán)色方框內(nèi),把鼠標(biāo)指針?lè)胖迷谝粋€(gè)地方后,按下“F5”,則以鼠標(biāo)指針為中心顯示圖形。當(dāng)圖形不能全部顯示出來(lái)時(shí),按住“Shift”鍵,移動(dòng)鼠標(biāo)指針到上、下、左、右邊界,則圖形自動(dòng)平移??焖亠@示想要顯示的圖形部分時(shí),把鼠標(biāo)指向左上預(yù)覽窗口中某處,并單擊鼠標(biāo)左鍵,則編輯窗口內(nèi)圖形自動(dòng)移動(dòng)到指定位置。44另外還有兩個(gè)圖標(biāo), 用于顯示整個(gè)圖形, 以鼠標(biāo)所選窗口為中心顯示圖形。編輯窗口的視野縮放用以下方法:先把鼠標(biāo)指針?lè)胖玫皆韴D編輯區(qū)內(nèi)的藍(lán)色框內(nèi),上下滾動(dòng)鼠標(biāo)滾輪即可縮

15、放視野。如果沒(méi)有鼠標(biāo)滾輪,可使用圖標(biāo) 和 來(lái)放大和縮小編輯窗口內(nèi)的圖形。放置鼠標(biāo)指針到編輯窗口內(nèi)想要放大或縮小的地方,按“F6”(放大)或“F7”(縮小)放大或縮小圖形,按“F8”顯示整個(gè)圖形。按住“Shift”鍵,在編輯窗口內(nèi)單擊鼠標(biāo)左鍵,拖出一個(gè)欲顯示的窗口。453. 元件位置的調(diào)整和參數(shù)的修改 在編輯區(qū)的元件上單擊鼠標(biāo)左鍵選中元件(為紅色),在選中的元件上再次單擊鼠標(biāo)右鍵則刪除該元件,而在元件以外的區(qū)域內(nèi)單擊右鍵則取消選擇。元件誤刪除后可用圖標(biāo) 找回。單個(gè)元件選中后,單擊鼠標(biāo)左鍵不松可以拖動(dòng)該元件。群選使用鼠標(biāo)左鍵拖出一個(gè)選擇區(qū)域,使用圖標(biāo) 來(lái)整體移動(dòng)。使用圖標(biāo) 可整體復(fù)制,圖標(biāo) 用來(lái)刷

16、新圖面。46按圖所示元件位置布置好元件。使用界面左下方的四個(gè)圖標(biāo) 、 、 、 可改變?cè)姆较蚣皩?duì)稱性。把兩位開(kāi)關(guān)調(diào)整成圖示的方位。47先存一下盤(pán)。建立一個(gè)名為Proteus的目錄,選主菜單FileSave Design As,在打開(kāi)的對(duì)話框中把文件保存為Proteus目錄下的“Cap1.DSN”,只用輸入“Cap1”,擴(kuò)展名系統(tǒng)自動(dòng)添加。下面改變?cè)?shù)。左鍵雙擊原理圖編輯區(qū)中的電阻R1,彈出“Edit Component”(元件屬性設(shè)置)對(duì)話框,把R1的Resistance(阻值)由10k改為1k,把R2的阻值由10k改為100(缺省單位為)。48Edit Component(元件屬性設(shè)置

17、)對(duì)話框如圖所示。49注意到每個(gè)元件的旁邊顯示灰色的“”,為了使電路圖清晰,可以取消此文字顯示。雙擊此文字,打開(kāi)一個(gè)對(duì)話框,如圖1-22所示。在該對(duì)話框中選擇“Style”,先取消選擇“Visible”右邊的“Follow Global”選項(xiàng),再取消選擇“Visible”選項(xiàng),單擊“OK”即可。50“TEXT”屬性設(shè)置對(duì)話框51也可在元件調(diào)用前,直接選擇主菜單中的【Template】【Set Design Defaults】打開(kāi)畫(huà)圖模板設(shè)置選項(xiàng),如圖所示。52接著出現(xiàn)Edit Design Defaults(編輯模板設(shè)計(jì))對(duì)話框,如圖所示。在“Show hidden text”選項(xiàng)中把對(duì)勾去掉

18、,然后單擊“OK”即可。每個(gè)元件的旁邊不再顯示灰色的“”。編輯模板設(shè)計(jì)對(duì)話框534. 電路連線 電路連線采用按格點(diǎn)捕捉和自動(dòng)連線的形式。 連線完成后,如果再想回到拾取元件狀態(tài),按下左側(cè)工具欄中的“元件拾取圖標(biāo)即可。54 連接好的電路原理圖 重新回到元件拾取界面 555. 電路的動(dòng)態(tài)仿真前面我們已經(jīng)完成了電路原理圖的設(shè)計(jì)和連接,下面來(lái)看看電路的仿真效果。首先在主菜單“System”“Set Animation Options”中設(shè)置仿真時(shí)電壓及電流的顏色及方向,如圖所示。56Animated Circuits Configuration對(duì)話框57在隨后打開(kāi)的對(duì)話框中,選擇“Show Wire Voltage by Colour”和“Show Wire Current with Arrows”兩項(xiàng),即選擇導(dǎo)線以紅、藍(lán)兩色來(lái)表示電壓的高低,以箭頭標(biāo)示來(lái)表示電流的流向。單擊Proteus ISIS環(huán)境中左下方的仿真控制按鈕 中的運(yùn)行按鈕,開(kāi)始仿真。仿真開(kāi)始后,用鼠標(biāo)單擊圖中的開(kāi)關(guān),使其先把電容與電源接通。能清楚地看到電容充電的效果。接著單擊開(kāi)關(guān),使其把電容與燈連通??吹綗糸W了一下。由于充電時(shí)間常數(shù)為1秒,放電時(shí)間常

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論