Структура GPIO-піна, з офіційної документації. Клікабельно. |
Подальші пости використовуватимуть плату STM32VLDiscovery із її мікроконтролером STM32F100RB, архітектури ARM Cortex M3, котрий має 128Кб пам'яті програм та 8Кб RAM. Для інших споріднених мікроконтролерів відмінності будуть мінімальними.
Спершу розглянемо найбільш базову (але, відповідно, і найбільш низькорівневу) методику -- із використанням CMSIS. Також, буде використано найбільш примітивну техніку роботи із пристроєм -- безпосереднє смикання ніжок мікроконтролера та читання рівнів на них (іншими словами, самим GPIO, без використання переривань).