⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 motor.c

📁 此代码是我精心调试而成
💻 C
字号:
#include <LPC213X.h>
#include "MOTOR.h"
#include "..\KEY\KEY.h"


void CAPTURE_INIT()
{
  PINSEL1 |=1<<13;
  PINSEL1 |=1<<27;
    T0PR  = 10;						// 分频系数
 
	T0CTCR = (0x02 << 0) |			// 计数器,在CAP的下降沿递增
		     (0x03 << 2);			// 选择CAPn.2

	T0TC  = 0;
	T0TCR = 0x01;					// 启动定时器
}
 
void PWM_INIT(void)
{
 	PINSEL1 |=1<<10;		 
    PINSEL0 |=1<<15;
 
    /* PWM初始化 */
    PWMPR    = 0x00;		    // 不分频,计数频率为Fpclk
    PWMMCR   = 0x02;			// 设置PWMMR0匹配时复位PWMTC
    PWMPCR   = 0x2400;			// 允许PWM1,PWM3输出,单边PWM
    PWMMR0   = 12000000 / 20000;
    PWMMR2   = PWMMR0/3;		// 50%占空比
    PWMMR5   = PWMMR0/3;		// 50%占空比
    PWMLER   = 0x25;			// PWM0和PWM1,PWM3匹配锁存
    PWMTCR   = 0x02;            // 复位PWMTC
    PWMTCR   = 0x09;            // 启动PWM输出
 
}
 void MOTOR_INIT(void)
{
  	IO0DIR |=BR;
	IO1DIR |=JDQ;
	IO1DIR |=EN;
	//IO0DIR |=FR1;
	//IO0DIR |=FR2;
	IO0CLR |=BR;
	IO1CLR |=JDQ;
	IO1CLR |=EN;
//	IO0SET |=FR1;
//	IO0CLR |=FR2;
	PWM_INIT();
}
void MOTOR_FORWARD(void)
{

	IO0SET |=BR;
	IO1SET |=JDQ;
	IO1SET |=EN;
//	IO0SET |=FR1;
//	IO0CLR |=FR2;
}
void MOTOR_BACK(void)
{
	IO0SET |=BR;
	IO1SET |=JDQ;
	IO1SET |=EN;
//	IO0CLR |=FR1;
//	IO0SET |=FR2;
}
 void KEY_DELAY()
 {
    int i=0;
 
	for(i=1000000;i>0;i--)	{}
 }
void MOTOR_RUN(void)
{
	MOTOR_FORWARD();
	  	switch(KEY_READ())
	{
	case  S2:	{
	   			PWMMR2=PWMMR2+10;
				PWMMR5=PWMMR2;
				if(PWMMR2>=PWMMR0) {PWMMR2=PWMMR0;PWMMR5=PWMMR2;}
			 	break;
				}

	case  S5:  {
				PWMMR2=PWMMR2-10;
				PWMMR5=PWMMR2;
				if(PWMMR2<=PWMMR0/4) {PWMMR2=PWMMR0/4;PWMMR5=PWMMR0/4;}
				break; 
				}

	default : {
 				
				break;
				}

	}    
		 
	PWMLER   = 0x25;
	KEY_DELAY();	
}
/*********************************************************************************************************
**                            End Of File
********************************************************************************************************/

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -