找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

帖子
查看: 4256|回復: 4
打印 上一主題 下一主題
收起左側(cè)

c語言定時器T0方式2控制led點亮時間1s 仿真led閃得很快

[復制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:893765 發(fā)表于 2021-4-30 10:28 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
想知道自己的代碼問題出在哪里
#include<reg51.h>
#include<intrins.h>
#define uchar unsigned char
uchar count=0;
uchar led;
void time0(void)interrupt 1
{   TH0=-100000/250;
    TL0=-100000%250;
    count++;
    if(count==10)
    { count=0;
      led=_crol_(led,1);
      P1=led;
    }
}
void main(void)
{  led=0xfe;
   TMOD=0x02;
   TH0=-100000/250;
   TL0=-100000%250;
   ET0=1;
   TR0=1;
   EA=1;
   while(1);
}

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

相關(guān)帖子

回復

使用道具 舉報

沙發(fā)
ID:275826 發(fā)表于 2021-4-30 13:19 | 只看該作者
  把TH0=-100000/250;   TL0=-100000%250; 改成TH0=-10000/256;   TL0=-10000%256;
再把if(count==10)改成if(count==100) 就可以了
回復

使用道具 舉報

板凳
ID:893765 發(fā)表于 2021-4-30 14:43 | 只看該作者
tyrl800 發(fā)表于 2021-4-30 13:19
把TH0=-100000/250;   TL0=-100000%250; 改成TH0=-10000/256;   TL0=-10000%256;
再把if(count==10)改 ...

還是很快 話說方式2最多255us吧 不知道怎么辦
回復

使用道具 舉報

地板
ID:213173 發(fā)表于 2021-4-30 18:11 | 只看該作者
田所浩二單推人 發(fā)表于 2021-4-30 14:43
還是很快 話說方式2最多255us吧 不知道怎么辦

定時器方式2是8位自動重裝初值模式,12M晶振最大256us。并且TH0=TL0,如果預裝值6,可以定時250us,定時1秒需要累加中斷4000次。
  1. #include<reg51.h>
  2. #include<intrins.h>
  3. #define uchar unsigned char
  4. unsigned int count=0;//無符號整型數(shù)據(jù)(16位)
  5. uchar led;
  6. void time0(void)interrupt 1
  7. {
  8. //無需再對TH0 TL0 賦值
  9.         count++;
  10.         if(count==4000)
  11.         {
  12.                 count=0;
  13.                 led=_crol_(led,1);
  14.                 P1=led;
  15.         }
  16. }
  17. void main(void)
  18. {
  19.         led=0xfe;                //賦初值
  20.         P1=led;
  21.         TMOD= 0x02;                //設置定時器自動重裝模式
  22.         TL0 = 0x06;                //設置定時初值
  23.         TH0 = 0x06;                //設置定時重載值
  24.         TR0 = 1;                //定時器0開始計時
  25.         ET0=1;
  26.         EA=1;
  27.         while(1);
  28. }
復制代碼
回復

使用道具 舉報

5#
ID:893765 發(fā)表于 2021-5-1 21:23 | 只看該作者
wulin 發(fā)表于 2021-4-30 18:11
定時器方式2是8位自動重裝初值模式,12M晶振最大256us。并且TH0=TL0,如果預裝值6,可以定時250us,定時1 ...

謝謝您!
回復

使用道具 舉報

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

本版積分規(guī)則

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

Powered by 單片機教程網(wǎng)

快速回復 返回頂部 返回列表