This commit is contained in:
Bob-the-Kuhn 2017-11-21 21:29:00 -06:00
parent 4371345cbe
commit 9dad534f02

View File

@ -245,14 +245,15 @@ bool LPC1768_PWM_detach_pin(pin_t pin) {
pin = GET_PIN_MAP_PIN(GET_PIN_MAP_INDEX(pin & 0xFF));
NVIC_EnableIRQ(PWM1_IRQn); // ?? fixes compiler problem?? ISR won't start
// unless put in an extra "enable"
NVIC_DisableIRQ(PWM1_IRQn);
uint8_t slot = 0xFF;
for (uint8_t i = 0; i < NUM_PWMS; i++) // find slot
if (ISR_table[i].pin == pin) { slot = i; break; }
if (slot == 0xFF) return false; // return error if pin not found
if (slot == 0xFF) { // return error if pin not found
NVIC_EnableIRQ(PWM1_IRQn);
return false;
}
LPC1768_PWM_update_map_MR();
@ -315,7 +316,10 @@ bool LPC1768_PWM_write(pin_t pin, uint32_t value) {
uint8_t slot = 0xFF;
for (uint8_t i = 0; i < NUM_PWMS; i++) // find slot
if (ISR_table[i].pin == pin) { slot = i; break; }
if (slot == 0xFF) return false; // return error if pin not found
if (slot == 0xFF) { // return error if pin not found
NVIC_EnableIRQ(PWM1_IRQn);
return false;
}
LPC1768_PWM_update_map_MR();