KSM edits to RA8875
Embed:
(wiki syntax)
Show/hide line numbers
RA8875_Regs.h
00001 // 00002 // RA8875 Display Controller Register Definitions. 00003 // 00004 // 00005 #ifndef RA8875_REGS_H 00006 #define RA8875_REGS_H 00007 00008 // Touch Panel public macros 00009 #define RESISTIVE_TOUCH_POINTS 1 00010 00011 /* Touch Panel Enable/Disable Reg TPCR0[7] */ 00012 #define TP_ENABLE ((uint8_t)(1<<7)) 00013 #define TP_DISABLE ((uint8_t)(0<<7)) 00014 00015 /* Touch Panel operating mode Reg TPCR1[6] */ 00016 #define TP_MODE_AUTO ((uint8_t)(0<<6)) 00017 #define TP_MODE_MANUAL ((uint8_t)(1<<6)) 00018 00019 /* Touch Panel debounce Reg TPCR1[2] */ 00020 #define TP_DEBOUNCE_OFF ((uint8_t)(0<<2)) 00021 #define TP_DEBOUNCE_ON ((uint8_t)(1<<2)) 00022 00023 /* Touch Panel manual modes Reg TPCR1[1:0] */ 00024 #define TP_MANUAL_IDLE 0 00025 #define TP_MANUAL_WAIT 1 00026 #define TP_MANUAL_LATCH_X 2 00027 #define TP_MANUAL_LATCH_Y 3 00028 00029 /* Touch Panel ADC Clock modes Reg TPCR0[2:0] */ 00030 #define TP_ADC_CLKDIV_1 0 00031 #define TP_ADC_CLKDIV_2 1 00032 #define TP_ADC_CLKDIV_4 2 00033 #define TP_ADC_CLKDIV_8 3 00034 #define TP_ADC_CLKDIV_16 4 00035 #define TP_ADC_CLKDIV_32 5 00036 #define TP_ADC_CLKDIV_64 6 00037 #define TP_ADC_CLKDIV_128 7 00038 00039 00040 /* Touch Panel Sample Time Reg TPCR0[6:4] */ 00041 #define TP_ADC_SAMPLE_512_CLKS ((uint8_t)(0<<4)) 00042 #define TP_ADC_SAMPLE_1024_CLKS ((uint8_t)(1<<4)) 00043 #define TP_ADC_SAMPLE_2048_CLKS ((uint8_t)(2<<4)) 00044 #define TP_ADC_SAMPLE_4096_CLKS ((uint8_t)(3<<4)) 00045 #define TP_ADC_SAMPLE_8192_CLKS ((uint8_t)(4<<4)) 00046 #define TP_ADC_SAMPLE_16384_CLKS ((uint8_t)(5<<4)) 00047 #define TP_ADC_SAMPLE_32768_CLKS ((uint8_t)(6<<4)) 00048 #define TP_ADC_SAMPLE_65536_CLKS ((uint8_t)(7<<4)) 00049 00050 /* RA8875 interrupt enable/flag/clear masks */ 00051 #define RA8875_INT_KEYSCAN ((uint8_t)(1<<4)) /**< KEYSCAN interrupts */ 00052 #define RA8875_INT_DMA ((uint8_t)(1<<3)) /**< DMA interrupts */ 00053 #define RA8875_INT_TP ((uint8_t)(1<<2)) /**< Touch panel interrupts */ 00054 #define RA8875_INT_BTE ((uint8_t)(1<<1)) /**< BTE process complete interrupts */ 00055 #define RA8875_INT_BTEMCU_FONTWR ((uint8_t)(1<<0)) /**< BTE-MCU-R/W or Font-Write interrupts */ 00056 00057 00058 // RA8875 Register Names and Bit-Values 00059 // 00060 // Leveraged from Adafruit library for register names that match 00061 // the RA8875 PDF documentation. 00062 // 00063 // Missing registered that are used herein have been added 00064 00065 // Command/Data pins for SPI 00066 //#define RA8875_DATAWRITE 0x00 00067 //#define RA8875_DATAREAD 0x40 00068 //#define RA8875_CMDWRITE 0x80 00069 //#define RA8875_CMDREAD 0xC0 00070 00071 // Registers & bits 00072 #define RA8875_PWRR 0x01 00073 #define RA8875_PWRR_DISPON 0x80 00074 #define RA8875_PWRR_DISPOFF 0x00 00075 #define RA8875_PWRR_SLEEP 0x02 00076 #define RA8875_PWRR_NORMAL 0x00 00077 #define RA8875_PWRR_SOFTRESET 0x01 00078 00079 #define RA8875_MRWC 0x02 00080 00081 #define RA8875_GPIOX 0xC7 00082 00083 #define RA8875_SYSR 0x10 00084 #define RA8875_SYSR_8BPP 0x00 00085 #define RA8875_SYSR_16BPP 0x0C 00086 #define RA8875_SYSR_MCU8 0x00 00087 #define RA8875_SYSR_MCU16 0x03 00088 00089 #define RA8875_PCSR 0x04 00090 #define RA8875_PCSR_PDATR 0x00 00091 #define RA8875_PCSR_PDATL 0x80 00092 #define RA8875_PCSR_CLK 0x00 00093 #define RA8875_PCSR_2CLK 0x01 00094 #define RA8875_PCSR_4CLK 0x02 00095 #define RA8875_PCSR_8CLK 0x03 00096 00097 #define RA8875_HDWR 0x14 00098 00099 #define RA8875_HNDFTR 0x15 00100 #define RA8875_HNDFTR_DE_HIGH 0x00 00101 #define RA8875_HNDFTR_DE_LOW 0x80 00102 00103 #define RA8875_HNDR 0x16 00104 #define RA8875_HSTR 0x17 00105 #define RA8875_HPWR 0x18 00106 #define RA8875_HPWR_LOW 0x00 00107 #define RA8875_HPWR_HIGH 0x80 00108 00109 #define RA8875_VDHR0 0x19 00110 #define RA8875_VDHR1 0x1A 00111 #define RA8875_VNDR0 0x1B 00112 #define RA8875_VNDR1 0x1C 00113 #define RA8875_VSTR0 0x1D 00114 #define RA8875_VSTR1 0x1E 00115 #define RA8875_VPWR 0x1F 00116 #define RA8875_VPWR_LOW 0x00 00117 #define RA8875_VPWR_HIGH 0x80 00118 00119 #define RA8875_DPCR 0x20 00120 #define RA8875_FNCR0 0x21 00121 #define RA8875_FNCR1 0x22 00122 #define RA8875_CGSR 0x23 00123 #define RA8875_HOFS0 0x24 00124 #define RA8875_HOFS1 0x25 00125 #define RA8875_VOFS0 0x26 00126 #define RA8875_VOFS1 0x27 00127 00128 #define RA8875_FLDR 0x29 00129 #define RA8875_FCURXL 0x2A 00130 #define RA8875_FCURXH 0x2B 00131 #define RA8875_FCURYL 0x2C 00132 #define RA8875_FCURYH 0x2D 00133 #define RA8875_FWTYPSR 0x2E 00134 #define RA8875_SFROMS 0x2F 00135 00136 #define RA8875_HSAW0 0x30 00137 #define RA8875_HSAW1 0x31 00138 #define RA8875_VSAW0 0x32 00139 #define RA8875_VSAW1 0x33 00140 00141 #define RA8875_HEAW0 0x34 00142 #define RA8875_HEAW1 0x35 00143 #define RA8875_VEAW0 0x36 00144 #define RA8875_VEAW1 0x37 00145 00146 #define RA8875_MWCR0 0x40 00147 #define RA8875_MWCR0_GFXMODE 0x00 00148 #define RA8875_MWCR0_TXTMODE 0x80 00149 00150 #define RA8875_MWCR1 0x41 00151 #define RA8875_MWCR1_GFXCURDIS 0x00 00152 #define RA8875_MWCR1_GFXCURENA 0x80 00153 00154 #define RA8875_BTCR 0x44 00155 #define RA8875_MRCD 0x45 00156 #define RA8875_CURH0 0x46 00157 #define RA8875_CURH1 0x47 00158 #define RA8875_CURV0 0x48 00159 #define RA8875_CURV1 0x49 00160 00161 #define RA8875_RCURH0 0x4A 00162 #define RA8875_RCURH1 0x4B 00163 #define RA8875_RCURV0 0x4C 00164 #define RA8875_RCURV1 0x4D 00165 #define RA8875_CURHS 0x4E 00166 #define RA8875_CURVS 0x4F 00167 00168 #define RA8875_BECR0 0x50 00169 #define RA8875_BECR1 0x51 00170 00171 #define RA8875_LTPR0 0x52 00172 #define RA8875_LTPR1 0x53 00173 00174 #define RA8875_HSBE0 0x54 00175 #define RA8875_HSBE1 0x55 00176 #define RA8875_VSBE0 0x56 00177 #define RA8875_VSBE1 0x57 00178 #define RA8875_HDBE0 0x58 00179 #define RA8875_HDBE1 0x59 00180 #define RA8875_VDBE0 0x5A 00181 #define RA8875_VDBE1 0x5B 00182 #define RA8875_BEWR0 0x5C 00183 #define RA8875_BEWR1 0x5D 00184 #define RA8875_BEHR0 0x5E 00185 #define RA8875_BEHR1 0x5F 00186 00187 00188 00189 00190 #define RA8875_TPCR0 0x70 00191 #define RA8875_TPCR0_ENABLE 0x80 00192 #define RA8875_TPCR0_DISABLE 0x00 00193 #define RA8875_TPCR0_WAIT_512CLK 0x00 00194 #define RA8875_TPCR0_WAIT_1024CLK 0x10 00195 #define RA8875_TPCR0_WAIT_2048CLK 0x20 00196 #define RA8875_TPCR0_WAIT_4096CLK 0x30 00197 #define RA8875_TPCR0_WAIT_8192CLK 0x40 00198 #define RA8875_TPCR0_WAIT_16384CLK 0x50 00199 #define RA8875_TPCR0_WAIT_32768CLK 0x60 00200 #define RA8875_TPCR0_WAIT_65536CLK 0x70 00201 #define RA8875_TPCR0_WAKEENABLE 0x08 00202 #define RA8875_TPCR0_WAKEDISABLE 0x00 00203 #define RA8875_TPCR0_ADCCLK_DIV1 0x00 00204 #define RA8875_TPCR0_ADCCLK_DIV2 0x01 00205 #define RA8875_TPCR0_ADCCLK_DIV4 0x02 00206 #define RA8875_TPCR0_ADCCLK_DIV8 0x03 00207 #define RA8875_TPCR0_ADCCLK_DIV16 0x04 00208 #define RA8875_TPCR0_ADCCLK_DIV32 0x05 00209 #define RA8875_TPCR0_ADCCLK_DIV64 0x06 00210 #define RA8875_TPCR0_ADCCLK_DIV128 0x07 00211 00212 #define RA8875_TPCR1 0x71 00213 #define RA8875_TPCR1_AUTO 0x00 00214 #define RA8875_TPCR1_MANUAL 0x40 00215 #define RA8875_TPCR1_VREFINT 0x00 00216 #define RA8875_TPCR1_VREFEXT 0x20 00217 #define RA8875_TPCR1_DEBOUNCE 0x04 00218 #define RA8875_TPCR1_NODEBOUNCE 0x00 00219 #define RA8875_TPCR1_IDLE 0x00 00220 #define RA8875_TPCR1_WAIT 0x01 00221 #define RA8875_TPCR1_LATCHX 0x02 00222 #define RA8875_TPCR1_LATCHY 0x03 00223 00224 #define RA8875_TPXH 0x72 00225 #define RA8875_TPYH 0x73 00226 #define RA8875_TPXYL 0x74 00227 00228 #define RA8875_PLLC1 0x88 00229 #define RA8875_PLLC1_PLLDIV2 0x80 00230 #define RA8875_PLLC1_PLLDIV1 0x00 00231 00232 #define RA8875_PLLC2 0x89 00233 #define RA8875_PLLC2_DIV1 0x00 00234 #define RA8875_PLLC2_DIV2 0x01 00235 #define RA8875_PLLC2_DIV4 0x02 00236 #define RA8875_PLLC2_DIV8 0x03 00237 #define RA8875_PLLC2_DIV16 0x04 00238 #define RA8875_PLLC2_DIV32 0x05 00239 #define RA8875_PLLC2_DIV64 0x06 00240 #define RA8875_PLLC2_DIV128 0x07 00241 00242 #define RA8875_MCLR 0x8E 00243 #define RA8875_MCLR_START 0x80 00244 #define RA8875_MCLR_STOP 0x00 00245 #define RA8875_MCLR_READSTATUS 0x80 00246 #define RA8875_MCLR_FULL 0x00 00247 #define RA8875_MCLR_ACTIVE 0x40 00248 00249 #define RA8875_P1CR 0x8A 00250 #define RA8875_P1CR_ENABLE 0x80 00251 #define RA8875_P1CR_DISABLE 0x00 00252 #define RA8875_P1CR_CLKOUT 0x10 00253 #define RA8875_P1CR_PWMOUT 0x00 00254 00255 #define RA8875_P1DCR 0x8B 00256 00257 #define RA8875_P2CR 0x8C 00258 #define RA8875_P2CR_ENABLE 0x80 00259 #define RA8875_P2CR_DISABLE 0x00 00260 #define RA8875_P2CR_CLKOUT 0x10 00261 #define RA8875_P2CR_PWMOUT 0x00 00262 00263 #define RA8875_PWM_CLK_DIV1 0x00 00264 #define RA8875_PWM_CLK_DIV2 0x01 00265 #define RA8875_PWM_CLK_DIV4 0x02 00266 #define RA8875_PWM_CLK_DIV8 0x03 00267 #define RA8875_PWM_CLK_DIV16 0x04 00268 #define RA8875_PWM_CLK_DIV32 0x05 00269 #define RA8875_PWM_CLK_DIV64 0x06 00270 #define RA8875_PWM_CLK_DIV128 0x07 00271 #define RA8875_PWM_CLK_DIV256 0x08 00272 #define RA8875_PWM_CLK_DIV512 0x09 00273 #define RA8875_PWM_CLK_DIV1024 0x0A 00274 #define RA8875_PWM_CLK_DIV2048 0x0B 00275 #define RA8875_PWM_CLK_DIV4096 0x0C 00276 #define RA8875_PWM_CLK_DIV8192 0x0D 00277 #define RA8875_PWM_CLK_DIV16384 0x0E 00278 #define RA8875_PWM_CLK_DIV32768 0x0F 00279 00280 #define RA8875_P2DCR 0x8D 00281 00282 #define RA8875_DCR 0x90 00283 #define RA8875_DCR_LINESQUTRI_START 0x80 00284 #define RA8875_DCR_LINESQUTRI_STOP 0x00 00285 #define RA8875_DCR_LINESQUTRI_STATUS 0x80 00286 #define RA8875_DCR_CIRCLE_START 0x40 00287 #define RA8875_DCR_CIRCLE_STATUS 0x40 00288 #define RA8875_DCR_CIRCLE_STOP 0x00 00289 #define RA8875_DCR_FILL 0x20 00290 #define RA8875_DCR_NOFILL 0x00 00291 #define RA8875_DCR_DRAWSQUARE 0x10 00292 #define RA8875_DCR_DRAWTRIANGLE 0x01 00293 #define RA8875_DCR_DRAWLINE 0x00 00294 00295 #define RA8875_DLHSR0 0x91 00296 #define RA8875_DLHSR1 0x92 00297 #define RA8875_DLVSR0 0x93 00298 #define RA8875_DLVSR1 0x94 00299 #define RA8875_DLHER0 0x95 00300 #define RA8875_DLHER1 0x96 00301 #define RA8875_DLVER0 0x97 00302 #define RA8875_DLVER1 0x98 00303 #define RA8875_DCHR0 0x99 00304 #define RA8875_DCHHR1 0x9A 00305 #define RA8875_DCVR0 0x9B 00306 #define RA8875_DCVR1 0x9C 00307 00308 #define RA8875_DCRR 0x9D 00309 00310 #define RA8875_ELLIPSE 0xA0 00311 #define RA8875_ELLIPSE_STATUS 0x80 00312 00313 #define RA8875_ELLA0 0xA1 00314 #define RA8875_ELLA1 0xA2 00315 #define RA8875_ELLB0 0xA3 00316 #define RA8875_ELLB1 0xA4 00317 #define RA8875_DEHR0 0xA5 00318 #define RA8875_DEHR1 0xA6 00319 #define RA8875_DEVR0 0xA7 00320 #define RA8875_DEVR1 0xA8 00321 00322 #define RA8875_DTPH0 0xA9 00323 #define RA8875_DTPH1 0xAA 00324 #define RA8875_DTPV0 0xAB 00325 #define RA8875_DTPV1 0xAC 00326 00327 #define RA8875_KSCR1 0xC0 00328 #define RA8875_KSCR2 0xC1 00329 00330 #define RA8875_INTC1 0xF0 00331 #define RA8875_INTC1_KEY 0x10 00332 #define RA8875_INTC1_DMA 0x08 00333 #define RA8875_INTC1_TP 0x04 00334 #define RA8875_INTC1_BTE 0x02 00335 00336 #define RA8875_INTC2 0xF1 00337 #define RA8875_INTC2_KEY 0x10 00338 #define RA8875_INTC2_DMA 0x08 00339 #define RA8875_INTC2_TP 0x04 00340 #define RA8875_INTC2_BTE 0x02 00341 00342 00343 00344 #endif // RA8875_REGS_H
Generated on Tue Jul 26 2022 07:46:24 by 1.7.2