bsp_dk_bcreg_3200.h
Go to the documentation of this file.00001
00035 #ifndef __BSP_DK_BCREG_3200_H
00036 #define __BSP_DK_BCREG_3200_H
00037
00038 #include <stdint.h>
00039
00040
00045
00050 #ifdef __cplusplus
00051 extern "C" {
00052 #endif
00053
00054
00058 #define BC_FLASH_BASE 0x80000000
00059 #define BC_SRAM_BASE 0x84000000
00060 #define BC_SSD2119_BASE 0x88000000
00061 #define BC_REGISTER_BASE 0x8c000000
00063 #define BC_CFG ((volatile uint16_t *)(BC_REGISTER_BASE + sizeof(uint16_t) * 0x00))
00064 #define BC_EM ((volatile uint16_t *)(BC_REGISTER_BASE + sizeof(uint16_t) * 0x01))
00065 #define BC_MAGIC ((volatile uint16_t *)(BC_REGISTER_BASE + sizeof(uint16_t) * 0x02))
00066 #define BC_LED ((volatile uint16_t *)(BC_REGISTER_BASE + sizeof(uint16_t) * 0x03))
00067 #define BC_PUSHBUTTON ((volatile uint16_t *)(BC_REGISTER_BASE + sizeof(uint16_t) * 0x04))
00068 #define BC_DIPSWITCH ((volatile uint16_t *)(BC_REGISTER_BASE + sizeof(uint16_t) * 0x05))
00069 #define BC_JOYSTICK ((volatile uint16_t *)(BC_REGISTER_BASE + sizeof(uint16_t) * 0x06))
00070 #define BC_AEM ((volatile uint16_t *)(BC_REGISTER_BASE + sizeof(uint16_t) * 0x07))
00071 #define BC_DISPLAY_CTRL ((volatile uint16_t *)(BC_REGISTER_BASE + sizeof(uint16_t) * 0x08))
00072 #define BC_EBI_CFG ((volatile uint16_t *)(BC_REGISTER_BASE + sizeof(uint16_t) * 0x09))
00073 #define BC_BUS_CFG ((volatile uint16_t *)(BC_REGISTER_BASE + sizeof(uint16_t) * 0x0a))
00074 #define BC_PERCTRL ((volatile uint16_t *)(BC_REGISTER_BASE + sizeof(uint16_t) * 0x0c))
00075 #define BC_AEMSTATE ((volatile uint16_t *)(BC_REGISTER_BASE + sizeof(uint16_t) * 0x0d))
00076 #define BC_SPI_CFG ((volatile uint16_t *)(BC_REGISTER_BASE + sizeof(uint16_t) * 0x0e))
00077 #define BC_RESET ((volatile uint16_t *)(BC_REGISTER_BASE + sizeof(uint16_t) * 0x0f))
00078 #define BC_ADC_START ((volatile uint16_t *)(BC_REGISTER_BASE + sizeof(uint16_t) * 0x10))
00079 #define BC_ADC_STATUS ((volatile uint16_t *)(BC_REGISTER_BASE + sizeof(uint16_t) * 0x11))
00080 #define BC_ADC_DATA ((volatile uint16_t *)(BC_REGISTER_BASE + sizeof(uint16_t) * 0x12))
00081 #define BC_HW_VERSION ((volatile uint16_t *)(BC_REGISTER_BASE + sizeof(uint16_t) * 0x14))
00082 #define BC_FW_BUILDNO ((volatile uint16_t *)(BC_REGISTER_BASE + sizeof(uint16_t) * 0x15))
00083 #define BC_FW_VERSION ((volatile uint16_t *)(BC_REGISTER_BASE + sizeof(uint16_t) * 0x16))
00084 #define BC_SCRATCH_COMMON ((volatile uint16_t *)(BC_REGISTER_BASE + sizeof(uint16_t) * 0x17))
00085 #define BC_SCRATCH_EFM0 ((volatile uint16_t *)(BC_REGISTER_BASE + sizeof(uint16_t) * 0x18))
00086 #define BC_SCRATCH_EFM1 ((volatile uint16_t *)(BC_REGISTER_BASE + sizeof(uint16_t) * 0x19))
00087 #define BC_SCRATCH_EFM2 ((volatile uint16_t *)(BC_REGISTER_BASE + sizeof(uint16_t) * 0x1A))
00088 #define BC_SCRATCH_EFM3 ((volatile uint16_t *)(BC_REGISTER_BASE + sizeof(uint16_t) * 0x1B))
00089 #define BC_SCRATCH_BC0 ((volatile uint16_t *)(BC_REGISTER_BASE + sizeof(uint16_t) * 0x1C))
00090 #define BC_SCRATCH_BC1 ((volatile uint16_t *)(BC_REGISTER_BASE + sizeof(uint16_t) * 0x1D))
00091 #define BC_SCRATCH_BC2 ((volatile uint16_t *)(BC_REGISTER_BASE + sizeof(uint16_t) * 0x1E))
00092 #define BC_SCRATCH_BC3 ((volatile uint16_t *)(BC_REGISTER_BASE + sizeof(uint16_t) * 0x1f))
00093 #define BC_INTFLAG ((volatile uint16_t *)(BC_REGISTER_BASE + sizeof(uint16_t) * 0x20))
00094 #define BC_INTEN ((volatile uint16_t *)(BC_REGISTER_BASE + sizeof(uint16_t) * 0x21))
00096
00100 #define BC_CFG_SPI (0)
00101 #define BC_CFG_EBI (1)
00103 #define BC_EM_EM0 (0)
00104 #define BC_EM_EM1 (1)
00105 #define BC_EM_EM2 (2)
00106 #define BC_EM_EM3 (3)
00107 #define BC_EM_EM4 (4)
00109 #define BC_MAGIC_VALUE (0xef32)
00111 #define BC_PUSHBUTTON_MASK (0x000f)
00112 #define BC_PUSHBUTTON_SW1 (1 << 0)
00113 #define BC_PUSHBUTTON_SW2 (1 << 1)
00114 #define BC_PUSHBUTTON_SW3 (1 << 2)
00115 #define BC_PUSHBUTTON_SW4 (1 << 3)
00117 #define BC_DIPSWITCH_MASK (0x00ff)
00119 #define BC_JOYSTICK_MASK (0x001f)
00120 #define BC_JOYSTICK_DOWN (1 << 0)
00121 #define BC_JOYSTICK_RIGHT (1 << 1)
00122 #define BC_JOYSTICK_UP (1 << 2)
00123 #define BC_JOYSTICK_LEFT (1 << 3)
00124 #define BC_JOYSTICK_CENTER (1 << 4)
00126 #define BC_DISPCTRL_RESET (1 << 0)
00127 #define BC_DISPCTRL_POWER_ENABLE (1 << 1)
00129 #define BC_EBI_CFG_MASK (0x0003)
00130 #define BC_EBI_CFG_16X16 (0)
00131 #define BC_EBI_CFG_8X8 (1)
00132 #define BC_EBI_CFG_24X8 (2)
00134 #define BC_BUS_CFG_MASK (0x0003)
00135 #define BC_BUS_CFG_FSMC (0)
00136 #define BC_BUS_CFG_EBI (1)
00137 #define BC_BUS_CFG_SPI (2)
00139 #define BC_PERCTRL_ACCEL (1 << 0)
00140 #define BC_PERCTRL_AMBIENT (1 << 1)
00141 #define BC_PERCTRL_POTMETER (1 << 2)
00142 #define BC_PERCTRL_RS232A (1 << 3)
00143 #define BC_PERCTRL_RS232B (1 << 4)
00144 #define BC_PERCTRL_SPI (1 << 5)
00145 #define BC_PERCTRL_I2C (1 << 6)
00146 #define BC_PERCTRL_IRDA (1 << 7)
00147 #define BC_PERCTRL_ANALOG_SE (1 << 8)
00148 #define BC_PERCTRL_ANALOG_DIFF (1 << 9)
00149 #define BC_PERCTRL_AUDIO_OUT (1 << 10)
00150 #define BC_PERCTRL_AUDIO_IN (1 << 11)
00151 #define BC_PERCTRL_ACCEL_GSEL (1 << 12)
00152 #define BC_PERCTRL_ACCEL_SELFTEST (1 << 13)
00153 #define BC_PERCTRL_RS232_SHUTDOWN (1 << 14)
00154 #define BC_PERCTRL_IRDA_SHUTDOWN (1 << 15)
00156 #define BC_AEMSTATE_BC (0)
00157 #define BC_AEMSTATE_EFM (1)
00159 #define BC_SPI_CFG_FLASH (0)
00160 #define BC_SPI_CFG_MICROSD (1)
00162 #define BC_RESET_FLASH (1 << 0)
00163 #define BC_RESET_EFM (1 << 1)
00165 #define BC_ADC_START_MASK (0x00ff)
00167 #define BC_ADC_STATUS_DONE (0)
00168 #define BC_ADC_STATUS_BUSY (1)
00170 #define BC_HW_VERSION_PCB_MASK (0x07f0)
00171 #define BC_HW_VERSION_PCB_SHIFT (4)
00172 #define BC_HW_VERSION_BOARD_MASK (0x000f)
00173 #define BC_HW_VERSION_BOARD_SHIFT (0)
00175 #define BC_HW_FW_VERSION_MAJOR_MASK (0xf000)
00176 #define BC_HW_FW_VERSION_MAJOR_SHIFT (12)
00177 #define BC_HW_FW_VERSION_MINOR_MASK (0x0f00)
00178 #define BC_HW_FW_VERSION_MINOR_SHIFT (8)
00179 #define BC_HW_FW_VERSION_PATCHLEVEL_MASK (0x00ff)
00180 #define BC_HW_FW_VERSION_PATCHLEVEL_SHIFT (0)
00182 #define BC_INTEN_MASK (0x000f)
00183 #define BC_INTEN_PB (1 << 0)
00184 #define BC_INTEN_DIP (1 << 1)
00185 #define BC_INTEN_JOYSTICK (1 << 2)
00186 #define BC_INTEN_AEM (1 << 3)
00188 #define BC_INTFLAG_MASK (0x000f)
00189 #define BC_INTFLAG_PB (1 << 0)
00190 #define BC_INTFLAG_DIP (1 << 1)
00191 #define BC_INTFLAG_JOYSTICK (1 << 2)
00192 #define BC_INTFLAG_AEM (1 << 3)
00194 #ifdef __cplusplus
00195 }
00196 #endif
00197
00201 #endif