mirror of https://github.com/ARMmbed/mbed-os.git
parent
415f975587
commit
6f654ea6aa
|
@ -115,7 +115,8 @@ int gpio_irq_init(gpio_irq_t *obj, PinName pin, gpio_irq_handler handler, uint32
|
|||
obj->irq_n = PORT3_IRQn;
|
||||
|
||||
obj->pin = pin;
|
||||
|
||||
obj->event = EDGE_NONE;
|
||||
|
||||
// Enable EXTI interrupt
|
||||
NVIC_ClearPendingIRQ(obj->irq_n);
|
||||
NVIC_EnableIRQ(obj->irq_n);
|
||||
|
@ -145,7 +146,6 @@ void gpio_irq_set(gpio_irq_t *obj, gpio_irq_event event, uint32_t enable)
|
|||
obj->rise_null = 0;
|
||||
}
|
||||
else if (event == IRQ_FALL) {
|
||||
//gpio->INTPOLSET &= ~obj->pin_index;
|
||||
gpio->INTPOLCLR |= obj->pin_index;
|
||||
obj->event = EDGE_FALL;
|
||||
obj->fall_null = 0;
|
||||
|
|
|
@ -119,29 +119,25 @@ void pin_mode(PinName pin, PinMode pupd)
|
|||
|
||||
switch(port_num) {
|
||||
case PortA:
|
||||
if(pupd != 0)
|
||||
{
|
||||
if(pupd != 0) {
|
||||
PA_PCR->Port[pin_num] &= 0xFFFFFFFC;
|
||||
}
|
||||
PA_PCR->Port[pin_num] |= pupd;
|
||||
break;
|
||||
case PortB:
|
||||
if(pupd != 0)
|
||||
{
|
||||
if(pupd != 0) {
|
||||
PB_PCR->Port[pin_num] &= 0xFFFFFFFC;
|
||||
}
|
||||
PB_PCR->Port[pin_num] |= pupd;
|
||||
break;
|
||||
case PortC:
|
||||
if(pupd != 0)
|
||||
{
|
||||
if(pupd != 0) {
|
||||
PC_PCR->Port[pin_num] &= 0xFFFFFFFC;
|
||||
}
|
||||
PC_PCR->Port[pin_num] |= pupd;
|
||||
break;
|
||||
case PortD:
|
||||
if(pupd != 0)
|
||||
{
|
||||
if(pupd != 0) {
|
||||
PD_PCR->Port[pin_num] &= 0xFFFFFFFC;
|
||||
}
|
||||
PD_PCR->Port[pin_num] |= pupd;
|
||||
|
|
Loading…
Reference in New Issue