int main (void)
{
SystemCoreClockUpdate();
SIM_SCGC5 |= (SIM_SCGC5_PORTA_MASK
| SIM_SCGC5_PORTB_MASK
| SIM_SCGC5_PORTC_MASK
| SIM_SCGC5_PORTD_MASK
| SIM_SCGC5_PORTE_MASK );
uart0Init(9600,0,0,8,1);
printf("YL-KL25Z128 KEY Test start\r\n");
PORT_ENABLE_CLK(MKL_PORTA);
PORT_ENABLE_CLK(MKL_PORTB);
PORT_ENABLE_CLK(MKL_PORTB); /* ʹÄÜPORTʱÖÓ */
PORT_ENABLE_CLK(MKL_PORTD);
IO_FUN_SEL(MKL_PORTB,18,1); /* D5£¬D6£¬D7µÄIOÅäÖà */
IO_FUN_SEL(MKL_PORTB,19,1);
IO_FUN_SEL(MKL_PORTD,1,1);
IO_FUN_SEL(MKL_PORTD,6,1); /*K3*/
IO_FUN_SEL(MKL_PORTA,4,1); /*K4*/
GPIO_DDR_OUTPUT(MKL_PORTB,18); /* IOÉèÖÃΪÊä³öģʽ */
GPIO_DDR_OUTPUT(MKL_PORTB,19);
GPIO_DDR_OUTPUT(MKL_PORTD,1);
GPIO_DDR_INPUT(MKL_PORTD,6);
GPIO_SET(MKL_PORTB,18); /* IOÉèÖÃΪ¸ßµçƽ£¬LEDϨÃð */
GPIO_SET(MKL_PORTB,19);
GPIO_SET(MKL_PORTD,1);
while(1){ /* ·Ö±ð°´ÏÂK3,K4ʹµÃD6£¬D5ÁÁÃð½»ÌæÑ»·£¬D7ÉÁ˸ */
if(!GPIO_GET_VALUE(MKL_PORTD,6))
{
GPIO_TOGGLE(MKL_PORTB,19);
myDelay(500); //È¥¶¶
}
if(!GPIO_GET_VALUE(MKL_PORTA,4))
{
GPIO_TOGGLE(MKL_PORTB,18);
myDelay(500); //È¥¶¶
}
GPIO_TOGGLE(MKL_PORTD,1);
myDelay(200);
}
}
|