單片機(jī)原理及應(yīng)用(C51版)第4章課后題答案_第1頁
單片機(jī)原理及應(yīng)用(C51版)第4章課后題答案_第2頁
單片機(jī)原理及應(yīng)用(C51版)第4章課后題答案_第3頁
全文預(yù)覽已結(jié)束

下載本文檔

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

文檔簡介

6.對于圖4-5所示的電路,試編程實(shí)現(xiàn)如下功能:每按動K0按鍵一次,從左向右依次點(diǎn)亮8個發(fā)光二極管中的一個。參考程序:#include <reg51.h> //51系列單片機(jī)頭文件#include <intrins.h> //包含_crol_函數(shù)所在的頭文件#define ucharunsignedchar //宏定義uchar temp; //定義一個變量,用來給P1口賦值void main() //主函數(shù){ EA=1; //開總中斷 EX0=1; //開外中斷0 PX0=1; //外中斷0設(shè)成高級別中斷 IT0=1; //外中斷0設(shè)成邊沿觸發(fā) temp=0x7f; //賦初值,預(yù)備右邊第一個燈亮while(1);}void int0()interrupt0using0//外部中斷1的中斷服務(wù)函數(shù){P1=temp;temp=_cror_(temp,1)}7.對于圖4-5所示的電路,試編程實(shí)現(xiàn)如下功能:當(dāng)無外部中斷請求時,每隔1s,從左向右依次點(diǎn)亮8個發(fā)光二極管中的1個;當(dāng)按鍵K0被按下時,上下4只發(fā)光二極管交替閃爍顯示(假設(shè)二極管點(diǎn)亮及熄滅的時間都是1s),閃爍8次后,返回中斷前狀態(tài);當(dāng)按鍵K1被按下時,8只發(fā)光二極管全部閃爍(假設(shè)二極管點(diǎn)亮及熄滅的時間都是1s),閃爍10次后,返回中斷前狀態(tài)。假設(shè)系統(tǒng)時鐘頻率為12MHz,外部中斷0為低優(yōu)先級,外部中斷1為高優(yōu)先級。參考程序:#include <reg51.h> //51系列單片機(jī)頭文件#include <intrins.h> //包含_crol_函數(shù)所在的頭文件#define ucharunsignedchar //宏定義#define uintunsignedint //宏定義uchar temp; //定義一個變量,用來給P1口賦值void delaynms(uintn) //延時nms函數(shù){uint i,j;for(i=0;i<n;i++)for(j=0;j<125;j++);}void main() //主函數(shù){ EA=1; //開總中斷 EX1=1; EX0=1; PX1=1; PX0=0; IT1=1; IT0=1; temp=0x7f; //賦初值,預(yù)備左邊第一個燈亮while(1){P1=temp; //輸出到P1口 temp=_cror_(temp,1); delaynms(1000); //延時1s}void int0()interrupt0{ucharm;for(m=0;m<8;m++){P1=0x0f; delaynms(1000); //延時1sP1=0xf0; delaynms(1000); }}void int1()interrupt2{ucharn;for(n=0;n<10;n++){P1=0; delaynms(1000); P1=0xff; delaynms(1000); }}8.假設(shè)多故障檢測電路如圖4-8所示,試編程實(shí)現(xiàn)如下功能:當(dāng)系統(tǒng)無故障時,4個故障源輸入端X1~X4全為高電平,對應(yīng)的4個顯示燈全滅;當(dāng)某個設(shè)備出現(xiàn)故障時,點(diǎn)亮對應(yīng)的發(fā)光二極管。其中,發(fā)光二極管LED1~LED4對應(yīng)4個輸入端X1~X4,X1~X4與P1口的P1.0~P1.3引腳相連,4個發(fā)光二極管LED1~LED4分別與P1口的P1.4~P1.7相連。圖4-8多故障檢測電路#include <reg51.h> //51系列單片機(jī)頭文件sbit X1=P1^0; //將X1定義為P1.0引腳sbit X2=P1^1; //將X2定義為P1.1引腳sbit X3=P1^2; //將X3定義為P1.2引腳sbit X4=P1^3; //將X4定義為P1.3引腳sbit LED1=P1^4; //將LED1定義為P1.4引腳sbit LED2=P1^5; //將LED2定義為P1.5引腳sbit LED3=P1^6; //將LED3定義為P1.6引腳sbit LED4=P1^7; //將LED4定義為P1.7引腳void main() //主函數(shù){ EA=1; //開總中斷 EX1=1; //開外中斷0 IT1=1; //外中斷0設(shè)成邊沿觸發(fā) P1=0xff; //令發(fā)光二極管熄滅,同時在輸入數(shù)據(jù)前先向?qū)?yīng)口輸出“1”while(1); //循環(huán)等待}void int1()interrupt2 //外部中斷0的中斷服務(wù)函數(shù){if(X1==0)LED1=0; //判斷設(shè)備X

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論