#include "sys_data.h"
#include "bat.h"

/*
*********************************************************************************************************
*	函 数 名: uint8_t channel_12VBAT(uint8_t channel, int i)
*	功能说明: 控制channel下12VBAT
*	形    参: uint8_t channel: 要控制的channel值 int i: 调用该函数时传入的循环次数
*	返 回 值: 
*********************************************************************************************************
*/
uint8_t channel_12VBAT(uint8_t channel, int i)
{
	switch (channel) 
	{
		case 0x00: // 全部channel
			result = channel_No0_12VBAT(usartMsg.rxBuf[7 + i],i);
			break;
		case 0x01: // channel_1
			result = channel_No1_12VBAT(usartMsg.rxBuf[7 + i], i);
			break;
		case 0x02:// channel_2
			result = channel_No2_12VBAT(usartMsg.rxBuf[7 + i], i);
			break;
		case 0x03:// channel_3
			result = channel_No3_12VBAT(usartMsg.rxBuf[7 + i], i);
			break;
		case 0x04:// channel_4
			result = channel_No4_12VBAT(usartMsg.rxBuf[7 + i], i);
			break;
		default:
			result = 0x05;
			break;
	}
	return result;
	
}
/*
*********************************************************************************************************
*	函 数 名: uint8_t channel_5VBAT(uint8_t cmd, int i)
*	功能说明: 控制channel下5VBAT
*	形    参: uint8_t channel: 要控制的channel值 int i: 调用该函数时传入的循环次数
*	返 回 值: 
*********************************************************************************************************
*/

uint8_t channel_5VBAT(uint8_t cmd)
{
	switch(cmd)
	{
		case 1:
			GPIO_SetBits(GPIOA,GPIO_Pin_12);
			result = 1;
			break;
		case 2:
			GPIO_ResetBits(GPIOA,GPIO_Pin_12);
			result = 1;
			break;
		default:
			result = 5;
			return result;
	}
	return result;
}
////////////////////////////// CHANNLE 0 //////////////////////////////
uint8_t channel_No0_12VBAT(uint8_t platform, int i)
{
	switch (platform) 
	{
		case 0x00: // 全部平台
			result = channel_No0_platform_No0_12VBAT(usartMsg.rxBuf[8 + i]);
			break;
		case 0x01: // 平台_1
			result = channel_No0_platform_No1_12VBAT(usartMsg.rxBuf[8 + i]);
			break;
		case 0x02: // 平台_2
			result = channel_No0_platform_No2_12VBAT(usartMsg.rxBuf[8 + i]);
			break;
		case 0x03: // 平台_3
			result = channel_No0_platform_No3_12VBAT(usartMsg.rxBuf[8 + i]);
			break;
		case 0x04: // 平台_4
			result = channel_No0_platform_No4_12VBAT(usartMsg.rxBuf[8 + i]);
			break;
		case 0x05: // 平台_5
			result = channel_No0_platform_No5_12VBAT(usartMsg.rxBuf[8 + i]);
			break;
		case 0x06: // 平台_6
			result = channel_No0_platform_No6_12VBAT(usartMsg.rxBuf[8 + i]);
			break;
		default:
			result = 0x05;
			break;
	}
	return result;	
	
}
uint8_t channel_No0_platform_No0_12VBAT(uint8_t cmd)// 所有channel的所有平台
{
	switch (cmd) // 指令值
	{
		case 0x01: //12VBAT(ON)
			all_12VBAT(ON);
			result = 1;
			break;
		case 0x02: //12VBAT(OFF);
			all_12VBAT(OFF);
			result = 1;
			break;
		default:
			result = 0x05;
			break;
	}
	return result;
}

uint8_t channel_No0_platform_No1_12VBAT(uint8_t cmd)// 所有channel的平台1
{
	switch (cmd) // 指令值
	{
		case 0x01: //12VBAT(ON)
			BAT12V(GPIO0_PORT, GPIO0_PIN, ON);
			BAT12V(GPIO6_PORT, GPIO6_PIN, ON);
			BAT12V(GPIO12_PORT, GPIO12_PIN, ON);
			BAT12V(GPIO18_PORT, GPIO18_PIN, ON);
			result = 1;
			break;
		case 0x02: //12VBAT(OFF);
			BAT12V(GPIO0_PORT, GPIO0_PIN, OFF);
			BAT12V(GPIO6_PORT, GPIO6_PIN, OFF);
			BAT12V(GPIO12_PORT, GPIO12_PIN, OFF);
			BAT12V(GPIO18_PORT, GPIO18_PIN, OFF);
			result = 1;
			break;
		default:
			result = 0x05;
			break;
	}
	return result;
}

uint8_t channel_No0_platform_No2_12VBAT(uint8_t cmd)// 所有channel的平台2
{
	switch (cmd) // 指令值
	{
		case 0x01: //12VBAT(ON)
			BAT12V(GPIO1_PORT, GPIO1_PIN, ON);
			BAT12V(GPIO7_PORT, GPIO7_PIN, ON);
			BAT12V(GPIO13_PORT, GPIO13_PIN, ON);
			BAT12V(GPIO19_PORT, GPIO19_PIN, ON);
			result = 1;
			break;
		case 0x02: //12VBAT(OFF);
			BAT12V(GPIO1_PORT, GPIO1_PIN, OFF);
			BAT12V(GPIO7_PORT, GPIO7_PIN, OFF);
			BAT12V(GPIO13_PORT, GPIO13_PIN, OFF);
			BAT12V(GPIO19_PORT, GPIO19_PIN, OFF);
			result = 1;
			break;
		default:
			result = 0x05;
			break;
	}
	return result;
}

uint8_t channel_No0_platform_No3_12VBAT(uint8_t cmd)// 所有channel的平台3
{
	switch (cmd) // 指令值
	{
		case 0x01: //12VBAT(ON)
			BAT12V(GPIO2_PORT, GPIO2_PIN, ON);
			BAT12V(GPIO8_PORT, GPIO8_PIN, ON);
			BAT12V(GPIO14_PORT, GPIO14_PIN, ON);
			BAT12V(GPIO20_PORT, GPIO20_PIN, ON);
			result = 1;
			break;
		case 0x02: //12VBAT(OFF);
			BAT12V(GPIO2_PORT, GPIO2_PIN, OFF);
			BAT12V(GPIO8_PORT, GPIO8_PIN, OFF);
			BAT12V(GPIO14_PORT, GPIO14_PIN, OFF);
			BAT12V(GPIO20_PORT, GPIO20_PIN, OFF);
			result = 1;
			break;
		default:
			result = 0x05;
			break;
	}
	return result;
}

uint8_t channel_No0_platform_No4_12VBAT(uint8_t cmd)// 所有channel的平台4
{
	switch (cmd) // 指令值
	{
		case 0x01: //12VBAT(ON)
			BAT12V(GPIO3_PORT, GPIO3_PIN, ON);
			BAT12V(GPIO9_PORT, GPIO9_PIN, ON);
			BAT12V(GPIO15_PORT, GPIO15_PIN, ON);
			BAT12V(GPIO21_PORT, GPIO21_PIN, ON);
			result = 1;
			break;
		case 0x02: //12VBAT(OFF);
			BAT12V(GPIO3_PORT, GPIO3_PIN, OFF);
			BAT12V(GPIO9_PORT, GPIO9_PIN, OFF);
			BAT12V(GPIO15_PORT, GPIO15_PIN, OFF);
			BAT12V(GPIO21_PORT, GPIO21_PIN, OFF);
			result = 1;
			break;
		default:
			result = 0x05;
			break;
	}
	return result;
}

uint8_t channel_No0_platform_No5_12VBAT(uint8_t cmd)// 所有channel的平台5
{
	switch (cmd) // 指令值
	{
		case 0x01: //12VBAT(ON)
			BAT12V(GPIO4_PORT, GPIO4_PIN, ON);
			BAT12V(GPIO10_PORT, GPIO10_PIN, ON);
			BAT12V(GPIO16_PORT, GPIO16_PIN, ON);
			BAT12V(GPIO22_PORT, GPIO22_PIN, ON);
			result = 1;
			break;
		case 0x02: //12VBAT(OFF);
			BAT12V(GPIO4_PORT, GPIO4_PIN, OFF);
			BAT12V(GPIO10_PORT, GPIO10_PIN, OFF);
			BAT12V(GPIO16_PORT, GPIO16_PIN, OFF);
			BAT12V(GPIO22_PORT, GPIO22_PIN, OFF);
			result = 1;
			break;
		default:
			result = 0x05;
			break;
	}
	return result;
}

uint8_t channel_No0_platform_No6_12VBAT(uint8_t cmd)// 所有channel的平台6
{
	switch (cmd) // 指令值
	{
		case 0x01: //12VBAT(ON)
			BAT12V(GPIO5_PORT, GPIO5_PIN, ON);
			BAT12V(GPIO11_PORT, GPIO11_PIN, ON);
			BAT12V(GPIO17_PORT, GPIO17_PIN, ON);
			BAT12V(GPIO23_PORT, GPIO23_PIN, ON);
			result = 1;
			break;
		case 0x02: //12VBAT(OFF);
			BAT12V(GPIO5_PORT, GPIO5_PIN, OFF);
			BAT12V(GPIO11_PORT, GPIO11_PIN, OFF);
			BAT12V(GPIO17_PORT, GPIO17_PIN, OFF);
			BAT12V(GPIO23_PORT, GPIO23_PIN, OFF);
			result = 1;
			break;
		default:
			result = 0x05;
			break;
	}
	return result;
}
////////////////////////////// CHANNLE 1 //////////////////////////////
uint8_t channel_No1_12VBAT(uint8_t platform, int i)
{
	switch (platform) 
	{
		case 0x00: // 全部平台
			result = channel_No1_platform_No0_12VBAT(usartMsg.rxBuf[8 + i]);
			break;
		case 0x01: // 平台_1
			result = channel_No1_platform_No1_12VBAT(usartMsg.rxBuf[8 + i]);
			break;
		case 0x02: // 平台_2
			result = channel_No1_platform_No2_12VBAT(usartMsg.rxBuf[8 + i]);
			break;
		case 0x03: // 平台_3
			result = channel_No1_platform_No3_12VBAT(usartMsg.rxBuf[8 + i]);
			break;
		case 0x04: // 平台_4
			result = channel_No1_platform_No4_12VBAT(usartMsg.rxBuf[8 + i]);
			break;
		case 0x05: // 平台_5
			result = channel_No1_platform_No5_12VBAT(usartMsg.rxBuf[8 + i]);
			break;
		case 0x06: // 平台_6
			result = channel_No1_platform_No6_12VBAT(usartMsg.rxBuf[8 + i]);
			break;
		default:
			result = 0x05;
			return result;
	}
	return result;	
	
}
uint8_t channel_No1_platform_No0_12VBAT(uint8_t cmd)// channel 1 的所有平台
{
	switch (cmd) // 指令值
	{
		case 0x01: //12VBAT(ON)
			BAT12V(GPIO0_PORT, GPIO0_PIN, ON);
			BAT12V(GPIO1_PORT, GPIO1_PIN, ON);
			BAT12V(GPIO2_PORT, GPIO2_PIN, ON);
			BAT12V(GPIO3_PORT, GPIO3_PIN, ON);
			BAT12V(GPIO4_PORT, GPIO4_PIN, ON);
			BAT12V(GPIO5_PORT, GPIO5_PIN, ON);
			result = 1;
			break;
		case 0x02: //12VBAT(OFF);
			BAT12V(GPIO0_PORT, GPIO0_PIN, OFF);
			BAT12V(GPIO1_PORT, GPIO1_PIN, OFF);
			BAT12V(GPIO2_PORT, GPIO2_PIN, OFF);
			BAT12V(GPIO3_PORT, GPIO3_PIN, OFF);
			BAT12V(GPIO4_PORT, GPIO4_PIN, OFF);
			BAT12V(GPIO5_PORT, GPIO5_PIN, OFF);
			result = 1;
			break;
		default:
			result = 0x05;
			return result;
	}
	return result;
}

uint8_t channel_No1_platform_No1_12VBAT(uint8_t cmd)// channel 1 的平台1
{
	switch (cmd) // 指令值
	{
		case 0x01: //12VBAT(ON)
			BAT12V(GPIO0_PORT, GPIO0_PIN, ON);
			result = 1;
			break;
		case 0x02: //12VBAT(OFF);
			BAT12V(GPIO0_PORT, GPIO0_PIN, OFF);
			result = 1;
			break;
		default:
			result = 0x05;
			break;
	}
	return result;
}

uint8_t channel_No1_platform_No2_12VBAT(uint8_t cmd)// channel 1 的平台2
{
	switch (cmd) // 指令值
	{
		case 0x01: //12VBAT(ON)
			BAT12V(GPIO1_PORT, GPIO1_PIN, ON);
			result = 1;
			break;
		case 0x02: //12VBAT(OFF);
			BAT12V(GPIO1_PORT, GPIO1_PIN, OFF);
			result = 1;
			break;
		default:
			result = 0x05;
			break;
	}
	return result;
}

uint8_t channel_No1_platform_No3_12VBAT(uint8_t cmd)// channel 1 的平台3
{
	switch (cmd) // 指令值
	{
		case 0x01: //12VBAT(ON)
			BAT12V(GPIO2_PORT, GPIO2_PIN, ON);
			result = 1;
			break;
		case 0x02: //12VBAT(OFF);
			BAT12V(GPIO2_PORT, GPIO2_PIN, OFF);
			result = 1;
			break;
		default:
			result = 0x05;
			break;
	}
	return result;
}

uint8_t channel_No1_platform_No4_12VBAT(uint8_t cmd)// channel 1 的平台4
{
	switch (cmd) // 指令值
	{
		case 0x01: //12VBAT(ON)
			BAT12V(GPIO3_PORT, GPIO3_PIN, ON);
			result = 1;
			break;
		case 0x02: //12VBAT(OFF);
			BAT12V(GPIO3_PORT, GPIO3_PIN, OFF);
			result = 1;
			break;
		default:
			result = 0x05;
			break;
	}
	return result;
}

uint8_t channel_No1_platform_No5_12VBAT(uint8_t cmd)// channel 1 的平台5
{
	switch (cmd) // 指令值
	{
		case 0x01: //12VBAT(ON)
			BAT12V(GPIO4_PORT, GPIO4_PIN, ON);
			result = 1;
			break;
		case 0x02: //12VBAT(OFF);
			BAT12V(GPIO4_PORT, GPIO4_PIN, OFF);
			result = 1;
			break;
		default:
			result = 0x05;
			break;
	}
	return result;
}

uint8_t channel_No1_platform_No6_12VBAT(uint8_t cmd)// channel 1 的平台6
{
	switch (cmd) // 指令值
	{
		case 0x01: //12VBAT(ON)
			BAT12V(GPIO5_PORT, GPIO5_PIN, ON);
			result = 1;
			break;
		case 0x02: //12VBAT(OFF);
			BAT12V(GPIO5_PORT, GPIO5_PIN, OFF);
			result = 1;
			break;
		default:
			result = 0x05;
			break;
	}
	return result;
}

////////////////////////////// CHANNLE 2 //////////////////////////////
uint8_t channel_No2_12VBAT(uint8_t platform, int i)
{
	switch (platform) 
	{
		case 0x00: // 全部平台
			result = channel_No2_platform_No0_12VBAT(usartMsg.rxBuf[8 + i]);
			break;
		case 0x01: // 平台_1
			result = channel_No2_platform_No1_12VBAT(usartMsg.rxBuf[8 + i]);
			break;
		case 0x02: // 平台_2
			result = channel_No2_platform_No2_12VBAT(usartMsg.rxBuf[8 + i]);
			break;
		case 0x03: // 平台_3
			result = channel_No2_platform_No3_12VBAT(usartMsg.rxBuf[8 + i]);
			break;
		case 0x04: // 平台_4
			result = channel_No2_platform_No4_12VBAT(usartMsg.rxBuf[8 + i]);
			break;
		case 0x05: // 平台_5
			result = channel_No2_platform_No5_12VBAT(usartMsg.rxBuf[8 + i]);
			break;
		case 0x06: // 平台_6
			result = channel_No2_platform_No6_12VBAT(usartMsg.rxBuf[8 + i]);
			break;
		default:
			result = 0x05;
			break;
	}
	return result;	
	
}
uint8_t channel_No2_platform_No0_12VBAT(uint8_t cmd)// channel 2 的所有平台
{
	switch (cmd) // 指令值
	{
		case 0x01: //12VBAT(ON)
			BAT12V(GPIO6_PORT, GPIO6_PIN, ON);
			BAT12V(GPIO7_PORT, GPIO7_PIN, ON);
			BAT12V(GPIO8_PORT, GPIO8_PIN, ON);
			BAT12V(GPIO9_PORT, GPIO9_PIN, ON);
			BAT12V(GPIO10_PORT, GPIO10_PIN, ON);
			BAT12V(GPIO11_PORT, GPIO11_PIN, ON);
			result = 1;
			break;
		case 0x02: //12VBAT(OFF);
			BAT12V(GPIO6_PORT, GPIO6_PIN, OFF);
			BAT12V(GPIO7_PORT, GPIO7_PIN, OFF);
			BAT12V(GPIO8_PORT, GPIO8_PIN, OFF);
			BAT12V(GPIO9_PORT, GPIO9_PIN, OFF);
			BAT12V(GPIO10_PORT, GPIO10_PIN, OFF);
			BAT12V(GPIO11_PORT, GPIO11_PIN, OFF);
			result = 1;
			break;
		default:
			result = 0x05;
			break;
	}
	return result;
}

uint8_t channel_No2_platform_No1_12VBAT(uint8_t cmd)// channel 2 的平台1
{
	switch (cmd) // 指令值
	{
		case 0x01: //12VBAT(ON)
			BAT12V(GPIO6_PORT, GPIO6_PIN, ON);
			result = 1;
			break;
		case 0x02: //12VBAT(OFF);
			BAT12V(GPIO6_PORT, GPIO6_PIN, OFF);
			result = 1;
			break;
		default:
			result = 0x05;
			break;
	}
	return result;
}

uint8_t channel_No2_platform_No2_12VBAT(uint8_t cmd)// channel 2 的平台2
{
	switch (cmd) // 指令值
	{
		case 0x01: //12VBAT(ON)
			BAT12V(GPIO7_PORT, GPIO7_PIN, ON);
			result = 1;
			break;
		case 0x02: //12VBAT(OFF);
			BAT12V(GPIO7_PORT, GPIO7_PIN, OFF);
			result = 1;
			break;
		default:
			result = 0x05;
			break;
	}
	return result;
}

uint8_t channel_No2_platform_No3_12VBAT(uint8_t cmd)// channel 2 的平台3
{
	switch (cmd) // 指令值
	{
		case 0x01: //12VBAT(ON)
			BAT12V(GPIO8_PORT, GPIO8_PIN, ON);
			result = 1;
			break;
		case 0x02: //12VBAT(OFF);
			BAT12V(GPIO8_PORT, GPIO8_PIN, OFF);
			result = 1;
			break;
		default:
			result = 0x05;
			break;
	}
	return result;
}

uint8_t channel_No2_platform_No4_12VBAT(uint8_t cmd)// channel 2 的平台4
{
	switch (cmd) // 指令值
	{
		case 0x01: //12VBAT(ON)
			BAT12V(GPIO9_PORT, GPIO9_PIN, ON);
			result = 1;
			break;
		case 0x02: //12VBAT(OFF);
			BAT12V(GPIO9_PORT, GPIO9_PIN, OFF);
			result = 1;
			break;
		default:
			result = 0x05;
			break;
	}
	return result;
}

uint8_t channel_No2_platform_No5_12VBAT(uint8_t cmd)// channel 2 的平台5
{
	switch (cmd) // 指令值
	{
		case 0x01: //12VBAT(ON)
			BAT12V(GPIO10_PORT, GPIO10_PIN, ON);
			result = 1;
			break;
		case 0x02: //12VBAT(OFF);
			BAT12V(GPIO10_PORT, GPIO10_PIN, OFF);
			result = 1;
			break;
		default:
			result = 0x05;
			break;
	}
	return result;
}

uint8_t channel_No2_platform_No6_12VBAT(uint8_t cmd)// channel 2 的平台6
{
	switch (cmd) // 指令值
	{
		case 0x01: //12VBAT(ON)
			BAT12V(GPIO11_PORT, GPIO11_PIN, ON);
			result = 1;
			break;
		case 0x02: //12VBAT(OFF);
			BAT12V(GPIO11_PORT, GPIO11_PIN, OFF);
			result = 1;
			break;
		default:
			result = 0x05;
			break;
	}
	return result;
}
////////////////////////////// CHANNLE 3 //////////////////////////////
uint8_t channel_No3_12VBAT(uint8_t platform, int i)
{
	switch (platform) 
	{
		case 0x00: // 全部平台
			result = channel_No3_platform_No0_12VBAT(usartMsg.rxBuf[8 + i]);
			break;
		case 0x01: // 平台_1
			result = channel_No3_platform_No1_12VBAT(usartMsg.rxBuf[8 + i]);
			break;
		case 0x02: // 平台_2
			result = channel_No3_platform_No2_12VBAT(usartMsg.rxBuf[8 + i]);
			break;
		case 0x03: // 平台_3
			result = channel_No3_platform_No3_12VBAT(usartMsg.rxBuf[8 + i]);
			break;
		case 0x04: // 平台_4
			result = channel_No3_platform_No4_12VBAT(usartMsg.rxBuf[8 + i]);
			break;
		case 0x05: // 平台_5
			result = channel_No3_platform_No5_12VBAT(usartMsg.rxBuf[8 + i]);
			break;
		case 0x06: // 平台_6
			result = channel_No3_platform_No6_12VBAT(usartMsg.rxBuf[8 + i]);
			break;
		default:
			result = 0x05;
			break;
	}
	return result;	
	
}
uint8_t channel_No3_platform_No0_12VBAT(uint8_t cmd)// channel 3 的所有平台
{
	switch (cmd) // 指令值
	{
		case 0x01: //12VBAT(ON)
			BAT12V(GPIO12_PORT, GPIO12_PIN, ON);
			BAT12V(GPIO13_PORT, GPIO13_PIN, ON);
			BAT12V(GPIO14_PORT, GPIO14_PIN, ON);
			BAT12V(GPIO15_PORT, GPIO15_PIN, ON);
			BAT12V(GPIO16_PORT, GPIO16_PIN, ON);
			BAT12V(GPIO17_PORT, GPIO17_PIN, ON);
			result = 1;
			break;
		case 0x02: //12VBAT(OFF);
			BAT12V(GPIO12_PORT, GPIO12_PIN, OFF);
			BAT12V(GPIO13_PORT, GPIO13_PIN, OFF);
			BAT12V(GPIO14_PORT, GPIO14_PIN, OFF);
			BAT12V(GPIO15_PORT, GPIO15_PIN, OFF);
			BAT12V(GPIO16_PORT, GPIO16_PIN, OFF);
			BAT12V(GPIO17_PORT, GPIO17_PIN, OFF);
			result = 1;
			break;
		default:
			result = 0x05;
			break;
	}
	return result;
}

uint8_t channel_No3_platform_No1_12VBAT(uint8_t cmd)// channel 3 的平台1
{
	switch (cmd) // 指令值
	{
		case 0x01: //12VBAT(ON)
			BAT12V(GPIO12_PORT, GPIO12_PIN, ON);
			result = 1;
			break;
		case 0x02: //12VBAT(OFF);
			BAT12V(GPIO12_PORT, GPIO12_PIN, OFF);
			result = 1;
			break;
		default:
			result = 0x05;
			break;
	}
	return result;
}

uint8_t channel_No3_platform_No2_12VBAT(uint8_t cmd)// channel 3 的平台2
{
	switch (cmd) // 指令值
	{
		case 0x01: //12VBAT(ON)
			BAT12V(GPIO13_PORT, GPIO13_PIN, ON);
			result = 1;
			break;
		case 0x02: //12VBAT(OFF);
			BAT12V(GPIO13_PORT, GPIO13_PIN, OFF);
			result = 1;
			break;
		default:
			result = 0x05;
			break;
	}
	return result;
}

uint8_t channel_No3_platform_No3_12VBAT(uint8_t cmd)// channel 3 的平台3
{
	switch (cmd) // 指令值
	{
		case 0x01: //12VBAT(ON)
			BAT12V(GPIO14_PORT, GPIO14_PIN, ON);
			result = 1;
			break;
		case 0x02: //12VBAT(OFF);
			BAT12V(GPIO14_PORT, GPIO14_PIN, OFF);
			result = 1;
			break;
		default:
			result = 0x05;
			break;
	}
	return result;
}

uint8_t channel_No3_platform_No4_12VBAT(uint8_t cmd)// channel 3 的平台4
{
	switch (cmd) // 指令值
	{
		case 0x01: //12VBAT(ON)
			BAT12V(GPIO15_PORT, GPIO15_PIN, ON);
			result = 1;
			break;
		case 0x02: //12VBAT(OFF);
			BAT12V(GPIO15_PORT, GPIO15_PIN, OFF);
			result = 1;
			break;
		default:
			result = 0x05;
			break;
	}
	return result;
}

uint8_t channel_No3_platform_No5_12VBAT(uint8_t cmd)// channel 3 的平台5
{
	switch (cmd) // 指令值
	{
		case 0x01: //12VBAT(ON)
			BAT12V(GPIO16_PORT, GPIO16_PIN, ON);
			result = 1;
			break;
		case 0x02: //12VBAT(OFF);
			BAT12V(GPIO16_PORT, GPIO16_PIN, OFF);
			result = 1;
			break;
		default:
			result = 0x05;
			break;
	}
	return result;
}

uint8_t channel_No3_platform_No6_12VBAT(uint8_t cmd)// channel 3 的平台6
{
	switch (cmd) // 指令值
	{
		case 0x01: //12VBAT(ON)
			BAT12V(GPIO17_PORT, GPIO17_PIN, ON);
			result = 1;
			break;
		case 0x02: //12VBAT(OFF);
			BAT12V(GPIO17_PORT, GPIO17_PIN, OFF);
			result = 1;
			break;
		default:
			result = 0x05;
			break;
	}
	return result;
}

////////////////////////////// CHANNLE 4 //////////////////////////////
uint8_t channel_No4_12VBAT(uint8_t platform, int i)
{
	switch (platform) 
	{
		case 0x00: // 全部平台
			result = channel_No4_platform_No0_12VBAT(usartMsg.rxBuf[8 + i]);
			break;
		case 0x01: // 平台_1
			result = channel_No4_platform_No1_12VBAT(usartMsg.rxBuf[8 + i]);
			break;
		case 0x02: // 平台_2
			result = channel_No4_platform_No2_12VBAT(usartMsg.rxBuf[8 + i]);
			break;
		case 0x03: // 平台_3
			result = channel_No4_platform_No3_12VBAT(usartMsg.rxBuf[8 + i]);
			break;
		case 0x04: // 平台_4
			result = channel_No4_platform_No4_12VBAT(usartMsg.rxBuf[8 + i]);
			break;
		case 0x05: // 平台_5
			result = channel_No4_platform_No5_12VBAT(usartMsg.rxBuf[8 + i]);
			break;
		case 0x06: // 平台_6
			result = channel_No4_platform_No6_12VBAT(usartMsg.rxBuf[8 + i]);
			break;
		default:
			result = 0x05;
			break;
	}
	return result;	
	
}
uint8_t channel_No4_platform_No0_12VBAT(uint8_t cmd)// 所有channel的所有平台
{
	switch (cmd) // 指令值
	{
		case 0x01: //12VBAT(ON)
			BAT12V(GPIO18_PORT, GPIO18_PIN, ON);
			BAT12V(GPIO19_PORT, GPIO19_PIN, ON);
			BAT12V(GPIO20_PORT, GPIO20_PIN, ON);
			BAT12V(GPIO21_PORT, GPIO21_PIN, ON);
			BAT12V(GPIO22_PORT, GPIO22_PIN, ON);
			BAT12V(GPIO23_PORT, GPIO23_PIN, ON);
			result = 1;
			break;
		case 0x02: //12VBAT(OFF);
			BAT12V(GPIO18_PORT, GPIO18_PIN, OFF);
			BAT12V(GPIO19_PORT, GPIO19_PIN, OFF);
			BAT12V(GPIO20_PORT, GPIO20_PIN, OFF);
			BAT12V(GPIO21_PORT, GPIO21_PIN, OFF);
			BAT12V(GPIO22_PORT, GPIO22_PIN, OFF);
			BAT12V(GPIO23_PORT, GPIO23_PIN, OFF);
			result = 1;
			break;
		default:
			result = 0x05;
			break;
	}
	return result;
}

uint8_t channel_No4_platform_No1_12VBAT(uint8_t cmd)// channel 4 的平台1
{
	switch (cmd) // 指令值
	{
		case 0x01: //12VBAT(ON)
			BAT12V(GPIO18_PORT, GPIO18_PIN, ON);
			result = 1;
			break;
		case 0x02: //12VBAT(OFF);
			BAT12V(GPIO18_PORT, GPIO18_PIN, OFF);
			result = 1;
			break;
		default:
			result = 0x05;
			break;
	}
	return result;
}

uint8_t channel_No4_platform_No2_12VBAT(uint8_t cmd)// channel 4 的平台2
{
	switch (cmd) // 指令值
	{
		case 0x01: //12VBAT(ON)
			BAT12V(GPIO19_PORT, GPIO19_PIN, ON);
			result = 1;
			break;
		case 0x02: //12VBAT(OFF);
			BAT12V(GPIO19_PORT, GPIO19_PIN, OFF);
			result = 1;
			break;
		default:
			result = 0x05;
			break;
	}
	return result;
}

uint8_t channel_No4_platform_No3_12VBAT(uint8_t cmd)// channel 4 的平台3
{
	switch (cmd) // 指令值
	{
		case 0x01: //12VBAT(ON)
			BAT12V(GPIO20_PORT, GPIO20_PIN, ON);
			result = 1;
			break;
		case 0x02: //12VBAT(OFF);
			BAT12V(GPIO20_PORT, GPIO20_PIN, OFF);
			result = 1;
			break;
		default:
			result = 0x05;
			break;
	}
	return result;
}

uint8_t channel_No4_platform_No4_12VBAT(uint8_t cmd)// channel 4 的平台4
{
	switch (cmd) // 指令值
	{
		case 0x01: //12VBAT(ON)
			BAT12V(GPIO21_PORT, GPIO21_PIN, ON);
			result = 1;
			break;
		case 0x02: //12VBAT(OFF);
			BAT12V(GPIO21_PORT, GPIO21_PIN, OFF);
			result = 1;
			break;
		default:
			result = 0x05;
			break;
	}
	return result;
}

uint8_t channel_No4_platform_No5_12VBAT(uint8_t cmd)// channel 4 的平台5
{
	switch (cmd) // 指令值
	{
		case 0x01: //12VBAT(ON)
			BAT12V(GPIO22_PORT, GPIO22_PIN, ON);
			result = 1;
			break;
		case 0x02: //12VBAT(OFF);
			BAT12V(GPIO22_PORT, GPIO22_PIN, OFF);
			result = 1;
			break;
		default:
			result = 0x05;
			break;
	}
	return result;
}

uint8_t channel_No4_platform_No6_12VBAT(uint8_t cmd)// channel 4 的平台6
{
	switch (cmd) // 指令值
	{
		case 0x01: //12VBAT(ON)
			BAT12V(GPIO23_PORT, GPIO23_PIN, ON);
			result = 1;
			break;
		case 0x02: //12VBAT(OFF);
			BAT12V(GPIO23_PORT, GPIO23_PIN, OFF);
			result = 1;
			break;
		default:
			result = 0x05;
			break;
	}
	return result;
}
