====== Buttons ======
The 4 buttons on the CT Board are **"active-high"**, e.g. a pressed button is read as logical **"1"**, and debounced. \\
The buttons are accessible over the memory mapped interface or on [[stm32:peripherals:gpio|GPIO port C]]. \\ \\
> {{ctboard:ctboard_mode_1.svg?48px }} {{ctboard:ctboard_mode_2.svg?48px }} {{ctboard:ctboard_mode_3.svg?48px }} {{ctboard:ctboard_mode_4.svg?48px }} Please make sure the CT Board is in the correct mode.
> Supported [[ctboard:mode_switch|modes]]: **1**, **2**, **3**, **4**
\\
===== Registers =====
The Registers are read only.
\\ {{ctboard_button_reg.svg}} \\ \\
===== Diagram =====
\\ {{:ctboard:peripherals:ctboard_button.svg?700em}} \\ \\
===== Programming Example =====
The code snippets below show how to use the buttons.
#include "reg_ctboard.h"
uint8_t data = CT_BUTTON; /* Read all buttons into the lower nibble of a byte. */
\\
ADDR_BUTTON EQU 0x60000210
LDR r0, =ADDR_BUTTON
LDRB r1, [r0, #0] ; Read all buttons into the lower nibble of a byte.
\\