210 lines
4.0 KiB
C
210 lines
4.0 KiB
C
|
|
#include "hwCtrl.h"
|
|
#include "r_cg_port.h"
|
|
#include "iodefine.h"
|
|
#include "appTask.h"
|
|
|
|
#define K74L 1
|
|
#define K74R 2
|
|
#define BOARD K74R
|
|
|
|
|
|
|
|
#if BOARD == K74R
|
|
//RIGHT
|
|
#define LEDH1 P2_bit.no3
|
|
#define LEDH2 P1_bit.no0
|
|
#define LEDH3 P1_bit.no1
|
|
|
|
#define LEDF1 P1_bit.no2
|
|
#define LEDF2 P1_bit.no3
|
|
#define LEDF3 P1_bit.no4
|
|
|
|
#define LEDM1 P4_bit.no2
|
|
#define LEDM2 P4_bit.no1
|
|
#define LEDM3 P2_bit.no2
|
|
|
|
#else
|
|
//LEFT
|
|
#define LEDH1 P2_bit.no3
|
|
#define LEDH2 P1_bit.no0
|
|
#define LEDH3 P1_bit.no1
|
|
|
|
#define LEDF1 P1_bit.no2
|
|
#define LEDF2 P1_bit.no3
|
|
#define LEDF3 P1_bit.no4
|
|
|
|
#define LEDM1 P4_bit.no2
|
|
#define LEDM2 P4_bit.no1
|
|
#define LEDM3 P2_bit.no2
|
|
|
|
#endif
|
|
|
|
|
|
#define IO_KEY5 P12_bit.no2
|
|
#define IO_KEY6 P13_bit.no7
|
|
|
|
|
|
|
|
|
|
|
|
extern uint16_t g_AdVal[3];
|
|
|
|
void FanLED_Ctrl(uint8_t state)
|
|
{
|
|
switch (state)
|
|
{
|
|
case 0:
|
|
LEDF1 = LED_OFF;
|
|
LEDF2 = LED_OFF;
|
|
LEDF3 = LED_OFF;
|
|
break;
|
|
case 3:
|
|
LEDF1 = LED_ON;
|
|
LEDF2 = LED_OFF;
|
|
LEDF3 = LED_OFF;
|
|
break;
|
|
case 2:
|
|
LEDF1 = LED_ON;
|
|
LEDF2 = LED_ON;
|
|
LEDF3 = LED_OFF;
|
|
break;
|
|
case 1:
|
|
LEDF1 = LED_ON;
|
|
LEDF2 = LED_ON;
|
|
LEDF3 = LED_ON;
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
}
|
|
void HeatLED_Ctrl(uint8_t state)
|
|
{
|
|
switch (state)
|
|
{
|
|
case 0:
|
|
LEDH1 = LED_OFF;
|
|
LEDH2 = LED_OFF;
|
|
LEDH3 = LED_OFF;
|
|
break;
|
|
case 3:
|
|
LEDH1 = LED_ON;
|
|
LEDH2 = LED_OFF;
|
|
LEDH3 = LED_OFF;
|
|
break;
|
|
case 2:
|
|
LEDH1 = LED_ON;
|
|
LEDH2 = LED_ON;
|
|
LEDH3 = LED_OFF;
|
|
break;
|
|
case 1:
|
|
LEDH1 = LED_ON;
|
|
LEDH2 = LED_ON;
|
|
LEDH3 = LED_ON;
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
}
|
|
|
|
|
|
void AnmoLED_Ctrl(uint8_t state)
|
|
{
|
|
switch (state)
|
|
{
|
|
case 0:
|
|
LEDM1 = LED_OFF;
|
|
LEDM2 = LED_OFF;
|
|
LEDM3 = LED_OFF;
|
|
break;
|
|
case 3:
|
|
LEDM1 = LED_ON;
|
|
LEDM2 = LED_OFF;
|
|
LEDM3 = LED_OFF;
|
|
break;
|
|
case 2:
|
|
LEDM1 = LED_ON;
|
|
LEDM2 = LED_ON;
|
|
LEDM3 = LED_OFF;
|
|
break;
|
|
case 1:
|
|
LEDM1 = LED_ON;
|
|
LEDM2 = LED_ON;
|
|
LEDM3 = LED_ON;
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
}
|
|
|
|
#define KEY_AD_V1 690
|
|
#define KEY_AD_V2 510
|
|
#define KEY_AD_TH 50
|
|
#define KEY5_AD_V1 KEY_AD_TH //0
|
|
#define KEY5_AD_V2 254
|
|
#define KEY5_AD_V3 455
|
|
#define KEY5_AD_V4 658
|
|
#define KEY5_AD_V5 902
|
|
uint8_t GetKeyState(uint8_t keyno)
|
|
{
|
|
switch (keyno)
|
|
{
|
|
#if BOARD == K74R
|
|
//RIGHT
|
|
case KEY_FAN:
|
|
return g_AdVal[0]<1000?1:0;
|
|
break;
|
|
case KEY_JR:
|
|
return g_AdVal[1]<1000?1:0;
|
|
break;
|
|
case KEY_AM:
|
|
return (IO_KEY5==0||IO_KEY6==0)?1:0;
|
|
break;
|
|
#else
|
|
//left
|
|
case KEY_JR:
|
|
return (g_AdVal[1]>=KEY_AD_V1-KEY_AD_TH && g_AdVal[1]<=KEY_AD_V1+KEY_AD_TH)?1:0;
|
|
break;
|
|
case KEY_FAN:
|
|
return (g_AdVal[1]>=KEY_AD_V2-KEY_AD_TH && g_AdVal[1]<=KEY_AD_V2+KEY_AD_TH)?1:0;
|
|
break;
|
|
case KEY_TTQ:
|
|
return IO_KEY5;
|
|
break;
|
|
case KEY_TTH:
|
|
return IO_KEY6;
|
|
break;
|
|
case KEY_HGQ:
|
|
return IO_KEY3;
|
|
break;
|
|
case KEY_HGH:
|
|
return IO_KEY4;
|
|
break;
|
|
|
|
case KEY_KBH:
|
|
return IO_KEY7;
|
|
break;
|
|
case KEY_KBQ:
|
|
return IO_KEY8;
|
|
break;
|
|
case KEY_ZDS:
|
|
return (g_AdVal[0]>=KEY5_AD_V4-KEY_AD_TH && g_AdVal[0]<=KEY5_AD_V4+KEY_AD_TH)?1:0;
|
|
break;
|
|
case KEY_ZDJ:
|
|
return (g_AdVal[0]>=KEY5_AD_V1-KEY_AD_TH && g_AdVal[0]<=KEY5_AD_V1+KEY_AD_TH)?1:0;
|
|
break;
|
|
case KEY_TZS:
|
|
return (g_AdVal[0]>=KEY5_AD_V2-KEY_AD_TH && g_AdVal[0]<=KEY5_AD_V2+KEY_AD_TH)?1:0;
|
|
break;
|
|
case KEY_TZJ:
|
|
return (g_AdVal[0]>=KEY5_AD_V3-KEY_AD_TH && g_AdVal[0]<=KEY5_AD_V3+KEY_AD_TH)?1:0;
|
|
break;
|
|
case KEY_FW:
|
|
return (g_AdVal[0]>=KEY5_AD_V5-KEY_AD_TH && g_AdVal[0]<=KEY5_AD_V5+KEY_AD_TH)?1:0;
|
|
break;
|
|
#endif
|
|
default:
|
|
return 0;
|
|
break;
|
|
}
|
|
} |