久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3141|回復: 6
打印 上一主題 下一主題
收起左側

利用單片機定時/計數器T0實現對輸入脈沖信號4分頻.怎么弄啊?

[復制鏈接]
回帖獎勵 1 黑幣 回復本帖可獲得 1 黑幣獎勵! 每人限 2 次
跳轉到指定樓層
樓主
我的理解是單片機晶振頻率為6mhz,一個機器周期2us,實現四分頻就是變成一個周期8us,然后編程proteus用示波器顯示出來
程序這樣子,但是我感覺不太對啊,求指導。
# include <reg51.h>
sbit LED0=P1^4;
void main()
{
TMOD = 0x01;
TH0 = 65534/ 256;
TL0 = 65534% 256;
EA = 1; ET0 = 1;
TR0 = 1;
while(1) {; }
}
void T0_int( ) interrupt 1
{
TH0 = 65534 / 256;
TL0 = 65534 % 256;
LED0 = !LED0;
}

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:275826 發表于 2021-5-26 20:23 | 只看該作者
你程序里沒有輸入信號吧
回復

使用道具 舉報

板凳
ID:825397 發表于 2021-5-26 20:29 | 只看該作者
本帖最后由 Tuier 于 2021-5-26 20:35 編輯

#include<reg52.h>

sbit input=P1^0;
sbit output=P1^1;

void main()
{
        TMOD=0x051;                 //模式設置,定時計數器0用于定時,定時計數器1用于計數

        TR0=1; //打開定時器0
        TR1=1; //開通TR1計數器
        TH0=(65536-46080)/256;// 計時器每隔50000微秒(晶振11.0592MHz)發起一次中斷。
        TL0=(65536-46080)%256;

        ET0=1;                         //開定時器0中斷        
        EA=1;                         //開總中斷
        while(1)
        {//TL1為定時計數器1對應的內部寄存器的低八位。每當外部脈沖由1變為0時,其值加一。

                if(TL1==2)        //對從T1端口采得的波形四分頻。1為二分頻,2為四分頻,3為6分頻,以此類推。
                                        //每計數一次(即采的模擬輸入方波的一個周期),即執行此函數
                        {
                                output=~output;//模擬方波的周期為100ms,而此處,每隔一個輸入方波的周期,
                                               //輸出信號電平變換一次,故其周期為200ms,實現了二分頻。
                                TL1=0;
                        }
        }
}

void timer0() interrupt 1
{
        TH0=(65536-46080)/256;
        TL0=(65536-46080)%256;
        input=~input; //定時器每隔50ms發起一次中斷,input電平變換一次,故模擬輸入方波的周期為100ms

}

無標題.jpg (269.3 KB, 下載次數: 62)

無標題.jpg
回復

使用道具 舉報

地板
ID:213173 發表于 2021-5-26 20:43 | 只看該作者
  1. #include <reg51.h>

  2. sbit LED0=P1^4;

  3. void main()
  4. {
  5.         TMOD = 0x05; //外部脈沖計數
  6.         TH0 = 65534/ 256;
  7.         TL0 = 65534% 256;
  8.         EA = 1;
  9.         ET0 = 1;
  10.         TR0 = 1;
  11.         while(1);
  12. }

  13. void T0_int( ) interrupt 1
  14. {
  15.         TH0 = 65534 / 256;
  16.         TL0 = 65534 % 256;
  17.         LED0 = !LED0;
  18. }
復制代碼
回復

使用道具 舉報

5#
ID:825397 發表于 2021-5-26 20:58 | 只看該作者

#include<reg52.h>

sbit input=P1^0;
sbit output=P1^1;

void main()
{
        TMOD=0x051;                 //模式設置,定時計數器0用于定時,定時計數器1用于計數

        TR0=1; //打開定時器0
        TR1=1; //開通TR1計數器
        TH0=(65536-46080)/256;// 計時器每隔50000微秒(晶振11.0592MHz)發起一次中斷。
        TL0=(65536-46080)%256;

        ET0=1;                         //開定時器0中斷       
        EA=1;                         //開總中斷
        while(1)
        {//TL1為定時計數器1對應的內部寄存器的低八位。每當外部脈沖由1變為0時,其值加一。

                if(TL1==2)        //對從T1端口采得的波形四分頻。
                                        //每計數一次(即采的模擬輸入方波的一個周期),即執行此函數
                        {
                                output=~output;//模擬方波的周期為100ms,而此處,每隔一個輸入方波的周期,
                                               //輸出信號電平變換一次,故其周期為200ms,實現了二分頻。
                                TL1=0;
                        }
        }
}

void timer0() interrupt 1
{
        TH0=(65536-46080)/256;
        TL0=(65536-46080)%256;
        input=~input; //定時器每隔50ms發起一次中斷,input電平變換一次,故模擬輸入方波的周期為100ms

}

無標題.jpg (269.3 KB, 下載次數: 78)

無標題.jpg
回復

使用道具 舉報

6#
ID:927807 發表于 2021-5-26 21:12 | 只看該作者
于 2021-5-26 20:43 | 只看該作者 #include <reg51.h>  sbit LED0=P1^4;  void main() {         TMOD = 0x05; //外部脈沖計數         TH0 = 65534/ 256;          TL0 = 65534% 256;         EA = 1;          ET0 = 1;         TR0 = 1;          while(1); }  void T0_int( ) interrupt 1 {         TH0 = 65534 / 256;          TL0 = 65534 % 256;         LED0 = !LED0; }
回復

使用道具 舉報

7#
ID:921257 發表于 2021-5-26 22:13 | 只看該作者
Tuier 發表于 2021-5-26 20:58
#include

sbit input=P1^0;

謝謝大哥,我悟了
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 中文字幕av一区二区三区 | 亚洲高清av在线 | 自拍在线| 国产精品区二区三区日本 | 精品在线一区 | 天堂综合网久久 | 亚洲免费在线观看 | 日本三级电影免费观看 | 亚洲第一中文字幕 | 精品一区二区三区在线观看国产 | 国产露脸对白88av | 国产成人99久久亚洲综合精品 | 亚洲一区二区中文字幕在线观看 | 免费观看一级特黄欧美大片 | 国产成人精品免费 | 国产在线拍偷自揄拍视频 | 亚洲欧美视频一区二区 | 尤物视频在线免费观看 | 激情综合五月天 | 一级做a爰片久久毛片免费看 | 国产精品美女www爽爽爽 | 欧美成人黄色小说 | 欧美日韩在线免费 | 亚洲美女一区二区三区 | 99精品视频一区二区三区 | 日本久久福利 | 九九久久免费视频 | 日韩免费视频 | 久久一| 精品毛片 | 精品在线99| 成人免费福利 | 日本特黄特色aaa大片免费 | 无码一区二区三区视频 | 国产激情一区二区三区 | av性色全交蜜桃成熟时 | 成人免费在线观看 | 欧美一区二区激情三区 | 在线第一页 | 羞羞视频网站 | 97久久精品|