單片機應用技術_第1頁
單片機應用技術_第2頁
單片機應用技術_第3頁
免費預覽已結束,剩余5頁可下載查看

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、22 uFVCCMCS-51RST(a)上電復位電路(b)按鍵復位電路習題1答案1.2 填空題(1)單片級應用系統(tǒng)是由 硬件系統(tǒng)、軟件系統(tǒng) 組成的(2) 除了單片機和電源外,單片機最小系統(tǒng)包括時鐘電路、復位電路(3 )除了電源 和電線引腳外,XTAL1、XTAL2、RST、EA引腳信號必須連接相應電 路(4) 51系列單片機的存儲器主要有4個物理存儲空間,即片內數(shù)據(jù)存儲器、 片內程序 存儲器、片外數(shù)據(jù)存儲器、片外程序存儲器(5)51系列單片機的XTAL1和XTAL2引腳是時鐘電路(6) 51系列單片機的應用程序一般存放在程序存儲器(7) 片內RAM低128單元,按其用途劃分為 工作寄存器組、位

2、尋址區(qū)、用戶RAM區(qū)(8) 但振蕩脈沖頻率為12MHz時,一個機器周期為1us,當振蕩脈沖頻率為 6MHz時, 一個機器周期為2us(9) 51系列單片機的復位電路有兩種,即上電復位電路、按鍵復位電路(10) 輸入單片機的復位信號需延續(xù)2個機器周期以上的 高電平即為有效。1.3(4)什么是機器周期?機器周期和晶振頻率有何關系?當晶振頻率為6MHz時,機器周期是多少?答:規(guī)定一個機器周期的寬度為12個振蕩脈沖周期,因此機器周期就是振蕩脈沖的十二分頻。當振蕩脈沖頻率為 6 MHz時,一個機器周期為 2 (So(5) 51系列單片機常用的復位方法有哪幾種?畫電路圖并說明其工作原理°答:vc

3、cVCCMC5-51RSTVSS單片機常見的復位電路RST端的電位圖(a)為上電復位電路,它是利用電容充電來實現(xiàn)的。在接電瞬間,3.3上機操作題(1)xiti3_3_1.c第三章習題 #in clude <reg51.h> voiddelay (un sig ned char i);void mai n()while(1)P仁0 x55; delay(200);P仁0 xaa; delay(200);void delay (un sig ned char i)包含頭文件REG51.H/延時函數(shù)聲明/主函數(shù)/高4位燈的位置初值為 00010000B/低4位燈的位置初值為 000010

4、00B與VCC相同,隨著充電電流的減少,RST的電位逐漸下降。只要保證RST為高電平的時間 大于兩個機器周期,便能正常復位。圖(b)為按鍵復位電路。該電路除具有上電復位功能外,若要復位,只需按圖(b)中的RESET鍵,此時電源 VCC經(jīng)電阻R1、R2分壓,在 RST端產(chǎn)生一個復位高電平。習題3答案3.2填空題(2)用C51編程訪問51單片機的并行I/O 口是,可以按 字節(jié),尋址操作,還可以按 位操作(4)C51中定義一個可位尋址變量FLAG訪問P3 口的P3.1引腳的方法是 sbit FLAG=P3A1 :(10)下面的while循環(huán)執(zhí)行了無限次空語句。i=3 ;While ( i ! =0)

5、;(15)在以下的數(shù)組定義中,關鍵字“code”是為了把tab數(shù)組存儲在程序存儲器ROM中Un sig ned char code b=;3.3上機操作題(1)/延時函數(shù)聲明/ 主函數(shù)/按狀態(tài)1的方式點亮8個LED/延時/按狀態(tài)2的方式點亮 8個LED/延時1 程序 ex1_1.c/延時函數(shù)參見任務(2)/xiti3 3 2.c第三章習題3.3上機操作題(2)#in clude <reg51.h>voiddelay (un sig ned char i);voidmai n()unsigned char i,l,r;while(1)1=0x10;r=0x08;for(i=0;i&l

6、t;4;i+) P仁 (l|r); l<<=1;r>>=1; delay(200);void delay (un sig ned char i)/循環(huán)點亮燈/高4位燈的位置移動/低4位燈的位置移動/延時延時函數(shù)參見任務 1程序ex1_1.c(3)#in clude <reg51.h>voiddelay (un sig ned char i);void mai n()un sig ned char i;unsigned char display=0x89, 0xff;while(1)for(i=0;i<10;i+)P仁 display"dela

7、y(200);void delay (un sig ned char i)包含頭文件REG51.H/延時函數(shù)聲明/主函數(shù)0xff,0x86, 0xff,0xc7,II顯示字送P1 口/延時II延時函數(shù)參見任務0xff,0xc7, 0xff,0xc0,1 程序 ex1_1.cxiti3_3_3.c 第三章習題 3.3上機操作題(3)習題4答案4.2填空題(1)MCS-51系列單片機定時器的內部結構由以下四部分組成:定時器TO定時器T1定時器方式寄存器 TMOD定時器控制寄存器 TCON(251系列單片機的定時/計數(shù)器,若只用軟件啟動,與外部中斷無關,應使TMOD中的 GATE=0(3) 51系列

8、單片機的TO用做計數(shù)方式時,用工作方式1( 16位),則工作方式控制字 為 TMOD=0x05(4)定時器方式寄存器 TMOD勺作用是選擇定時器T0IT1的工作方式(5)定時器方式寄存器 TCON的作用是控制定時器的啟動、停止,標志定時器的溢出 和中斷情況。(6) 51的中斷系統(tǒng)由 定時控制寄存器 TCON、串行口控制寄存器 SCON、中斷允許寄 存器IE、中斷優(yōu)先權寄存器IP等寄存器組成(7)51的中斷源有外部中斷0、定時器0、外部中斷1、定時器1、串行口(8如果定時器控制寄存器 TCON中的IT1和IT0位為0,則外部中斷請求信號為 電平觸 發(fā)方式(9) 中斷源中斷請求撤銷包括 硬件自動清

9、除、軟件清除、硬件配合軟件共同清除等 三種形式(10)外部中斷0的中斷類型號為 04. 3(1)51系列單片機定時/計數(shù)器的定時功能和計數(shù)功能有什么不同?分別應用在什么場合?答:當定時/計數(shù)器設置為定時工作方式時,計數(shù)器對內部機器周期計數(shù),每過一個機器周 期,計數(shù)器增1,直至計滿溢出。定時器的定時時間與系統(tǒng)的振蕩頻率緊密相關,如果單片 機系統(tǒng)采用12M晶振,則計數(shù)周期為:T 6 1 s,這是最短的定時周期,適12 106 1/12當選擇定時器的初值可獲取各種定時時間。當定時/計數(shù)器設置為計數(shù)工作方式時,計數(shù)器對來自輸入引腳 T0( P3.4)和T1(P3.5)的外部信號計數(shù),外部脈沖的下降沿將

10、觸發(fā)計數(shù),檢測一個由1到0的負跳變需要兩個機器周期,所以,最高檢測頻率為振蕩頻率的1/24。計數(shù)器對外部輸入信號的占空比沒有特別的限制,但必須保證輸入信號的高電平與低電平的持續(xù)時間在一個機器周期以上。當需要準確計算時間時往往采用定時器的定時方式,而當要對一些外部事件計數(shù)時則采用定時器的計數(shù)方式。(6)什么叫中斷?中斷有什么特點?答:中斷是通過硬件來改變 CPU的運行方向。計算機在執(zhí)行程序的過程中,當出現(xiàn)CPU以 外的某種情況,由服務對象向CPU發(fā)出中斷請求信號, 要求CPU暫時中斷當前程序的執(zhí)行 而轉去執(zhí)行相應的處理程序,待處理程序執(zhí)行完畢后,再繼續(xù)執(zhí)行原來被中斷的程序。這種程序在執(zhí)行過程中由

11、于外界的原因而被中間打斷的情況稱為“中斷”。調用中斷服務程序的過程類似于調用子程序,其區(qū)別在于調用子程序在程序中是事先安排好的;而何時調用中斷服務程序事先卻無法確定,因為“中斷”的發(fā)生是由外部因素決定的,程序中無法事先安排調用指令,因此,調用中斷服務程序的過程是由硬件自動完成的。中斷的特點:分時操作、實時處理、故障處理習題5答案5.3(2)7段LED靜態(tài)顯示和動態(tài)顯示在硬件連接上分別具有什么特點?實際設計時應如 何選擇使用?答:LED靜態(tài)顯示時各位數(shù)碼管相對獨立,公共端恒定接地(共陰極)或正電源(共陽極),每個數(shù)碼管的8個字段分別與一個 8位I/O 口地址相連,適合于2個及其以下的數(shù)碼管顯示。

12、 動態(tài)顯示時各位數(shù)碼管的段選線相應并聯(lián)在一起,由一個8位的I/O 口控制,各位的段選線由另外的I/O 口控制。(4 )機械式按鍵組成的鍵盤,應如何消除按鍵抖動?答:可以采用硬件和軟件兩種方式,硬件上可在鍵輸出端加RS觸發(fā)器或單穩(wěn)態(tài)觸發(fā)器構成去抖電路,軟件上可以在檢測到有按鍵按下時,執(zhí)行一個10ms左右的延時程序,然后確認該鍵是否仍保持閉合狀態(tài)的電平。#include<abs acc.h>#include<reg51.h>#define DA0832 XBYTE0x7fff#define uchar unsigned char #define uint unsigned

13、int uchar i;void delay_100us() TH1=0xff;TL1=0x9c;TR1=1; / while(!TF1); / TF1=0;/ 置定時器初值 0xff9c ,即 65436,定時 0.1ms 啟動定時器 1查詢計數(shù)是否溢出,即定時 0.1ms 時間到, TF1=1/ 0.1ms時間到,將定時器溢出標志位TF清零void main(void) TMOD=0x10;/ 置定時器 1 為方式 1while(1)for(i=0;i<=255;i+)/ 形成鋸齒波輸出值,最大 255/D/A 轉換輸出#include<reg51.h>#define D

14、A0832 XBYTE0x7fff #define uchar unsigned char #define uint unsigned int uchar i,j;void delay_100us() TH1=0xff;TL1=0x9c;TR1=1;while(!TF1);/TF1=0;void main(void) TMOD=0x10;while(1) for(i=0;i<=255;i+) DA0832=i; DA0832=i; delay_100us();(2)周期為50ms的三角波C語言源程序如下:#include<absacc.h>/ 置定時器初值 0xff9c ,即

15、 65436,定時 0.1ms/ 啟動定時器 1 查詢計數(shù)是否溢出,即定時 0.1ms 時間到, TF1=1II 0.1ms 時間到,將定時器溢出標志位TF清零/ 置定時器 1 為方式 1II 形成三角波輸出值,最大 255IIDIA 轉換輸出delay_100us();for(j=255;j>=0;j-)/形成三角波輸出值,最大 255 DA0832=j; /D/A 轉換輸出 delay_100us();(3)周期為50ms的方波C語言源程序如下:#include<absacc.h>#include<reg51.h>#define DA0832 XBYTE0x7fff #define uchar unsigned char #define uint unsigned int uchar i,j;void delay_25ms() TH1=0x9e;/ 置定時器初值TL1=0x58;TR1=1;/啟動定時器 1while(!TF1);TF1=0;void main(void)/)查詢計數(shù)是否溢出,即定時25ms時間到,'/ 25ms時間到,將定時器溢出標志位TF清零 TMOD=0x10;/ 置定時器 1 為方式 1while(1)DA0832=255; delay_25ms();DA0832=0; delay_2

溫馨提示

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

評論

0/150

提交評論