文档库 最新最全的文档下载
当前位置:文档库 › stc15硬件PWM调速测试成功

stc15硬件PWM调速测试成功

#include
#define uint unsigned int
#define uchar unsigned char
/******************************************************************************
电机驱动位定义
*******************************************************************************/
sbit IN1=P1^2;
sbit IN2=P1^3;
sbit IN3=P1^4;
sbit IN4=P1^5;
void main()
{AUXR1&=0XCF;
CCON=0X00;
CMOD=0X00;
/*******************************************************************************
8位自动重装
********************************************************************************/
CL=0x00;
CH=0X00;
/********************************************************************************
占空比的调节,0x00-0xff,本程序用8位,第九位EPCnH和EPCnH
在PCA_PWMn内最低两位置零即可。
CL小于CCAPnL时,使能低电平;CL大于CCAPnL时使能高电平
**********************************************************************************/
CCAP0H=0x80; // 占空比控制
CCAP0L=0x80;
CCAP1H=0X20;
CCAP1L=0X20;
/**********************************************************************************
PCA模块0模式寄存器 Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0
位描述 - ECOM0 CAPP0 CAPN0 MAT0 TOG0 PWM0 ECCF0
初始值=x000,0000 x 0 0 0 0 0 0 0
PCA模块1模式寄存器 Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0
位描述 - ECOM1 CAPP1 CAPN1 MAT1 TOG1 PWM1 ECCF1
初始值=x000,0000 x 0 0 0 0 0 0 0
ECOM0=1,允许比较器功能控制位;PWM0=1,允许CCPn引脚用作脉宽调节输出。开启PWM模式必须
对次两位置1.
***********************************************************************************/
CCAPM0=0X42;
CCAPM1=0X42;
/**********************************************************************************
PCA0模式PWM辅助寄存器 Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0
位描述 EBS0_1 EBS0_0 - - - - EPC0H EPC0L
初始值=xxxx,xx00 x x x x x x 0 0

PCA1模式PWM辅助寄存器 Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0
位描述 EBS1_1 EBS1_0 - - - - EPC1H EPC1L
初始值=xxxx,xx00 x x x x x x 0 0
EBSn_1 和EBSn_0是当PCA模块工作在PWM模式时的功能选择位。
0 0 PCA模块工作于8位PWM功能
0 1 PCA模块工作于7位PWM功能
1 0 PCA模块工作于6位PWM功能
1 1 PCA模块工作于8位PWM功能
***********************************************************************************/
PCA_PWM0=0X00;
PCA_PWM1=0X00;
CR=1;
//EA=1;
IN1=1;
IN2=0;
IN3=1;
IN4=0;
while (1);
}


相关文档