在线时间15 小时
UID394544
注册时间2015-6-18
NXP金币0
该用户从未签到
版主
  
- 积分
- 140
- 最后登录
- 2015-12-31
|
先来一个最简单的IO口控制实验,
SW3来控制三色灯中的红灯,按下亮、松开灭。
下载程序时,工程选项中的仿真器需要设置一下,
我选的是J-Link。
部分源码->
void init_gpio()
{
/*
* Set PTC6 and PTC7 (connected to SW1 and SW2) for GPIO functionality,
* falling IRQ, and to use internal pull-ups. (pin defaults to input state)
*/
PORTC_PCR6 =
PORT_PCR_MUX(1) | PORT_PCR_IRQC(0xA) | PORT_PCR_PE_MASK |
PORT_PCR_PS_MASK;
PORTA_PCR4 =
PORT_PCR_MUX(1) | PORT_PCR_IRQC(0xA) | PORT_PCR_PE_MASK |
PORT_PCR_PS_MASK;
/*
* Set PTE6, PTE7, and PTE8 (connected to LED's)
* for GPIO functionality
*/
// PORTE_PCR6 = (0 | PORT_PCR_MUX(1));
// PORTE_PCR7 = (0 | PORT_PCR_MUX(1));
// PORTE_PCR8 = (0 | PORT_PCR_MUX(1));
PORTE_PCR26 = (0 | PORT_PCR_MUX(1)); //绿灯
PORTB_PCR21 = (0 | PORT_PCR_MUX(1)); //蓝灯
PORTB_PCR22 = (0 | PORT_PCR_MUX(1)); //红灯
/* Change PTE6, PTE7, PTE8 to outputs */
// GPIOE_PDDR = GPIO_PDDR_PDD(GPIO_PIN(6) | GPIO_PIN(7) | GPIO_PIN(8));
GPIOE_PDDR = GPIO_PDDR_PDD(GPIO_PIN(26));
GPIOB_PDDR = GPIO_PDDR_PDD(GPIO_PIN(21));
GPIOB_PDDR = GPIO_PDDR_PDD(GPIO_PIN(22));
}
代码中很多的IO口位设置都与K64板实际口位不一致,不知道是
什么原因?上面的代码都是我手动更改过来的。
|
评分
-
查看全部评分
|