标题: 关于PCA/PWM,输出PWM模块,捕获模块以及16位定时器模块的程序 [打印本页]

作者: 无谓陌路    时间: 2017-7-16 10:31
标题: 关于PCA/PWM,输出PWM模块,捕获模块以及16位定时器模块的程序

16位定时器模式:

#include<1.h>
// #include<intrins.h>
// #defined uchar unsigned char
// #defined uint unsigned int
sbit led=P2^0;

   
         void main()
         {                 
                           CCAP0H=0x3c;                          //设初值,设高位为了后续移位
                CCAP0L=0;
                          CCAPM0=0x49;
                EA=1;
                CR=1;
                while(1);                          
         }
                         void intter(void) interrupt 7
                        {
                                   unsigned int x;
                                  x=(CCAP0H<<8)+CCAP0L+0x3c00;           //加上10ms,
                                  CCAP0L=x;
                                  CCAP0H=x<<8;
                                  led=~led;
                                  CCF0=0;                                                  //清除标志位

                        }


捕获模式:
#include<1.h>
#include<intrins.h>
// #defined uchar unsigned char
// #defined uint unsigned int
sbit led=P2^0;

   
         void main()
         {
                 CCAPM1=0x31;                   //模式0,模式1设置为上升沿触发和下降沿触发
                CCAPM0=0x31;
                EA=1;
                while(1);                                                 //等待中断
         }
                         void intter(void) interrupt 7
                        {
                                   if(CCF0==1)
                                  {
                                          led=~led;
                                        CCF0=0;                                //清零
                                  }
                                if(CCF1==1)
                                {
                                  led=~led;
                                  CCF1=0;                                         //清零
                                }
                        }
                 

输出PWM模块:
#include<1.h>
// #include<intrins.h>
// #defined uchar unsigned char
// #defined uint unsigned int
sbit led=P2^0;
sbit tt=P1^3;

   
         void main()
         {
                
                CCAPM0=0x42;   
                          CR=1;
                           CCAP0H=0x80;
                       
                while(1);
         }
                               

作者: 无谓陌路    时间: 2017-7-16 10:31
头文件用60S2的头文件
作者: hozhiwen    时间: 2017-8-7 23:10
PWM模块输出不了16位的吧?
作者: yinqing452    时间: 2020-5-16 18:19
好东西,我测了一下,蛮好的,我刚好要用3个定时器,结果只有2个,刚好用上了,非常感谢




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1