3,286
社区成员




void Set_GPIO(uint8 port,uint8 GPIO_port, uint8 GPIO_port_num)
{
uint8 sfr_bak;
sfr_bak = SFR_BANK;
SFR_BANK = BANK_GPIO;
MFPSEL6 &=~(1<<7);
if(port == I2CDAT)
{
switch (GPIO_port)
{
case 0:
GPIOCOUTEN |= (0x01 << GPIO_port_num);
break;
case 1:
GPIOCINEN |= (0x01 << GPIO_port_num);
break;
case 2:
GPIOCDAT |= (0x01 << GPIO_port_num);
break;
default:
break;
}
}
else
{
switch (GPIO_port)
{
case 0:
GPIOBOUTEN |= (0x01 << GPIO_port_num);
break;
case 1:
GPIOBINEN |= (0x01 << GPIO_port_num);
break;
case 2:
GPIOBDAT |= (0x01 << GPIO_port_num);
break;
default:
break;
}
}
SFR_BANK = sfr_bak;
}