單片機復(fù)習(xí)提綱1_第1頁
單片機復(fù)習(xí)提綱1_第2頁
單片機復(fù)習(xí)提綱1_第3頁
單片機復(fù)習(xí)提綱1_第4頁
單片機復(fù)習(xí)提綱1_第5頁
已閱讀5頁,還剩7頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、單片機復(fù)習(xí)提綱一、項目準備篇(一)C51語言及語法1. 數(shù)據(jù)類型(1)常用數(shù)據(jù)類型名稱、占用字節(jié)數(shù)、取值范圍。如:char型 1字節(jié) -128+127int型 2字節(jié) -32768+32767等。 (2)sbit類型和bit類型的區(qū)別:前者可以定義特殊功能寄存器中的位,后者用于定義51單片機內(nèi)部位地址空間中的位。如: sbit P1_1=P11;bit flag;2. 變量定義和作用域(1)變量必須先定義后使用,變量的定義格式;(2)變量的作用域: 全局變量:在函數(shù)外部定義,函數(shù)可以用全局變量傳遞多個數(shù)據(jù)結(jié)果; 函數(shù)中用return只能傳遞一個數(shù)據(jù)結(jié)果。 局部變量:在函數(shù)內(nèi)部定義,函數(shù)外部不可

2、見。 (3)關(guān)鍵字的概念例:下列標識符中哪些是C51編程時使用的關(guān)鍵字?A、integer B、define C、breakD、sbit3. C51語言運算符要求對常用運算能熟練掌握。例題:(1)a=0xff,b=0x07, a | b = ?2)i=1234, k=i%10,k=?(3)設(shè)x=0x81,x=x<<2,x=0x04(4)a=0x77,b=0x99, a & b =0x11(5)P1=0x11,P1= 0xEE(6)a1=0xff,y = !a1, y= 1 (7)tmp=0x15,tmp=tmp>>4,tmp= 0x01(8)x=0x80,y=0

3、x7f, 則x && y = 1(9)a=0x1f,b=0x01,c = a + a|b + b%10= ? c = a + (a|b) + (b%10)= 0x30(10)i=0x21, y = -i ,y = i =0x21;i-;y=i;(11)i=0x21,y=i-,y=?i =0x21;y=i; i-;重點關(guān)注:/,%,+,-(+,-放在變量前與后之間的區(qū)別),按位運算,以及關(guān)系和邏輯運算中真/假的概念。4. C51語句和流程控制(1) for(; ;)語句合法嗎? 合法 for(; ;);(2)if(x=66) P0=0x12;表達的含義是什么?/P0 被無條件賦值

4、 0x12/ if(x = 66) P0=0x12;/ 在x等于66時,P0被賦值0x12(3)在C51語言中,循環(huán)語句結(jié)束的條件是什么?/ 循環(huán)條件不成立(4)形如while(TF0) 語句的書寫正確嗎?正確(5)分析下面程序的輸出結(jié)果。 main()int x=100,a=10,b=20,ok1=5,ok2=0; if(a<b) if(b!=15)if(!ok1) x=1;else if (ok2) x=10; x= -1; prinf(“%dn”, x ) ;/輸出打印x的值 等效:main()int x=100,a=10,b=20,ok1=5,ok2=0; if(a<b)

5、if(b!=15) if(!ok1) x=1;else if (ok2) x=10; x= -1; prinf(“%dn”, x ) ;/輸出打印x的值 5. 函數(shù)(1)函數(shù)與變量類似,必須先定義后使用,當(dāng)被調(diào)用函數(shù)定義在調(diào)用函數(shù)之后時,必須進行函數(shù)聲明;(本書例程中主函數(shù)均放置在最后,避免了函數(shù)聲明)(2)函數(shù)類型的意義;函數(shù)的返回值。int add();intsum;sum = add();int add().return(int)1;(3)主函數(shù)。例題:(1) C51源程序總是從哪里開始執(zhí)行的? Main函數(shù)(2) 若一個函數(shù)的返回類型為void,則該函數(shù)有返回值嗎? 無返回值(3)所有

6、定義在主函數(shù)之后的函數(shù)需要進行聲明嗎? 是(4)C51語言中,函數(shù)調(diào)用結(jié)束后通過return語句傳遞返回值可以有幾個? 只能一個(5)在用C51語言編寫單片機應(yīng)用程序時,可以用多個main()函數(shù)來實現(xiàn)不同的功能嗎? 不能6. 數(shù)組和頭文件(1)C51數(shù)組的下標是從0開始的。(2)包含頭文件的格式有2種,如:#include <reg52.h>與#include“reg52.h”(3)支持寫入單片機或仿真程序調(diào)試的目標程序的文件格式是xx.hex。二、項目準備篇(二)MCS-51單片機硬件結(jié)構(gòu)1. 單片機結(jié)構(gòu)(1)8051單片機CPU是幾位的? 8位(2)8051單片機共有幾個并口

7、?每個并口有幾位? P0(8)、P1(8)、P2(8)、P3(8)(3)CPU主要包括運算器和存儲器兩部分。 2. 存儲器(1)半導(dǎo)體存儲器分成RAM(數(shù)據(jù)存儲器)和ROM(程序存儲器)兩大類。其中前者具有易失性,常用于存儲臨時性數(shù)據(jù)。(2)從邏輯空間上看,MCS-51單片機存在幾個獨立的存儲器空間?片內(nèi)外統(tǒng)一編址 的程序存儲器,空間大小64kB片內(nèi)數(shù)據(jù)存儲器,空間大小256B片外數(shù)據(jù)存儲器,空間大小64kB(3)單片機應(yīng)用程序一般存放在什么存儲器中? 程序存儲器(4)存儲器分成片內(nèi)存儲和片外存儲兩大部分,其中89C51最大可支持的片外程序存儲器容量為多少?64kB(5)MCS-51單片機的程

8、序存儲器只能用來存放程序嗎?不是,例如const u8 tmp=,(6)在MCS-51單片機應(yīng)用系統(tǒng)中,為了使用片外程序存儲器,引腳必須如何連接?高電平 (7)89C51單片機什么存儲器實行片內(nèi)及片外統(tǒng)一編址? 程序存儲器(8)80C51單片機的工作寄存器共有4組,它們是特殊功能寄存器的一部分嗎? 不是(9)片內(nèi)RAM的20H2FH為位尋址區(qū),所包含的位地址是多少? P51,圖2-3-2(10)可以位尋址的特殊功能寄存器是哪些? P53,表2-3-2(11)MCS-51的堆棧只可設(shè)置在什么存儲區(qū)?堆棧寄存器SP是幾位寄存器?p54,上數(shù)8行(12)特殊功能寄存器的名字,在C51程序中,全部大寫

9、還是小寫? 大寫(13)程序狀態(tài)字寄存器是可以直接尋址的專用寄存器,它的符號是什么? PSW(14)單片機的數(shù)據(jù)存儲器可用于存放中間結(jié)果嗎?是(15)在MCS-51單片機內(nèi)部,其RAM高端128個字節(jié)地址空間稱為特殊功能寄存器區(qū)或SFR區(qū),但其中僅有多少個字節(jié)有實際意義? 48個(STC15)3. 單片機引腳和片外總線及復(fù)位(1)哪個端口在作為地址總線使用時,提供的是高8位地址?p69圖2-4-9,P2口(2)哪個端口的帶負載能力最強?如何表示?P1口(8051),4個TTL/都一樣(STC15),25mA(3)80C51單片機的某些腳可以具有兩種功能?是(4)單片機復(fù)位加電后,片內(nèi)數(shù)據(jù)存儲的

10、內(nèi)容不全為0x00H嗎?對,例如SP=0x07(5)單片機的復(fù)位操作是高電平還是低電平?且其上所加的復(fù)位電平的信號至少持續(xù)多少個機器周期?高電平,2個機器周期(p45)(6)8051單片機中,輸入/輸出引腳中用于專門的第二功能的引腳是( D ) AP0     BP1     CP2     DP3(7)MCS-51單片機的P0與P3端口除了可以進行數(shù)據(jù)的輸入與輸出外,通常還用來構(gòu)建系統(tǒng)的什么?外部存儲器(8) P2端口既可以作為I/O使用,又可以作地址/數(shù)據(jù)復(fù)用口使用嗎?否

11、(9)MCS-51單片機復(fù)位操作的主要功能是把PC初始化為0x0FFFH嗎?0x0,p50倒數(shù)2行(10)當(dāng)MCS-51上電復(fù)位時,堆棧指針SP=00H嗎? 0x07 4. 時鐘及最小系統(tǒng)(1)設(shè)某單片機的晶振頻率為12 MHz,則其機器周期為多少?1us(2)單片機的最小應(yīng)用系統(tǒng)由哪幾部分組成?單片機、時鐘電路、復(fù)位電路、電源(3)最小系統(tǒng)是單片機僅用本身有的資源就可以工作,不需要外接任何部件嗎? 是(4)8051單片機的一個機器周期包含幾個時鐘周期?12個(5)當(dāng)單片機系統(tǒng)晶體振蕩器頻率為6MHz時,其機器周期為多少微秒?2us(6)80C51單片機的機器周期為2uS,則其晶振頻率fosc

12、為多少MHz? 6MHz 三、流水燈篇(1)單片機定時器初始值寄存器中的值越大,定時溢出時間越短嗎?對(2)定時器與計數(shù)器的工作原理均是對輸入脈沖進行計數(shù)嗎?對(3)80c51單片機定時/計數(shù)器T0、T1都可以工作在方式3下嗎?不能(4)MCS-51單片機的定時和計數(shù)都使用同一計數(shù)機構(gòu),所不同的只是計數(shù)脈沖的來源:來自于單片機內(nèi)部的是定時,而來自于外部的則是計數(shù)。這個說法正確嗎?對(5)定時/計數(shù)器T0的M1MO=00時,定時計數(shù)器的最大計數(shù)值是多少?213(8051),216(STC15) (6)采用軟件控制定時器T0工作在方式2時,TMOD可以設(shè)定為TMOD=?T0 方式2TMOD = 0x02T1方式2TMOD= 0x20(7)6MHz晶振的單片機在定時工作方式下,定時器計一個數(shù)所用的定時時間為多少? 2us(8)80C51單片機共有幾個定時器/計數(shù)器?T0、T1、T2(9)語句TMOD=(TMOD & 0X0F)|0X20;請問定時器T1工作在什么方式?方式2(10)語句TMOD=(TMOD&0XF0)|0X02;請問定時器T0工作在什么方式? (11)定時器T1工作在方式1,若輸入一個定時計數(shù)脈沖后即發(fā)生溢出,則計數(shù)器初始值為多少?216-1=6

溫馨提示

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

評論

0/150

提交評論