68精品久久久久久欧美,最近中文字幕完整在线看一,久久亚洲男人天堂,最近中文字幕完整视频高清1

你好!歡迎來到深圳市穎特新科技有限公司!
語言
當(dāng)前位置:首頁 >> 技術(shù)中心 >> 單片機(jī)入門 >> MCS-51單片機(jī)定時(shí)器/計(jì)數(shù)器常見習(xí)題解答

MCS-51單片機(jī)定時(shí)器/計(jì)數(shù)器常見習(xí)題解答

關(guān)鍵字:MCS 單片機(jī)定時(shí)器 計(jì)數(shù)器 作者:admin 來源:不詳 發(fā)布時(shí)間:2018-05-18  瀏覽:184

1、根據(jù)定時(shí)器/計(jì)數(shù)器0方式1邏輯結(jié)構(gòu)圖,分析門控位GATE取不同值時(shí),啟動(dòng)定時(shí)器的工作過程。

答:當(dāng)GATE=0:軟件啟動(dòng)定時(shí)器,即用指令使TCON中的TR0置1即可啟動(dòng)定時(shí)器0。

GATE=1:軟件和硬件共同啟動(dòng)定時(shí)器,即用指令使TCON中的TR0置1時(shí),只有外部中斷INT0引腳輸入高電平時(shí)才能啟動(dòng)定時(shí)器0。

 

2、當(dāng)定時(shí)器/計(jì)數(shù)器的加1計(jì)數(shù)器計(jì)滿溢出時(shí), 溢出標(biāo)志位TF1由硬件自動(dòng)置1,簡述對(duì)該標(biāo)志位的兩種處理方法。

答:一種是以中斷方式工作,即TF1置1并申請(qǐng)中斷,響應(yīng)中斷后,執(zhí)行中斷服務(wù)程序,并由硬件自動(dòng)使TF1清0;另一種以查詢方式工作,即通過查詢?cè)撐皇欠駷?來判斷是否溢出,TF1置1后必須用軟件使TF1清0。

 

3、設(shè)MCS-51單片機(jī)fosc=12MHz,要求T0定時(shí)150µs,分別計(jì)算采用定時(shí)方式0、方式1和方式2時(shí)的定時(shí)初值。

答:方式0的定時(shí)初值:IF6AH

方式1的定時(shí)初值:FF6AH

方式2的定時(shí)初值:6AH

 

4、 設(shè)MCS-51單片機(jī)fosc=6MHz,問單片機(jī)處于不同的工作方式時(shí),最大定時(shí)范圍是多少?

答:方式0的最大定時(shí)范圍:131,072µs

方式1的最大定時(shí)范圍:16,384µs

方式2的最大定時(shí)范圍:512µs

 

5、設(shè)MCS-51的單片機(jī)晶振為6MHZ,使用T1對(duì)外部事件進(jìn)行計(jì)數(shù),每計(jì)數(shù)200次后,T1轉(zhuǎn)為定時(shí)工作方式,定時(shí)5ms后,又轉(zhuǎn)為計(jì)數(shù)方式,如此反復(fù)的工作,試編程實(shí)現(xiàn)。

答:

#include <reg52.h>

bit  F0=0;

void  main()

{

  TMOD=0x60;    

  TL1=56;        

  TH1=56;         

  TR1=1;         

  ET1=1;         

  EA =1;         

  While(1);

}

void serve() interrupt 3

{

  if (!F0)

{   TMOD=0x10;           

       TL1=63036%16;      

        TH1=63036/16;        

        F0=~F0;

    }

  else

{

TMOD=0x60;    

        TL1=56;        

        TH1=56;         

F0=~F0;

}

}

 

6、  用方式0設(shè)計(jì)兩個(gè)不同頻率的方波,P1.0輸出頻率為200Hz,P1.1輸出頻率為 100Hz,晶振頻率12MHz。

#include <at89x52.h>

 

void  main()

{

TMOD=0x00;    

TL0=0x1c;        

TH0=0xb1;         

TR0=1; 

F0=0;       

ET0=1;         

EA =1;         

While(1);

}

 

void serve() interrupt 1

{

TL0=0x1c;        

TH0=0xb1;         

P1_0=~P1_0;

    if(F0==0)

        F0=1;

    else

        {

F0=0;

        P1_1=~P1_1;

        }

}

 

7、定時(shí)器T0已預(yù)置為156,且選定用于方式2的計(jì)數(shù)方式,現(xiàn)在T0輸入周期為1ms的脈沖,問此時(shí)T0的實(shí)際用途是什么?在什么情況下計(jì)數(shù)器0溢出?

答:T0的實(shí)際用途是定時(shí)1s,每隔1s計(jì)數(shù)器0溢出一次。

 

8、P1.0輸出脈沖寬度調(diào)制(PWM)信號(hào),即脈沖頻率為2kHz、占空比為7:10的矩形波,晶振頻率12MHz。

#include <at89x52.h>

unsigned char data count;

void  main()

{

TMOD=0x02;    

TL0=206;        

TH0=206;         

TR0=1; 

ET0=1;         

EA =1;

count=0;

While(1);

}

 

void serve() interrupt 1

{

count++;

if(count<=7)

P1_0=1;

else

    P1_0=0;

if(count==10)

        count=0;

}

 

9、兩只開關(guān)分別接入P3.0、P3.1,在開關(guān)信號(hào)4種不同的組合邏輯狀態(tài),使P1.0分別輸出頻率0.5kHz、1kHz、2kHz、4kHz的方波,晶振頻率為12MHz。

#include <at89x52.h>

unsigned char data sta;

unsigned char data cou;

unsigned char data mag;

 

void  main()

{

TMOD=0x02;    

TL0=131;        

TH0=131;         

TR0=1; 

ET0=1;         

EA =1;

cou=0;

While(1);

}

 

void serve() interrupt 1

{

unsigned char temp;

P3=0xff;

temp=P3&0xfc;

if(temp!=sta)

{

sta=temp;

cou=0;

}

if(sta=0x00)

    mag=7;

else if(sta=0x01)

    mag=3;

else if(sta=0x10)

    mag=1;

else if(sta=0x11)

    mag=0;

if(cou==mag)

{

P1_0=~P1_0;

cou=0;

        }

else

    cou++;

}

 

10、MCS-51單片機(jī)P1端口上,經(jīng)驅(qū)動(dòng)器連接有8只發(fā)光二極管,若fosc=6MHz,試編寫程序,使這8只發(fā)光二極管每隔2s循環(huán)發(fā)光一次(要求T0定時(shí))。

#include <at89x52.h>

unsigned char data cou;

unsigned int data tim;

 

void  main()

{

TMOD=0x02;    

TL0=16;        

TH0=16;          

TR0=1; 

ET0=1;         

EA =1;

P1=0;

cou=0;

tim=1;

While(1);

}

 

void serve() interrupt 1

{

    tim++;

    if(tim==500)

    {

P1=0x01<<cou;

tim=1;

cou++;

if(cou==8)

    cou=0;

}

}

15.設(shè)fosc=12MHz。試編寫一段程序,對(duì)定時(shí)器T1初始化,使之工作在模式2,產(chǎn)生200µs定時(shí),并用查詢T1溢出標(biāo)志的方法,控制P1.1輸出周期為2ms的方波。

#include <at89x52.h>

 

void  main()

{

unsigned char i,j;

TMOD=0x20;    

TL1=56;        

TH1=56;         

TR1=1; 

while(1)

{

while(TF1=1)

{

        TF1=0;

        i++;

        if(i==5)

        {

            P1_1=~P1_1;

            i=0;

        }

}

}

}

11、使用一個(gè)定時(shí)器,如何通過軟、硬件結(jié)合的方法,實(shí)現(xiàn)較長時(shí)間的定時(shí)?

答:先使用硬件實(shí)現(xiàn)單位時(shí)間的定時(shí),通過軟件設(shè)置計(jì)數(shù)來實(shí)現(xiàn)較長時(shí)間的定時(shí)。

編輯:admin  最后修改時(shí)間:2018-05-18

聯(lián)系方式

0755-82591179

傳真:0755-82591176

郵箱:vicky@yingtexin.net

地址:深圳市龍華區(qū)民治街道民治大道973萬眾潤豐創(chuàng)業(yè)園A棟2樓A08

Copyright © 2014-2023 穎特新科技有限公司 All Rights Reserved.  粵ICP備14043402號(hào)-4

额敏县| 义马市| 林甸县| 剑河县| 红桥区| 长治市| 大埔县| 揭西县| 南丰县| 光泽县| 京山县| 青阳县| 巴彦县| 塘沽区| 绥阳县| 乡宁县| 北碚区| 克东县| 祁阳县| 磴口县| 徐闻县| 克拉玛依市| 仁化县| 成安县| 松溪县| 封丘县| 岚皋县| 手游| 包头市| 黑河市| 桦甸市| 赤峰市| 大同县| 准格尔旗| 双牌县| 四会市| 奉新县| 永安市| 化德县| 禄丰县| 南通市|