123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142 |
- #ifndef _GDISP_LLD_BOARD_H
- #define _GDISP_LLD_BOARD_H
- #define GDISP_REG (*((volatile uint16_t *) 0x6C000000))
- #define GDISP_RAM (*((volatile uint16_t *) 0x6C000080))
- #ifdef USE_BL_PWM
- static const PWMConfig pwmcfg = {
- 100000,
- 100,
- 0,
- {
- {PWM_OUTPUT_ACTIVE_LOW, 0},
- {PWM_OUTPUT_DISABLED, 0},
- {PWM_OUTPUT_DISABLED, 0},
- {PWM_OUTPUT_DISABLED, 0}
- },
- 0,
- 0
- };
- #endif
- static GFXINLINE void init_board(GDisplay *g) {
- (void) g;
-
-
-
- rccEnableAHB3(RCC_AHB3ENR_FSMCEN, 0);
- const unsigned char FSMC_Bank = 0x06;
-
-
-
- FSMC_Bank1->BTCR[FSMC_Bank] = (uint32_t)(0x10 | 0x1000 | 0x4000);
-
-
-
- FSMC_Bank1->BTCR[FSMC_Bank+1] = (uint32_t)(0x0F | (0x18 << 8));
-
-
-
-
-
-
-
-
-
- FSMC_Bank1E->BWTR[FSMC_Bank] = (uint32_t)((3 << 0) | (2 <<8 ));
-
- FSMC_Bank1->BTCR[FSMC_Bank] |= 0x01;
- #ifdef USE_BL_PWM
-
-
- pwmStart(&PWMD12, &pwmcfg);
- palSetPadMode(GPIOB, 15, PAL_MODE_ALTERNATE(9));
- pwmEnableChannel(&PWMD12, 0, 100);
- #endif
- }
- static GFXINLINE void post_init_board(GDisplay *g) {
- (void) g;
- }
- static GFXINLINE void setpin_reset(GDisplay *g, gBool state) {
- (void) g;
- (void) state;
- }
- static GFXINLINE void set_backlight(GDisplay *g, gU8 percent) {
- (void) g;
- #ifdef USE_BL_PWM
- pwmEnableChannel(&PWMD12, 0, percent);
- #else
- if (percent) {
- palClearLine(LINE_LCD_BL);
- } else {
- palSetLine(LINE_LCD_BL);
- }
- #endif
- }
- static GFXINLINE void acquire_bus(GDisplay *g) {
- (void) g;
- }
- static GFXINLINE void release_bus(GDisplay *g) {
- (void) g;
- }
- static GFXINLINE void write_index(GDisplay *g, gU16 index) {
- (void) g;
- GDISP_REG = index;
- }
- static GFXINLINE void write_data(GDisplay *g, gU16 data) {
- (void) g;
- GDISP_RAM = (data | (data<<8));
- }
- static GFXINLINE void setreadmode(GDisplay *g) {
- (void) g;
- }
- static GFXINLINE void setwritemode(GDisplay *g) {
- (void) g;
- }
- static GFXINLINE gU16 read_data(GDisplay *g) {
- (void) g;
- return GDISP_RAM;
- }
- #endif
|