⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 bit1611b5_v023.asm

📁 Analog and digital LCD PANEL dirver code
💻 ASM
📖 第 1 页 / 共 5 页
字号:
;   OSD2 (10 col x 7 row): 0x587..0x5CC
;   OSD3 (27 col x 1 row): 0x5CD..0x5E7
;       Left:   0x5CD
;       Bar:    0x5CE..0x5E2
;       Right:  0x5E3
;       CSTD:   0x5E4
;       D100:   0x5E5
;       D10:    0x5E6
;       D1:     0x5E7

; OSD1
VP_ATTR_OSD1                        EQU         0580h

; OSD2
VP_ATTR_OSD2                        EQU         0587h
VP_ATTR_OSD2_ROW0                   EQU         0587h
VP_ATTR_OSD2_ROW1                   EQU         0591h
VP_ATTR_OSD2_ROW2                   EQU         059Bh
VP_ATTR_OSD2_ROW3                   EQU         05A5h
VP_ATTR_OSD2_ROW4                   EQU         05AFh
VP_ATTR_OSD2_ROW5                   EQU         05B9h
VP_ATTR_OSD2_ROW6                   EQU         05C3h

; OSD3
VP_ATTR_OSD3                        EQU         05CDh
VP_ATTR_BAR                         EQU         05CEh
VP_ATTR_DIGIT                       EQU         05E5h


VERSION_WIDTH                       EQU         19
VERSION_WIDTH_1                     EQU         18

MESSAGE_WIDTH                       EQU         7
MESSAGE_WIDTH_1                     EQU         6

CUE43_WIDTH                         EQU         4
CUE43_WIDTH_1                       EQU         3
CUE169_WIDTH                        EQU         5
CUE169_WIDTH_1                      EQU         4

; =====================================
; OSD Palette
PALETTE_AREA                        EQU         16      ; 4 x 4 = 16
PALETTE_AREA_1                      EQU         15


; ------------------------------------------------------------------------------
; BIT1611B RAM Map
;   8-bit:  0x001,
;           0x094 to 0x099, 
;           0x0A1, 
;           0x0CF to 0x0D4,
;           0x0D6 to 0x0D8
;           0x0DB
;   6-bit: 0x09A to 0x0A0
; ------------------------------------------------------------------------------
RAM_MENU_CURSOR                     EQU         0001h
RAM_BRIGHTNESS                      EQU         0094h
RAM_CONTRAST                        EQU         0095h
RAM_SATURATION                      EQU         0096h
RAM_HUE                             EQU         0097h
RAM_PWM                             EQU         0098h

RAM_Backup                          EQU         0099h

RAM_VS_CNT                          EQU         00A1h

RAM_TCON                            EQU         00CFh   ; R037
TCON_ID_RU                          EQU         001h
TCON_ID_LU                          EQU         002h
TCON_ID_LD                          EQU         004h
TCON_ID_RD                          EQU         008h
TCON_BIT_RU                         EQU         0
TCON_BIT_LU                         EQU         1
TCON_BIT_LD                         EQU         2
TCON_BIT_RD                         EQU         3


RAM_REMAINDER                       EQU         00D0h
RAM_FULL                            EQU         00D1h
RAM_EMPTY                           EQU         00D2h
RAM_DIGIT10                         EQU         00D3h

RAM_OSD_VANISH_CNT                  EQU         00D4h
OSD_AUTO_VANISH                     EQU         255     ; OSD Auto Vanish=255 VS

RAM_OSD_OFFSET                      EQU         00D6h

RAM_SYSTEM_STATE                    EQU         009Ah
STATE_NORMAL                        EQU         0
STATE_PAL_PWM                       EQU         1       ; PAL  + PWM tuning
STATE_NTSC_PWM                      EQU         3       ; NTSC + PWM tuning

STATE_BIT_PWM                       EQU         0       ; 1=PWM tuning, 0=Normal
STATE_BIT_NTSC                      EQU         1       ; 1=NTSC, 0=PAL

RAM_SOURCE                          EQU         00D7h

; ------------------------------------------------------------------------------
; BIT1611B Fixed Font
; ------------------------------------------------------------------------------
FONT_00_DASH_0                      EQU         000h
FONT_03_DASH_3                      EQU         003h
FONT_10_BAREMPTY                    EQU         010h
FONT_16_BARFULL                     EQU         016h
FONT_17_CONTRAST                    EQU         017h
FONT_18_SATURATION                  EQU         018h
FONT_19_HUE                         EQU         019h
FONT_1B_BRIGHTNESS                  EQU         01Bh
FONT_1C_LEFT_ARROW                  EQU         01Ch
FONT_1D_RIGHT_ARROW                 EQU         01Dh
FONT_20_BLANK                       EQU         020h
FONT_21                             EQU         021h
FONT_2F_SLASH                       EQU         02Fh
FONT_30_DIGIT_0                     EQU         030h
FONT_31_DIGIT_1                     EQU         031h
FONT_39_DIGIT_9                     EQU         039h
FONT_3A                             EQU         03Ah
FONT_3C_CHECK_OFF                   EQU         03Ch
FONT_3E_CHECK_ON                    EQU         03Eh

FONT_00_TRACK_0                     EQU         000h
FONT_01_TRACK_1                     EQU         001h
FONT_06_TRACK_2                     EQU         006h
FONT_07_TRACK_3                     EQU         007h

FONT_5B_BAR_LEFT                    EQU         05Bh
FONT_10_BAR_0                       EQU         010h
FONT_11_BAR_1                       EQU         011h
FONT_12_BAR_2                       EQU         012h
FONT_13_BAR_3                       EQU         013h
FONT_14_BAR_4                       EQU         014h
FONT_15_BAR_5                       EQU         015h
FONT_16_BAR_6                       EQU         016h
FONT_5D_BAR_RIGHT                   EQU         05Dh

FONT_4E_N                           EQU         04Eh
FONT_50_P                           EQU         050h

FONT_DUMMY                          EQU         020h


; Backlight:        Active LOW
;   GPO3/GOUT1 pin 92 with PULL HIGH to 5V (12V Inverter)
;       GPO_SEL     (0x008[3]) = 1
;       GPO_TYPE    (0x009[3]) = 1  for HIGH
;                              = 0  for LOW
;       GPO_REG     (0x00A[3]) = 0
;       POWER_SEL   (0x0DA[3]) = 0
;       GPO_STATUS  (0x101[2]) = 0
;
;BL_OFF                              EQU         008h    ; GPO3 = HIGH
;BL_ON                               EQU         000h    ; GPO3 = LOW

; Write Protect:    Active HIGH
;   GPO0/ROUT0 pin 78 with PULL HIGH to 3.3V
;       GPO_SEL     (0x008[0]) = 1
;       GPO_TYPE    (0x009[0]) = 1  for HIGH (Read Only)
;                              = 0  for LOW  (Read/Write)
;       GPO_REG     (0x00A[0]) = 0
;       POWER_SEL   (0x0DA[0]) = 0
;       GPO_STATUS  (0x101[2]) = 0
;WP_OFF                              EQU         000h    ; GPO0 = LOW    Read/Write
;WP_ON                               EQU         001h    ; GPO0 = HIGH   Read Only

                                                        ;         BL    WP
                                                        ; 7 6 5 4 3 2 1 0
BL_OFF_WP_OFF                       EQU         008h    ; x x x x 1 x x 0
BL_OFF_WP_ON                        EQU         009h    ; x x x x 1 x x 1
BL_ON_WP_OFF                        EQU         000h    ; x x x x 0 x x 0
BL_ON_WP_ON                         EQU         001h    ; x x x x 0 x x 1


; XCLK p26:
; 7 6 5 4 3 2 1 0
; | | | | | | |_|_ XCLK_SEL
; |_|_|_|_|_|_____
;
; SPI p82
; 7 6 5 4 3 2 1 0
; | | | | | |_|_|_ I2C R/W Speed
; |_|_|_|_|_______
;
CLK_SPEEDUP                         EQU         080h    ; XCLK   Speed = OSCCLK   (0)
CLK_SPEEDDOWN                       EQU         083h    ; XCLK   Speed = OSCCLK/8 (3)
SPI_SPEEDUP                         EQU         0B6h    ; EEPROM Speed = Faster  (6)    90  KHz
SPI_SPEEDDOWN                       EQU         0B7h    ; EEPROM Speed = Slowest (7)    5.x KHz

OSD_ON                              EQU         009h
OSD_OFF                             EQU         008h
OSD_BIT_ENABLE                      EQU         0

OSD_CLK_ON                          EQU         07Fh
OSD_CLK_OFF                         EQU         03Fh

; ------------------------------------------------------------------------------
; Interrupt ACK (004h)
;   0_SIGIN
;   1_NOSIG
;   2_MODECHG
;   3_VSYNC
;   4_TIMER0
;   5_TIMER1
;   6_IR
;   7_KEYIN
; ------------------------------------------------------------------------------
; 1101 0111 (KEY + IR + TIMER0 +      MODECHG + NOSIG + SIGIN)
INT_ACK_VS_OFF                      EQU         0D7h
; 1101 1111 (KEY + IR + TIMER0 + VS + MODECHG + NOSIG + SIGIN)
INT_ACK_VS_ON                       EQU         0DFh

; ------------------------------------------------------------------------------
; Interrupt ATTR (005h)
;   0   0=Edge, 1=Level
;   1   1=Low/Falling Active, 0=High/Rising Active
;   2   0=ODD Field, 1=EVEN Field
;   3
;   4   Double Buffer Load Enable
;   5   Double Buffer Register Update Type
;   6   Interrupt Vector[3] source select
;   7   Interrupt Vector[5:4] source select
; ------------------------------------------------------------------------------
; 1110 0000 (         RISING + EDGE)
INT_ATTR_LOAD_DISABLE               EQU         060h
; 1111 0000 (ENABLE + RISING + EDGE)
INT_ATTR_LOAD_ENABLE                EQU         070h

PWM1_FREQ_NTSC                      EQU         04Dh    ; R0E0
PWM1_FREQ_PAL                       EQU         04Dh

ACLAMP_LEVEL_NTSC                   EQU         045h    ; R12A
ACLAMP_LEVEL_PAL                    EQU         045h

BRIGHTNESS_N                        EQU         084h    ; 0x7C..0x7E
BRIGHTNESS_P                        EQU         084h
CONTRAST_N                          EQU         05Bh    ; 0x7F..0x81
CONTRAST_P                          EQU         05Bh

; ------------------------------------------------------------------------------
; Menu ID
; ------------------------------------------------------------------------------
MENU_ID_STANDBY                     EQU         001h
MENU_ID_BRIGHTNESS                  EQU         002h

MENU_BIT_STANDBY                    EQU         0
MENU_BIT_BRIGHTNESS                 EQU         1
MENU_BIT_CONTRAST                   EQU         2
MENU_BIT_SATURATION                 EQU         3
MENU_BIT_HUE                        EQU         4
MENU_BIT_MODE                       EQU         5   ; Display Mode (16:9/4:3)
MENU_BIT_RESET                      EQU         6
MENU_BIT_EXIT                       EQU         7

; ------------------------------------------------------------------------------
; Video Source
; ------------------------------------------------------------------------------
SOURCE_CVBS1                        EQU         001h
SOURCE_CVBS2                        EQU         002h
SOURCE_YC1                          EQU         004h
SOURCE_DEFAULT                      EQU         SOURCE_CVBS1

SOURCE_BIT_CVBS1                    EQU         0
SOURCE_BIT_CVBS2                    EQU         1
SOURCE_BIT_YC1                      EQU         2

; ------------------------------------------------------------------------------
; GAMMA
; ------------------------------------------------------------------------------
GAMMA_OFF                           EQU         000h
GAMMA_ON                            EQU         001h
GAMMA_ON_SINGLE                     EQU         005h

; ------------------------------------------------------------------------------
; KEY
; ------------------------------------------------------------------------------
;
;    DOWN    = BIN3 PIN 55 (GPI3)  :   Active HIGH
;    UP      = BIN4 PIN 53 (GPI4)  :   Active HIGH
;    SELECT  = BIN5 PIN 52 (GPI5)  :   Active HIGH
;    MENU    = BIN6 PIN 51 (GPI6)  :   Active HIGH
;    POWER   = BIN7 PIN 50 (GPI7)  :   Active HIGH
;
;    PWM Menu: MENU + UP
;
;    7 6 5 4 3 2 1 0
;    | | | | | |_|_|_
;    | | | | |_______ DOWN
;    | | | |_________ UP
;    | | |___________ SELECT
;    | |_____________ MENU
;    |_______________ POWER
;

KEY_BIT_DOWN                        EQU         3       ; GPI3
KEY_BIT_UP                          EQU         4       ; GPI4
KEY_BIT_SELECT                      EQU         5       ; GPI5
KEY_BIT_MENU                        EQU         6       ; GPI6
KEY_BIT_POWER                       EQU         7       ; GPI7

KEY_BIT_PWM                         EQU         4       ; GPI6 + GPI4 (MENU + UP)



; GPI3 GPI2 GPI1 GPI0:  01 11 11 11 (0x7F)
; GPI7 GPI6 GPI5 GPI4:  01 01 01 01 (0x55)
KEY_DISABLE                         EQU         0FFh
KEY_C4_SETUP3210                    EQU         07Fh    ; GPI3
KEY_C5_SETUP7654                    EQU         055h    ; GPI7 / GPI6 / GPI5 / GPI4


; RC03
;   IR                      C  /C D  /D
;   IR_TV_AV                01 FE 04 FB
;   IR_MUTE                 01 FE 08 F7
;   IR_POWER                01 FE 00 FF
;   IR_MENU                 01 FE 05 FA
;   IR_AUTO                 01 FE 0D F2
;   IR_CHANNEL_UP           01 FE 0A F5
;   IR_CHANNEL_DOWN         01 FE 11 EE
;   IR_VOLUME_UP            01 FE 12 ED
;   IR_VOLUME_DOWN          01 FE 0E F1
;IR_UDCC                             EQU         001h   ; 0xFA
;IR_UDCC_BAR                         EQU         0FEh   ; 0xF9
;IR_ATTR                             EQU         08Bh   ; 0xFB
;IR_ATTR2                            EQU         012h   ; 0xFC
;
;IR_DOWN                             EQU         011h
;IR_UP                               EQU         00Ah
;IR_SELECT                           EQU         00Dh
;IR_MENU                             EQU         005h
;IR_POWER                            EQU         000h


; RMC-2001
;   IR                      C  /C D  /D
;   IR_MENU                 86 6B 11 EE
;   IR_POWER                86 6B 12 ED
;   IR_SOURCE               86 6B 0F F0
;   IR_CHANNEL_UP           86 6B 1A E5
;   IR_CHANNEL_DOWN         86 6B 1E E1
;   IR_VOLUME_UP            86 6B 1B E4
;   IR_VOLUME_DOWN          86 6B 1F E0
IR_REPEAT_ON                        EQU         002h
IR_REPEAT_OFF                       EQU         003h

IR_UDCC                             EQU         086h    ; 0xFA
IR_UDCC_BAR                         EQU         06Bh    ; 0xF9
IR_ATTR                             EQU         08Bh    ; 0xFB
IR_ATTR2                            EQU         003h    ; 0xFC

IR_DOWN                             EQU         01Eh
IR_UP                               EQU         01Ah
IR_SELECT                           EQU         00Fh
IR_MENU                             EQU         011h
IR_POWER                            EQU         012h


IR_BIT_DOWN                         EQU         3
IR_BIT_UP                           EQU         4
IR_BIT_SELECT                       EQU         5
IR_BIT_MENU                         EQU         6
IR_BIT_POWER                        EQU         7

IR_BIT_REPEAT                       EQU         4



; ------------------------------------------------------------------------------
;   OSD Palette
; ------------------------------------------------------------------------------
OSD1_NM_ATTR                        EQU         043h    ; Palette 3
OSD2_NM_ATTR                        EQU         040h    ; Palette 0
OSD2_HL_ATTR                        EQU         041h    ; Palette 1
OSD3_NM_ATTR                        EQU         040h    ; Palette 0

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -