153 lines
3.1 KiB
C
153 lines
3.1 KiB
C
|
|
#include "hwCtrl.h"
|
|
#include "PINdef.h"
|
|
|
|
|
|
#define IO_INPUT 0x01
|
|
#define IO_OUTPUT 0x00
|
|
|
|
void IO_Init(void)
|
|
{
|
|
|
|
}
|
|
|
|
void Output_Ctrl(uint8_t state)
|
|
{
|
|
|
|
}
|
|
|
|
#define KEY_AD_TH 30
|
|
uint8_t isKeyMatchAd(uint16_t val,uint16_t match)
|
|
{
|
|
if ( val >= (match - KEY_AD_TH) && val <= (match + KEY_AD_TH))
|
|
{
|
|
return 1;
|
|
}
|
|
return 0;
|
|
}
|
|
|
|
#define KEY_AD_V0 30
|
|
#define KEY_AD_V1 254
|
|
#define KEY_AD_V2 455
|
|
#define KEY_AD_V3 658
|
|
#define KEY_AD_V4 896
|
|
|
|
#define KEY_AD_V5 511
|
|
#define KEY_AD_V6 696
|
|
|
|
uint16_t g_AdVal[3];
|
|
|
|
uint8_t GetKeyState(uint8_t keyno)
|
|
{
|
|
switch (keyno)
|
|
{
|
|
case SIGID_KEY1:
|
|
return isKeyMatchAd(g_AdVal[ADCH_KEYAD1],KEY_AD_V5);
|
|
case SIGID_KEY2:
|
|
return isKeyMatchAd(g_AdVal[ADCH_KEYAD1],KEY_AD_V6);
|
|
case SIGID_KEY3:
|
|
return GPIO_Read(IO_KEY3)?1:0;
|
|
case SIGID_KEY4:
|
|
return GPIO_Read(IO_KEY4)?1:0;
|
|
case SIGID_KEY5:
|
|
return GPIO_Read(IO_KEY5)?1:0;
|
|
case SIGID_KEY6:
|
|
return GPIO_Read(IO_KEY6)?1:0;
|
|
case SIGID_KEY7:
|
|
return GPIO_Read(IO_KEY7)?1:0;
|
|
case SIGID_KEY8:
|
|
return GPIO_Read(IO_KEY8)?1:0;
|
|
case SIGID_KEY9:
|
|
return isKeyMatchAd(g_AdVal[ADCH_KEYAD2],KEY_AD_V0);
|
|
case SIGID_KEY10:
|
|
return isKeyMatchAd(g_AdVal[ADCH_KEYAD2],KEY_AD_V1);
|
|
case SIGID_KEY13:
|
|
return isKeyMatchAd(g_AdVal[ADCH_KEYAD2],KEY_AD_V2);
|
|
case SIGID_KEY11:
|
|
return isKeyMatchAd(g_AdVal[ADCH_KEYAD2],KEY_AD_V3);
|
|
case SIGID_KEY12:
|
|
return isKeyMatchAd(g_AdVal[ADCH_KEYAD2],KEY_AD_V4);
|
|
default:
|
|
return 0;
|
|
}
|
|
}
|
|
|
|
|
|
#define LED_OFF GPIO_HIGH
|
|
#define LED_ON GPIO_LOW
|
|
|
|
#if BOARDCFG == LEFT_BOARD
|
|
#define LEDF1 IO_LED4
|
|
#define LEDF2 IO_LED5
|
|
#define LEDF3 IO_LED6
|
|
|
|
#define LEDH1 IO_LED1
|
|
#define LEDH2 IO_LED2
|
|
#define LEDH3 IO_LED3
|
|
#else
|
|
#define LEDF1 IO_LED1
|
|
#define LEDF2 IO_LED2
|
|
#define LEDF3 IO_LED3
|
|
|
|
#define LEDH1 IO_LED4
|
|
#define LEDH2 IO_LED5
|
|
#define LEDH3 IO_LED6
|
|
#endif
|
|
|
|
void FanLED_Ctrl(uint8_t state)
|
|
{
|
|
switch (state)
|
|
{
|
|
case 0:
|
|
GPIO_Set(LEDF1,LED_OFF);
|
|
GPIO_Set(LEDF2,LED_OFF);
|
|
GPIO_Set(LEDF3,LED_OFF);
|
|
break;
|
|
case 1:
|
|
GPIO_Set(LEDF1,LED_ON);
|
|
GPIO_Set(LEDF2,LED_OFF);
|
|
GPIO_Set(LEDF3,LED_OFF);
|
|
break;
|
|
case 2:
|
|
GPIO_Set(LEDF1,LED_ON);
|
|
GPIO_Set(LEDF2,LED_ON);
|
|
GPIO_Set(LEDF3,LED_OFF);
|
|
break;
|
|
case 3:
|
|
GPIO_Set(LEDF1,LED_ON);
|
|
GPIO_Set(LEDF2,LED_ON);
|
|
GPIO_Set(LEDF3,LED_ON);
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
}
|
|
void HeatLED_Ctrl(uint8_t state)
|
|
{
|
|
switch (state)
|
|
{
|
|
case 0:
|
|
GPIO_Set(LEDH1,LED_OFF);
|
|
GPIO_Set(LEDH2,LED_OFF);
|
|
GPIO_Set(LEDH3,LED_OFF);
|
|
break;
|
|
case 1:
|
|
GPIO_Set(LEDH1,LED_ON);
|
|
GPIO_Set(LEDH2,LED_OFF);
|
|
GPIO_Set(LEDH3,LED_OFF);
|
|
break;
|
|
case 2:
|
|
GPIO_Set(LEDH1,LED_ON);
|
|
GPIO_Set(LEDH2,LED_ON);
|
|
GPIO_Set(LEDH3,LED_OFF);
|
|
break;
|
|
case 3:
|
|
GPIO_Set(LEDH1,LED_ON);
|
|
GPIO_Set(LEDH2,LED_ON);
|
|
GPIO_Set(LEDH3,LED_ON);
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
}
|