找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1490|回复: 1
收起左侧

这个单片机定时器 PWM 疑问

[复制链接]
ID:59341 发表于 2017-5-24 15:30 | 显示全部楼层 |阅读模式
效果是PWM ,按下按钮时LED亮度发生变化,疑问:这个程序怎么没用TMOD设置?也没有TH0和TL0初值设置?
#include<reg51.h>
#define uchar unsigned char
#define uint unsigned int

sbit out=P3^3;                   //33

uchar timerh,timerl;


sbit k1=        P3^5;
sbit k2=        P3^6;

  
void main()                                   //主函数
{        
out=0;
         ET0=1;
        EA=1;
        TR0=1;

        
        
        while(1)
          {
               
            if(k1==0) {TR0=0; out=0;}         //
           else if(k2==0) {TR0=0; out=1;}  //

           else  { TR0=1; timerh=2; timerl=130;}
      }
}                                                                                                                                                                                                                                         


void timer0() interrupt 1
{

  out=~out;
  if(out==1)   
  {TH0=timerl;}
  else            
  {TH0=timerh;  }
  TL0=0;
  

}



回复

使用道具 举报

ID:149988 发表于 2017-5-26 17:32 | 显示全部楼层

RE: 这个单片机定时器 PWM 疑问

没设定TMOD很可能是利用默认值,没有设定TH0和TL0初值,很可能是默认为0.
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表