#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; } }