📄 main.c
字号:
//通过控制PWM来达到控制电机的速度
//控制电机的正反转 计算速度
#include "SPCE061A.h"
#include "Key.h"
#define P1 (0x0180) //6/16
#define P2 (0x01c0) //7/16
#define P3 (0x0200) //8/16
#define P4 (0x0240) //9/16
#define P5 (0x0280) //10/16
#define P6 (0x02c0) //11/16
#define P7 (0x0300) //12/16
#define P8 (0x0340) //13/16
#define P9 (0x0380) //14/16
#define Pa P3
#define Pb P3
#define CW 0x1000
#define Enable 0x2000
#define D1 0xfff8
#define D2 0xfff0
#define D3 0xff00
#define D4 0xf000
#define D5 0x0000
#define A_Data *P_TimerA_Data
#define B_Data *P_TimerB_Data
#define A_Ctrl *P_TimerA_Ctrl
#define B_Ctrl *P_TimerB_Ctrl
#define IOB *P_IOB_Data
void key_value_process(int Key);
void zhengzuan()
{IOB|=CW; }
void fangzuan()
{IOB&=~CW;}
void stop()
{
IOB|=0x2000;
}
void start()
{
IOB&=~0x2000;
}
int main (void)
{
*P_IOB_Dir=0xff00;
*P_IOB_Attrib=0xff00;
*P_IOB_Data=0x0000;
Key_Init();
while(1)
{
unsigned int Key_value;
Key_value = Key_Get();
switch(Key_value)
{
case KEY_0:
A_Ctrl=P1;
break;
case KEY_1:
A_Ctrl=P2;
break;
case KEY_2:
A_Ctrl=P3;
break;
case KEY_3:
A_Ctrl=P4;
break;
case KEY_4:
A_Ctrl=P5;
break;
case KEY_5:
A_Data=D1;
break;
case KEY_6:
A_Data=D2;
break;
case KEY_7:
A_Data=D3;
break;
case KEY_8:
A_Data=D4;
break;
case KEY_9:
A_Data=D5;
break;
case KEY_A:
zhengzuan();
break;
case KEY_B:
fangzuan();
break;
case KEY_C:
stop();
break;
case KEY_D:
start();
break;
default:
break;
}
*P_Watchdog_Clear=0x0001;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -