微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > MCU和单片机设计讨论 > PWM产生可调方波

PWM产生可调方波

时间:10-02 整理:3721RD 点击:
STC89C52RC 定时器0控制高电平,定时器1控制周期,两个按键分别增加t1和t2值
但下载到芯片内无反应,求解
#include<reg52.h>                               //doesnt work
typedef unsigned char uchar;
sbit V_OUT=P1^0;
sbit KEY1=P3^4;
sbit KEY2=P3^5;
int t1,t2;
void timer0_1_init(void)
{
        TMOD=0x11;
        TH0=0xff;
        TL0=0xff;
        TH1=0xff;
        TL1=0xff;
        ET0=1;
        ET1=1;
        TR0=1;
        EA=1;
}
void timer0()interrupt 1 using 1
{
        V_OUT=0;
        TH1=t1/10;
        TL0=t1%10;
        TR0=0;
        TR1=1;
}
void timer1()interrupt 3 using 2
{
        V_OUT=1;
        TH1=t2/10;
        TL1=t2%10;
        TR1=0;
        TR0=1;
}
void main(void)
{
        t1=56320,t2=t1;
        while(1)
        {
                KEY1=1;
                if(KEY1==0)
                {
                        t1+=10;
                        if(t1<56320)t1=56320;
                }
                KEY2=1;
                if(KEY2==0)
                {
                        t2++;
                        if(t2<56320)t2=56320;
                }
        }
}

定时器初始化程序没怎么看,假设你的定时器能够正常工作,那问题就出现在main函数里面,KEY1=1;KEY2=1;这两句是什么意思?KEY1、KEY2都置1了,下面的判断还能执行吗?可以去掉那两句试一下

定时器初始化程序没怎么看,假设你的定时器能够正常工作,那问题就出现在main函数里面,KEY1=1;KEY2=1;这两句是什么意思?KEY1、KEY2都置1了,下面的判断还能执行吗?可以去掉那两句试一下

定时器初始化程序没怎么看,假设你的定时器能够正常工作,那问题就出现在main函数里面,KEY1=1;KEY2=1;这两句是什么意思?KEY1、KEY2都置1了,下面的判断还能执行吗?可以去掉那两句试一下

定时器初始化程序没怎么看,假设你的定时器能够正常工作,那问题就出现在main函数里面,KEY1=1;KEY2=1;这两句是什么意思?KEY1、KEY2都置1了,下面的判断还能执行吗?可以去掉那两句试一下

定时器初始化程序没怎么看,假设你的定时器能够正常工作,那问题就出现在main函数里面,KEY1=1;KEY2=1;这两句是什么意思?KEY1、KEY2都置1了,下面的判断还能执行吗?可以去掉那两句试一下

KEY1=1; KEY2=1;这两句在前边,后边的判断语句是进不去的

KEY1=1; KEY2=1;这两句在前边,后边的判断语句是进不去的

KEY1=1; KEY2=1;这两句在前边,后边的判断语句是进不去的

额。只有初始化中断却没有中断服务程序吗?

key1,key2是单片机口接的一个按键,另一端接地
是独立按键检测

有啊 void timer0()interrupt 1 using 1

是不是差个键盘扫面程序
void scan()
if(k1=1)
delay 10ms
if(k1=1)
{
...
}

上面应该是== 打快了 没注意

应该不是键盘扫描的问题,单片机读IO口的速度还没有太快
改了一下定时初值,发现可以让LED灯渐变了
对定时器理解还不太透彻
感谢前辈指点

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top