單片機(jī)應(yīng)用技術(shù)考試題庫_第1頁
單片機(jī)應(yīng)用技術(shù)考試題庫_第2頁
單片機(jī)應(yīng)用技術(shù)考試題庫_第3頁
單片機(jī)應(yīng)用技術(shù)考試題庫_第4頁
單片機(jī)應(yīng)用技術(shù)考試題庫_第5頁
已閱讀5頁,還剩6頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

習(xí)題1

1.1單項(xiàng)選擇題

⑴MCS-51系列單片機(jī)地CPU主要由組成。

A.運(yùn)算符,控制器B.加法器,寄存器C.運(yùn)算器,加法器D.運(yùn)算器,編碼器

⑵單片機(jī)中地程序計(jì)數(shù)器PC用來。

A.存放指令B.存放正在執(zhí)行地指令地址

C.存放下一條指令地地址D.存放上一?條指令地址

⑶單片機(jī)8031地一EA引腳。

A.需要接地B.需要接+5V電源C.可懸空D.以上三種視需要而定

(4)外部擴(kuò)展存儲(chǔ)器時(shí),分時(shí)復(fù)用做數(shù)據(jù)線與低8位地址線地是。

A.P0口B.P1口C.P2口D.P3口

(5)PSW中地RS1與RS0用來o

A.選擇工具寄存器B.指示復(fù)位C.選擇定時(shí)器D.選擇工作方式

⑹單片機(jī)上電復(fù)位后,PC地內(nèi)容為。

A.0000HB.003HC.000BHD.0800H

⑺Inicl8051單片機(jī)地CPU是,

A.16B.4C.8D.準(zhǔn)16位

⑻程序是以形式存放在程序存儲(chǔ)器中地。

A.C語言源程序B.匯編程序C.二進(jìn)制編碼D.BCD碼

(9)8050單片機(jī)地程序計(jì)數(shù)器PC為16位計(jì)數(shù)器,其尋址范圍是。

A.8KBB.16KBC.32KBD.64KB

(10)單片機(jī)地ALE引腳是以晶振蕩頻率地固定頻率輸出正脈沖,因此它可作為外部時(shí)鐘或外部定時(shí)

脈沖使用。A.l/2B.l/4C.l/6D.1/12

1.2填空題(1)單片機(jī)系統(tǒng)是由與組成地。

⑵除了單片機(jī)與電源外,單片機(jī)最小系統(tǒng)包括電路與電路。

⑶在進(jìn)行單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)時(shí),除了電源與地線引腳外,,,,引腳信號(hào)需要連接相應(yīng)電路。

(4)MCS-51系列單片機(jī)地存儲(chǔ)器主要有4個(gè)物理存儲(chǔ)空間,即,一。

(5)MCS-51系歹1J單片?機(jī)地XTALL與XYAL2引腳是弓I腳。

(6)MCS-5I系列單片機(jī)地應(yīng)用程序一般存在中。

⑺片內(nèi)RAM低128單元,按其用途劃分為,與3個(gè)區(qū)域。

(8)當(dāng)振蕩脈沖頻率為12MHz時(shí),一個(gè)機(jī)器周期為;當(dāng)振蕩脈沖頻率為6MHz時(shí),一個(gè)機(jī)器周期為。

(9)MCS-51系列單片機(jī)地復(fù)位電路有兩種,即與。

(10)輸入單片機(jī)地復(fù)位信號(hào)需延續(xù)個(gè)機(jī)器周期以上地一電平時(shí)即為有效,用于完成單片機(jī)地復(fù)位初

始化操作。

1.3回答題

⑴什么是單片機(jī)?它由哪兒局部組成?什么是單片機(jī)應(yīng)用系統(tǒng)?

⑵P3口第二功能是什么?

buf(i]=SBUF;〃從用口接收數(shù)據(jù)存入數(shù)組buff]

)

)

5.10串口發(fā)送程序,發(fā)送89s51

#include<reg52.h>

#defineucharunsignedchar

#defineuintunsignedint

ucharidatatrdata|]={-8;9,;S','5V!\0x0d,0x0a,0x00);

niain()

uchari:

uintj;

SCON=0x40;〃規(guī)定串口工作在方式I,發(fā)送數(shù)據(jù)

PCON=0;//SMOD=0

TMOD=0x20:〃定時(shí)器1工作在方式2

THl=0xe6;//12MHz1200波特率

TLI=0xe6;

TR1=1;“啟動(dòng)定時(shí)器1

while(l)"不斷發(fā)送數(shù)據(jù)

(i=0;while(trdata[i]!=OxOO)//(X)結(jié)束

(

SBUF=trdataliJ;〃將數(shù)據(jù)送到串口發(fā)送器SBUFwhile(TI==0);

TI=0;

i++;

)

for(j=0j<50000;j++);"延時(shí)8uS義50000=0.4秒

習(xí)題6

上機(jī)考試題目:

第一大類:電子秒表,時(shí)鐘

I.繪制出型號(hào)為STC89c52RC單片機(jī)外接4個(gè)按鈕與4個(gè)數(shù)碼管接線原理圖。編程實(shí)現(xiàn)以下功能:按下按鈕“1”,

電子秒表啟動(dòng),按下按鈕“2,電子秒表暫停,按下按鈕“3”,再次啟動(dòng)電子秒表,按下按鈕“4”,電子秒表停止

計(jì)數(shù)并清零。數(shù)碼管顯示格式是00.0。要求采用定時(shí)器中斷方式實(shí)現(xiàn)計(jì)時(shí)。

2.繪制出型號(hào)為STC89c52RC.單片機(jī)外接3個(gè)按鈕與4個(gè)數(shù)碼管接線原理圖。編程實(shí)現(xiàn)以下功能:按下按鈕

“1”,電子秒表啟動(dòng)并清零,按下按鈕“2”,電子秒表暫停,按下按鈕“3”,再次啟動(dòng)電子秒表。數(shù)碼管顯

示格式是00.0。要求采用定時(shí)器中斷方式實(shí)現(xiàn)計(jì)時(shí)。

3.繪制出型號(hào)為STC89c52RC單片機(jī)外接4個(gè)數(shù)碼管接線原理圖。編程實(shí)現(xiàn)以下功能:上電或復(fù)位后電子秒表

清零并啟動(dòng),用外部中斷。暫停電子秒表,外部中斷I再次啟動(dòng)電子秒表。數(shù)碼管顯示格式是00.00要求

采用定時(shí)器中斷方式實(shí)現(xiàn)計(jì)時(shí)。

4.繪制出型號(hào)為STC89c52RC單片機(jī)外接16個(gè)按鈕與4個(gè)數(shù)碼管接線原理圖。編程實(shí)現(xiàn)以下功能:上電或竟

位后后電子計(jì)數(shù)器清零并啟動(dòng),由TO產(chǎn)生脈沖地個(gè)數(shù)使計(jì)數(shù)器加1,外部中斷。停止計(jì)數(shù)器工作。數(shù)碼管

顯示格式是0000。計(jì)數(shù)脈沖檢測使用查詢方式。

5.繪制出型號(hào)為STC89c52RC單片機(jī)外接16個(gè)按鈕與3個(gè)數(shù)碼管接線原理圖。編程實(shí)現(xiàn)以卜功能:上電后計(jì)

數(shù)器初始數(shù)值由按鍵設(shè)置,按下“A”按鍵啟動(dòng),TO產(chǎn)生脈沖地個(gè)數(shù)將計(jì)數(shù)器減1,外部中斷1停止計(jì)數(shù)器工

作。數(shù)碼管顯示格式是000o計(jì)數(shù)脈沖檢測使用查詢方式。

6.繪制出型號(hào)為STC89c52RC單片機(jī)外接16個(gè)按鈕與4個(gè)數(shù)碼管接線原理圖。編程實(shí)現(xiàn)以卜功能:上電或復(fù)

位后后電子計(jì)數(shù)器清零并啟動(dòng),由T0產(chǎn)生脈沖地個(gè)數(shù)使計(jì)數(shù)器加1,外部中斷。停止計(jì)數(shù)器工作。數(shù)碼管

顯示格式是OOOOo計(jì)數(shù)脈沖檢測使用中斷方式。

7.繪制出型號(hào)為STE9C52RC單片機(jī)外接16個(gè)按鈕與3個(gè)數(shù)碼管接線原理圖?編程實(shí)現(xiàn)以下功能:卜電后計(jì)

數(shù)器初始數(shù)值由按犍設(shè)置,按下按鍵啟動(dòng),T0產(chǎn)生脈沖地個(gè)數(shù)將計(jì)數(shù)器減1,外部中斷1停止i-數(shù)器工作。

數(shù)碼管顯示格式是000o計(jì)數(shù)脈沖檢測使用中斷方式。

8.繪制出型號(hào)為STC89c52RC單片機(jī)外接16個(gè)按鈕與8個(gè)數(shù)碼管接線原理圖。編程實(shí)現(xiàn)以卜功能:計(jì)時(shí)

24小時(shí)地電了?鐘,可以用按鍵設(shè)置時(shí),分。數(shù)碼管顯示格式是00.00-0()。

9.繪制出型號(hào)為STC89c52RC單片機(jī)外接16個(gè)按鈕與8個(gè)數(shù)碼管接線原理圖。編程實(shí)現(xiàn)以下功能:計(jì)時(shí)24小

時(shí)地萬年歷,應(yīng)在程序中事先設(shè)定年,月,日,時(shí),分。時(shí)鐘與年,月,日交替顯示。數(shù)碼管顯示格式是00-

()0-00o

第二大類:時(shí)鐘+串行通信

10.繪制出型號(hào)為STC89c52RC單片機(jī)甲機(jī)外接2個(gè)按鈕與3個(gè)數(shù)舟管,發(fā)送數(shù)據(jù),乙機(jī)3個(gè)數(shù)碼管,接收數(shù)據(jù)

地接線原理圖。編程實(shí)現(xiàn)以下功能:上電后電子秒表清零并啟動(dòng),按下按鈕1,電子秒表暫停,按下按鈕2,再

次啟動(dòng)電子秒表,數(shù)碼管顯示格式是00.0。該結(jié)果同時(shí)送到乙機(jī)顯示。要求采用定時(shí)器中斷方式實(shí)現(xiàn)計(jì)時(shí)。

11.繪制出型號(hào)為STC89c52RC單片機(jī)甲機(jī)外接3個(gè)數(shù)碼管,發(fā)送數(shù)據(jù),乙機(jī)3個(gè)數(shù)碼管,接收數(shù)據(jù)地接線原理

圖。編程實(shí)現(xiàn)以下功能:上電后電子秒表清零并啟動(dòng),用外部中斷。暫停電子秒表,外部中斷1再次啟動(dòng)

電子秒表。該結(jié)果同時(shí)送到乙機(jī)顯示。數(shù)碼管顯示格式是00.0。要求采用定時(shí)器中斷方式實(shí)現(xiàn)計(jì)時(shí)。計(jì)數(shù)

脈沖檢測使用中斷方式。

12.繪制出型號(hào)為STC89c52RC單片機(jī)甲機(jī)外接4個(gè)數(shù)碼管,發(fā)送數(shù)據(jù),乙機(jī)4個(gè)數(shù)碼管,接收數(shù)據(jù)地接線原理

圖。編程實(shí)現(xiàn)以下功能:能統(tǒng)計(jì)T0產(chǎn)生脈沖地個(gè)數(shù),上電后電子計(jì)數(shù)器清零并啟動(dòng),外部中斷0停止計(jì)數(shù)

器工作。該結(jié)果同時(shí)送到乙機(jī)顯示。數(shù)碼管顯示格式是0000。計(jì)數(shù)脈沖檢測使用中斷方式。

13.繪制出型號(hào)為STC89c52RC單片機(jī)甲機(jī)外接3個(gè)數(shù)碼管,發(fā)送數(shù)據(jù),乙機(jī)3個(gè)數(shù)碼管,接收數(shù)據(jù)地接線原理

圖。編程實(shí)現(xiàn)以下功能:上電后電子秒表清零并啟動(dòng),用外部中斷。笆停電子秒表,外部中斷1再次啟動(dòng)

電子秒表。該結(jié)果同時(shí)送到乙機(jī)顯示。數(shù)碼管顯示格式是00.0c要求采用定時(shí)器中斷方式實(shí)現(xiàn)計(jì)時(shí)。計(jì)數(shù)

脈沖檢測使用查詢方式。

14.繪制出型號(hào)為STC89c52RC單片機(jī)甲機(jī)外接4個(gè)數(shù)碼管,發(fā)送數(shù)據(jù),乙機(jī)4個(gè)數(shù)碼管,接收數(shù)據(jù)地接線原理

圖。編程實(shí)現(xiàn)以下功能:能統(tǒng)口T0產(chǎn)生脈沖地個(gè)數(shù),,電后電子il數(shù)器消零并啟動(dòng),外部中斷。停止“數(shù)

器工作。該結(jié)果同時(shí)送到乙機(jī)顯示。數(shù)碼管顯示格式是O(XX)。計(jì)數(shù)脈沖檢測使用查詢方式。

15.繪制出型號(hào)為STC89c52RC單片機(jī)甲機(jī)外接8個(gè)數(shù)碼管,發(fā)送數(shù)據(jù),乙機(jī)8個(gè)數(shù)碼管,接收數(shù)據(jù)地接線原理

圖。編程實(shí)現(xiàn)以下功能:計(jì)時(shí)24小時(shí)地電子鐘,結(jié)果同時(shí)送到另一臺(tái)單片機(jī)顯示。數(shù)碼管顯示珞式是00-

(X)-(X)o

16.繪制出型號(hào)為STC89c52RC單片機(jī)甲機(jī)外接8個(gè)數(shù)碼管,發(fā)送數(shù)據(jù),乙機(jī)8個(gè)數(shù)碼管,接收數(shù)據(jù)地接線原

理圖。編程實(shí)現(xiàn)以下功能:計(jì)時(shí)24小時(shí)地萬年歷,時(shí)鐘與年,月,日交替顯示。結(jié)果同時(shí)送到另一臺(tái)單片

機(jī)顯示。數(shù)碼管顯示格式是D0-00-00O

第三大類:按鈕控制繼電器+串行通信

17.繪制出型號(hào)為STC89c52RC單片機(jī)甲機(jī)外接8個(gè)按鈕與4個(gè)數(shù)碼管,乙機(jī)P0I」接8個(gè)繼電器(畫一個(gè),其

它用虛線表示)地接線原理圖。編程實(shí)現(xiàn)以下功能:甲機(jī)按下按鈕“1”到“8”,甲機(jī)左邊地單個(gè)數(shù)碼管顯示

對應(yīng)數(shù)字,乙機(jī)對應(yīng)地LED亮。

18.繪制出型號(hào)為STC89c52RC單片機(jī)甲機(jī)外接8個(gè)按鈕與4個(gè)數(shù)碼管,乙機(jī)P0口接8個(gè)繼電器(畫一個(gè),其

它用虛線表示)地接線原理圖。編程實(shí)現(xiàn)以下功能:甲機(jī)按下按鈕“1”到“8”,甲機(jī)右邊地單個(gè)數(shù)碼管顯示

對應(yīng)數(shù)字,乙機(jī)對應(yīng)地?cái)?shù)碼管顯示“F”。

19.繪制出型號(hào)為STC89c52RC單片機(jī)甲機(jī)外接16個(gè)按鈕與8個(gè)數(shù)碼管,乙機(jī)外接8個(gè)數(shù)碼管地接線原理圖。

編程實(shí)現(xiàn)以卜功能:甲機(jī)按卜按鈕“1”到“F”,甲乙機(jī)數(shù)碼管同時(shí)順序顯示對應(yīng)數(shù)字。

20.繪制出型號(hào)為STC89c52RC單片機(jī)甲機(jī)外接4個(gè)按鈕與4個(gè)數(shù)碼管,乙機(jī)外接4個(gè)數(shù)碼管地接線原理圖。

編程實(shí)現(xiàn)以下功能:甲機(jī)按下按鈕“1”到“4”,乙機(jī)數(shù)碼管顯示對應(yīng)數(shù)字,同時(shí)蜂鳴器響對應(yīng)地時(shí)間(1-4

秒)。

第四大類:按鍵控制LED+串行通信

21.繪制出型號(hào)為STC89c52RC單片機(jī)甲機(jī)外接16個(gè)按鈕與8個(gè)數(shù)碼管,乙機(jī)P0口外接8個(gè)LED地接線原理

圖。編程實(shí)現(xiàn)以下功能:甲機(jī)按下按鈕“1”乙機(jī)LED由左向右單個(gè)亮一遍;甲機(jī)按下按鈕“2”,乙機(jī)LED由左向

右兩個(gè)個(gè)亮一遍;甲機(jī)按卜?按鈕“3”,乙機(jī)LED由右向左單個(gè)亮一遍;甲機(jī)按卜.按鈕“4”,乙機(jī)LED由右向左兩

個(gè)兩個(gè)亮一遍。

22.繪制出型號(hào)為STC89C52RC單片機(jī)甲機(jī)外接16個(gè)按鈕與8個(gè)數(shù)碼管,乙機(jī)P0口外接8個(gè)LED地接線原理

圖。編程實(shí)現(xiàn)以下功能:甲機(jī)按下按鈕乙機(jī)LED由左向右單個(gè)亮?遍,時(shí)間間隔0.5S。甲機(jī)可以由鍵盤設(shè)

定乙機(jī),LED單個(gè)顯示切換地時(shí)間間隔(2~10秒)。

第五大類:擴(kuò)展存儲(chǔ)器+時(shí)鐘

23.繪制出型號(hào)為STC89c52RC單片機(jī)甲機(jī)外接4個(gè)按鈕與3片6264,6264采用線譯碼地接線原理甌需要說

明各個(gè)芯片地地址空間。同時(shí)寫出電子秒表程序并在學(xué)習(xí)板上調(diào)試成功。

24.繪制出型號(hào)為STC89c52RC單片機(jī)甲機(jī)外接4個(gè)按鈕與4片6264,6264采用全譯碼地接線原理以需要說

明各個(gè)芯片地地址空間。同時(shí)寫出電子時(shí)鐘程序并在學(xué)習(xí)板上調(diào)試成功。

25.繪制出型號(hào)為STC89C52RC單片機(jī)甲機(jī)外接4個(gè)按鈕與2片6264,6264采用單線加非門譯碼地接線原理圖。

需要說明各個(gè)芯片地地址空間。同時(shí)寫出萬年歷程序并在學(xué)習(xí)板上調(diào)試成功。

第六大類:獷展串行口+串行通信

26.繪制出型號(hào)為STC89c52RC單片機(jī)甲機(jī)16個(gè)按鈕與4個(gè)數(shù)碼管,乙機(jī)4個(gè)數(shù)碼管并擴(kuò)展串并轉(zhuǎn)換I/O口(2

片164)地接線原理圖。編程實(shí)現(xiàn):甲機(jī)按卜按鍵,甲乙機(jī)同時(shí)顯示按鍵數(shù)值。

27.繪制出型號(hào)為STC89C52RC單片機(jī)甲機(jī)16個(gè)按鈕與4個(gè)數(shù)碼管,乙機(jī)4個(gè)數(shù)碼管并擴(kuò)展串并轉(zhuǎn)換1/00(2

片164)地接線原理圖。編程實(shí)現(xiàn):甲機(jī)實(shí)現(xiàn)電子秒表功能,乙機(jī)同時(shí)顯示。

28.繪制出型號(hào)為STC89C52RC單片機(jī)甲機(jī)16個(gè)按鈕與4個(gè)數(shù)碼管,乙機(jī)4個(gè)數(shù)碼管并擴(kuò)展串并轉(zhuǎn)換1/00(2

片.164)地接線原理圖。編程實(shí)現(xiàn):編程實(shí)現(xiàn):甲機(jī)實(shí)現(xiàn)電子時(shí)鐘功能,乙機(jī)同時(shí)顯示。

29.繪制出型號(hào)為STC89c52RC單片機(jī)甲機(jī)16個(gè)按鈕與4個(gè)數(shù)碼管,乙機(jī)4個(gè)數(shù)碼管并擴(kuò)展串并轉(zhuǎn):奐I/O口(2

片.164)地接線原理圖。編程實(shí)現(xiàn):甲機(jī)實(shí)現(xiàn)萬年歷功能,乙機(jī)同時(shí)顯示。

(3)畫出MCS-51系列單片機(jī)時(shí)鐘電路,并指山石英晶體與電容地取值范圍.

(4)什么是機(jī)器周期?機(jī)器周期與晶振頻率有何關(guān)系?當(dāng)晶振頻率為6MHz時(shí),機(jī)器周期是多少?

(5)MCS-51系列單片機(jī)常用地復(fù)位方法有幾種?畫電路圖并說明其工作原理。

(6)MCS-5I系列單片機(jī)內(nèi)RAW地組成是如何劃分地?各有什么功能?

(7)MCS-5I系列單片機(jī)有多少個(gè)特殊功能寄存器?它們分布在什么地址范圍?

(8)簡述程序狀態(tài)寄存器PSW各位地意義,單片機(jī)如何確定與改變當(dāng)前地工作寄存器組。

(9)C51編譯器支持地寄存器有哪些?

(10)單片機(jī)外部擴(kuò)展RAM與ROM時(shí),P0□與P2口各起什么作用?

(II)在單片機(jī)地C諳言程序設(shè)計(jì)中,如何使用SFR與可尋址位?

習(xí)題2

9.1單項(xiàng)選擇題

⑴仿真器地作用是。

A.能幫助調(diào)試用戶設(shè)計(jì)地軟件B.能幫助調(diào)試用戶設(shè)計(jì)地硬件

C.能幫助調(diào)試用戶設(shè)計(jì)地硬件與軟件D.只能做各種模擬實(shí)驗(yàn)

⑵使用單片機(jī)開發(fā)系統(tǒng)調(diào)試程序時(shí),對源程序進(jìn)行匯編地目地是。

A.將源程序轉(zhuǎn)換成目的程序B.將目的程序轉(zhuǎn)換成源程序

C將低級(jí)語言轉(zhuǎn)換成高級(jí)語言D.連續(xù)執(zhí)行

⑶在運(yùn)用仿真系統(tǒng)調(diào)試程序時(shí),觀察函數(shù)內(nèi)部指令地運(yùn)行結(jié)果,通常采用調(diào)試方法。

A.單步調(diào)試(F8)B.跟蹤調(diào)試(F7)

C.快速運(yùn)行到光標(biāo)處調(diào)試(F4)C.斷點(diǎn)調(diào)試(F2)

(4)使用單片機(jī)開發(fā)系統(tǒng)調(diào)試C語言程序時(shí),首先應(yīng)新建文件,該文件地?cái)U(kuò)展名是。

A..cB..hexC..binD..asm

(5)單片機(jī)能夠直接運(yùn)行地程序是。

A.匯編源程序B.C語言源程序C.高級(jí)語言程序D.機(jī)器語言程序

2.1問答題

⑴什么是單片機(jī)開發(fā)系統(tǒng)?單片機(jī)開發(fā)系統(tǒng)有哪些設(shè)別組成?如何連接?

⑵一般來說單.片機(jī)開發(fā)系統(tǒng)應(yīng)具備哪些基本功能?

⑶開發(fā)單片機(jī)應(yīng)用系統(tǒng)地一般過程是什么?

習(xí)題3

3.1單項(xiàng)選擇題

(1)MCA-51系列單片機(jī)地4個(gè)并行I/O端口作為通用I/O端口使月,在輸出數(shù)據(jù)時(shí),需要外接上拉包阻地是()

A.P0口B.P1nC.P2□D.P3□

⑵當(dāng)MCS-5I系列單片機(jī)應(yīng)用系統(tǒng)需要擴(kuò)展外部存儲(chǔ)器或其它接口芯片時(shí),()可作為低8位地址總線使用。

A.PO口B.P1口C.P2口D.PO□與P2口

⑶當(dāng)MCS-5I系列單片機(jī)應(yīng)用系統(tǒng)需要擴(kuò)展外部存儲(chǔ)器或其它接口芯片時(shí);()可作為高8位地址總線使用。

A.POnB.P1口c.P2nD.PO□與P2n

(4)卜而表達(dá)不正確地是0。

A.一個(gè)C源程序可以由一個(gè)或多個(gè)函數(shù)組成B.一個(gè)C源程序需要包含一個(gè)函數(shù)main。

C.在C程序中,注釋說明只能位于一條語句地后面DC程序地基本組成單位是函數(shù)

(5)C程序總是從0開始執(zhí)行地。

A.主函數(shù)B.主程序C子程序D.主過程

(6)最基本地C語言語句是()。

A.賦值語句B.表達(dá)式語句C.循環(huán)語句D.復(fù)合語句

⑺在C51程序中常常把0作為循環(huán)體,用于消耗CPU時(shí)間,產(chǎn)生延時(shí)效果。

A.賦值語句B.表達(dá)式語句C.循環(huán)語句D.空語句

習(xí)題4

編程:

5.1輸入3個(gè)無符號(hào)地字符數(shù)據(jù),要求按由大到小地順序排列,

5.2用指針實(shí)現(xiàn),輸入3個(gè)無符號(hào)地字符數(shù)據(jù),要求按由大到小地順序排列。

5.3用3種循環(huán)結(jié)構(gòu)編寫程序,實(shí)現(xiàn)輸出1到100之與。

5.4用3種循環(huán)結(jié)構(gòu)編寫程序,實(shí)現(xiàn)輸出1到50平方之與。

5.5編程實(shí)現(xiàn)將8051單片機(jī)片內(nèi)部RAM從20H單元開始地10個(gè)字節(jié)內(nèi)容清零。

5.6編寫計(jì)算以下算式地程序。

23H+35H+ABH

ABCDH-3456H

5.7輸入3個(gè)無符號(hào)地字符數(shù)據(jù),要求按由大到小地順序排列。

5.8用指針實(shí)現(xiàn),輸入3個(gè)無符號(hào)地字符數(shù)據(jù),要求按由大到小地順序排列。

5.9用3種循環(huán)結(jié)構(gòu)編寫程序,實(shí)現(xiàn)輸出1到100之與。

5.10用3種循環(huán)結(jié)構(gòu)編寫程序,實(shí)現(xiàn)輸出1到50平方之與。

5.11利用89c51地P1口控制8個(gè)發(fā)光二級(jí)管LED。相鄰地4個(gè)LED為一組,使2組每隔0.5s交替發(fā)亮

一次凋而復(fù)始。畫出電路,編寫程序。

5.12編制一個(gè)循環(huán)閃爍燈地程序。有8個(gè)發(fā)光二級(jí)管,每次其中某個(gè)燈閃爍點(diǎn)亮10次后,轉(zhuǎn)到下一個(gè)閃爍

10次彳盾環(huán)不止。

5.13使用MCS—51單片機(jī)地定時(shí)器/計(jì)數(shù)器1,在P1.4上輸出高電平為10mS低電平為20ms地連續(xù)波形。

分別用查詢中斷請求標(biāo)志地方法與中斷方法編寫程序。設(shè)晶振頻為l2MHzo

5.14使用MCS-5I單片機(jī)地定時(shí)器/計(jì)數(shù)器0,在INTO為低電平M,將TO引腳上地脈沖波形經(jīng)10頻后從

PL2送出。

5.15編寫一段程序,在INTI從高電平變成低電平時(shí),在pi7上輸出一個(gè)寬度為imS地正脈沖。分別用查

詢法與中斷法編寫程序。設(shè)晶振頻為12MHz。

5.16使用型號(hào)為STC89c52RC單片機(jī),品振頻率12MHZ。用定時(shí)器TO查詢方式,實(shí)現(xiàn)從P1.0輸出周期為

0.02S地方波輸出。

5.17使用型號(hào)為STC89c為RC單片機(jī),晶振頻率12MHzc用定時(shí)器T1查詢方式,實(shí)現(xiàn)從Pl.0輸出周期為

低電平0.2S,高電平0.3S地矩形波瑜出。

5.18使用型號(hào)為STC89c52RC單片機(jī),晶振頻率12MHzc用定時(shí)器TO中斷方式,實(shí)現(xiàn)從PLO輸出周期為

0.02S地方波輸出。

5.19使用型號(hào)為STC89c52RC單片機(jī),晶振頻率12MHzc用定時(shí)器T1中斷方式,實(shí)現(xiàn)從P1.0輸出周期為

低電平0.2S,高電平0.3S地矩形波輸出。

習(xí)題5

程序分析:

5.20水燈程序

#includc<rcg52.h>〃包含8952單片機(jī)頭文件

voiddelaym(unsignc(Iint()(〃延時(shí)子程序,入口參數(shù)口s,延遲時(shí)間取值范圍。?65535

unsignedcharj;

while(t-)〃/取值范圍0-255

ford=0;j<250;j++);

)〃j進(jìn)行地內(nèi)部循環(huán)」次延遲8us

)

voidmain()

unsignedinti;whilc(l){

unsignedchara=0xte;for(i=0;i<8;i++)(

P0=a;

delaym(2()0);

a?=l;〃循環(huán)左移I位

)

5.21子秒表工作程序

voidmain()(

TMOD=Ox()l;〃定時(shí)器TO工作在方式I

TH0=0xD8;〃TO裝入時(shí)間常數(shù)

TL0=0xf0;

EA=1;〃允許中斷

ET0=l;〃允許定時(shí)器TO中斷

TR0=l;〃啟動(dòng)定時(shí)器T。

while(l)〃無條件循環(huán)

for(k=0:k<3:k++)

PO=b|k];"送出數(shù)碼管段碼

P2=k;〃送出數(shù)碼管位選碼

dclaym(3);"調(diào)用延時(shí)函數(shù)

timeO_int(void)interrupt1//TO中斷服務(wù)程序(

TH0=0xD8;

TLO=OxFO;

i++;

if(i==100)〃至IJ1秒(i=0;

second1++;)

if(secondl==10)"到10秒(second2++;second1=0;

if(second2==10)〃至U100秒{second3++;

second2=0;

second1=0;}

b|2]=a|second31;"轉(zhuǎn)換為段碼顯示b[l]=a[second2J;

b[0]=a[secondl];

)

5.22子時(shí)鐘程序voidmain()(

TMOD=0x01;〃定時(shí)器TO工作在方式I

TH0=0xD8;//TO延時(shí)長度延時(shí)lOmS

TL0=0xf0;

EA=1;〃允許中斷

ET0=l;〃允許定時(shí)器TO中斷

TR0=l:

while(l)

(

for(k=0;k<5;k++)"顯示時(shí)鐘地分秒(

PO=b(k];

P2=k;

delaym(3);

timeO_int(void)inteiTupt1//TO中斷服務(wù)程序(

TH0=0xD8;

TLO=OxFO;i++;if(i==|()0)〃至I」1秒(i=O;

second++;

)

if(second==60)〃至Ij1分鐘{second=0;

fen++;)

w=fen/10;

x=fen%IO;

y=sccond/10;

z=seconJ%I0;

b|4]=a[wl;"顯示分十位段碼

b[3]=a[x];〃顯示分個(gè)位段碼

b|2]=0xbf;?'數(shù)碼管顯示

b[ll^a[y];〃顯示秒十位段碼

b[O]=a[z];11顯示秒個(gè)位段碼

)

5.23矩陣式按鍵掃描,讀取按鍵地行列編碼。

unsignedcharKcycan(void)

(

unsignedcharrcodc,ccode;

Pl=OxFO;//Pl口對鍵盤輸出鍵盤掃描信號(hào)if((PI&()xF0)!=()xF0)(

delay⑴;〃調(diào)用巖石函數(shù)函數(shù)實(shí)現(xiàn)軟件去抖動(dòng)if((Pl&OxFO)!=0xF0)〃如果不相等說明有鍵按下

{rcodc=OxFE;〃逐行掃描初值

while((rcode&OxlO)!=0)(

PI=rcode;〃輸出行掃描碼

if((PI&0xF0)!=0xF0)//(

ccode=(Pl&0xF0)|0x0F;〃取入列代碼//do{;}

while((PI&OxFO)!=OxFO);〃等待鍵釋放

return((?rcode)+(?ccodc)):〃返回

)

else

rcode=(rcode?I)|0x01;〃行輸出代碼移1位

)

)

return0;〃無鍵按下,返回

)

5.24鍵取值計(jì)算程序

voidKeyDcal(unsignedcharKey)

{if(Key!=0)〃再次判斷是否有按鍵按下

{switch(Key)"對按鍵地行列碼譯碼成0-15

(

caseOxll:K=0;break;

case0x21:K=l;break;

case0x41:K-2;break;

case0x81:K=3;break;

case0x12:K=4;break;

case0x22:K=5;break;

case0x42:K=6;break;

case0x82:K=7;break;

case0x14:K=B;break;

case0x74-K=9:break:

case0x44:K=l0;break;

case0x84:K=ll;break;

case0x18:K=12;break;

case0x28:K=I3;break;

case0x48:K=I4;break;

case0x88:K=I5;break;

default:break;

)

if(K<17)

{cf71=c[5];〃改變顯示位置,顯示代碼順序前移

c[6]=c[5];

c[5]=c(41;

c(4]=c[3J;

c[3]=c⑵;

c⑵=州;

c[l]=c[0);

c[0]=blK];〃將0-15譯成段碼供顯示

5.25計(jì)算機(jī)鍵盤輸入月份,通過計(jì)算機(jī)串口顯示相應(yīng)地日子。

include<REG52.h>〃包含8952單片機(jī)頭文件

include<sidio.h>"包含il算機(jī)串口頭文件

#defineuintunsignedint

voidmain()(

uintmonth;

uintday;

溫馨提示

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

評論

0/150

提交評論