====== DIPSW ====== The CT Board features 32 DIP switches. They are arranged in 4 groups of 8 DIP switches. \\ If a DIP switch is in the position "high" (see [[#diagram]] below) it provides a logical **"1"**. \\ \\ > {{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_dipsw_reg.svg}} \\ \\ ===== Diagram ===== \\ {{:ctboard:peripherals:ctboard_dipsw.svg?700em}} \\ \\ ===== Programming Example ===== The code snippets below show how to use the DIPSW. #include "reg_ctboard.h" uint8_t data_byte = CT_DIPSW->BYTE.S7_0; /* Read byte from S7..0. */ uint16_t data_hword = CT_DIPSW->HWORD.S31_16; /* Read half word from S31..16. */ uint32_t data_word = CT_DIPSW->WORD; /* Read all DIPSW at once into a word. */ \\ ADDR_DIPSW EQU 0x60000200 LDR r0, =ADDR_DIPSW LDRB r1, [r0, #0] ; Read byte from S7..0. LDRH r1, [r0, #2] ; Read half word from S31..16. LDR r1, [r0, #0] ; Read all DIPSW at once into a word. \\