Merge pull request #683 from g-oikonomou/bugfix/gpio/64bit

Improve GPIO HAL when used with 64-bit pin masks
This commit is contained in:
Simon Duquennoy 2018-10-19 16:35:45 +02:00 committed by GitHub
commit 939969edd8
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 4 additions and 4 deletions

View File

@ -46,9 +46,9 @@ static uint8_t counter;
/*---------------------------------------------------------------------------*/
/* Print gpio_hal_pin_mask_t using the correct format */
#if GPIO_HAL_PIN_COUNT > 32
#define PIN_MASK_FMT PRIx64
#define PIN_MASK_FMT "0x%016" PRIx64
#else
#define PIN_MASK_FMT PRIx32
#define PIN_MASK_FMT "0x%08" PRIx32
#endif
/*---------------------------------------------------------------------------*/
PROCESS(gpio_hal_example, "GPIO HAL Example");
@ -127,7 +127,7 @@ PROCESS_THREAD(gpio_hal_example, ev, data)
}
/* Test read */
printf("%u: Pins are 1-%u, 2=%u, 3=%u, mask=0x%08" PIN_MASK_FMT "\n",
printf("%u: Pins are 1-%u, 2=%u, 3=%u, mask=" PIN_MASK_FMT "\n",
counter & 7,
gpio_hal_arch_read_pin(out_pin1),
gpio_hal_arch_read_pin(out_pin2),

View File

@ -189,7 +189,7 @@ void gpio_hal_event_handler(gpio_hal_pin_mask_t pins);
* \param pin The pin
* \return The corresponding mask
*/
#define gpio_hal_pin_to_mask(pin) (1 << (pin))
#define gpio_hal_pin_to_mask(pin) ((gpio_hal_pin_mask_t)1 << (pin))
/** @} */
/*---------------------------------------------------------------------------*/
/**