📄 tcc79x_physical.h
字号:
#define HwLCP1 *(volatile unsigned long *)0xF0000044 // W, LCD Clipping Register 1
#define HwLCP2 *(volatile unsigned long *)0xF0000048 // W, LCD Clipping Register 2
#define HwLK1 *(volatile unsigned long *)0xF000004C // W, LCD Keying Register 1
#define HwLK_SA1_PIXEL Hw31 // Alpha is applied in pixel data value
#define HwLK_SA1_REGISTER HwZERO // Alpha is applied in register value
#define HwLK_Ax0(X) ((X)*Hw24) // Alpha Value
#define HwLK_A10_MASK HwLK_Ax0(15)
#define HwLK1_A10_MAX HwLK_Ax0(15)
#define HwLK_KR(X) ((X)*Hw16) // Chroma-Key in R(Y) channel
#define HwLK_KR_MASK HwLK_KR(255)
#define HwLK_KG(X) ((X)*Hw8) // Chroma-Key in G(U) channel
#define HwLK_KG_MASK HwLK_KG(255)
#define HwLK_KB(X) ((X)*Hw0) // Chroma-Key in B(V) channel
#define HwLK_KB_MASK HwLK_KB(255)
#define HwLK2 *(volatile unsigned long *)0xF0000050 // W, LCD Keying Register 2
#define HwLK2_A20_MAX HwLK_Ax0(15)
#define HwLKM1 *(volatile unsigned long *)0xF0000054 // W, LCD Keying Mask Register 1
#define HwLKM1_A11_MAX HwLK_Ax0(15)
#define HwLKM2 *(volatile unsigned long *)0xF0000058 // W, LCD Keying Mask Register 2
#define HwLKM2_A21_MAX HwLK_Ax0(15)
#define HwLDS *(volatile unsigned long *)0xF000005C // W, LCD Display Size Register
#define HwLSTATUS *(volatile unsigned long *)0xF0000060 // R/Clr, LCD Status Register
#define HwLSTATUS_VS Hw15 // Monitoring vertical sync.
#define HwLSTATUS_ITY Hw12 // Interrupt Type
#define HwLSTATUS_ICR Hw8 // Interrupt Clear, using ITY is level type
#define HwLSTATUS_BY Hw6 // Busy signal
#define HwLSTATUS_EF Hw5 // Even-Field(Read Only). 0:Odd field or frame, 1:Even field or frame
#define HwLSTATUS_DD Hw4 // Disable Done(Read/Clear). If LEN is disabled, DD will be 1 after current frame has been displayed. As MDD of LIM register is cleared, it can be LCD interrupt source
#define HwLSTATUS_RU Hw3 // Register Update(Read/Clear). It indicates that all registers programmed are applied to current frame data. As MRU of LIM register is cleared, it can be LCD interrupt source
#define HwLSTATUS_FU Hw0 // FIFO underrun(Read/Clear). It indicates that FIFO underrun has been occurred. In this case, LCLK frequency must be lower. As MFU of LIM register is cleared, it can be LCD interrupt source
#define HwLIM *(volatile unsigned long *)0xF0000064 // W, LCD Interrupt Register
#define HwLIM_MDD Hw4 // Masking disable done interrupt
#define HwLIM_MRU Hw3 // Masking register update interrupt
#define HwLIM_MFU Hw0 // Masking FIFO underrun interrupt
#define HwLI0C *(volatile unsigned long *)0xF0000068 // W, LCD Image 0 Control Register
#define HwLI0C_PD_MSB Hw15 // Padding MSB
#define HwLI0C_PD_ZERO HwZERO // Padding ZERO
#define HwLI0C_IMG012 HwZERO //
#define HwLI0C_IMG021 Hw12 //
#define HwLI0C_IMG102 Hw13 //
#define HwLI0C_IMG201 (Hw13+Hw12) //
#define HwLI0C_IMG120 Hw14 //
#define HwLI0C_IMG210 (Hw14+Hw12) //
#define HwLI0C_BR_BE Hw7 // Big Endian pixel data
#define HwLI0C_YUV_420 Hw4 // YUV 4:2:0
#define HwLI0C_YUV_422 (Hw5+Hw4) // YUV 4:2:2
#define HwLI0C_YUV_422P (Hw6+Hw5+Hw4) // YUV 4:2:2 Patch
#define HwLIC_BPP(X) ((X))
#define HwLIC_BPP_MASK HwLIC_BPP(15)
#define HwLI0C_BPP_1 HwLIC_BPP(0) // Bit Per Pixel = 1bpp
#define HwLI0C_BPP_2 HwLIC_BPP(1) // Bit Per Pixel = 2bpp
#define HwLI0C_BPP_4 HwLIC_BPP(2) // Bit Per Pixel = 4bpp
#define HwLI0C_BPP_332 HwLIC_BPP(3) // Bit Per Pixel = 332bpp
#define HwLI0C_BPP_444 HwLIC_BPP(4) // Bit Per Pixel = 444bpp
#define HwLI0C_BPP_565 HwLIC_BPP(5) // Bit Per Pixel = 565bpp
#define HwLI0C_BPP_555 HwLIC_BPP(6) // Bit Per Pixel = 555bpp
#define HwLI0C_BPP_888 HwLIC_BPP(7) // Bit Per Pixel = 888bpp
#define HwLI0C_BPP_666 HwLIC_BPP(8) // Bit Per Pixel = 666bpp
#define HwLI0P *(volatile unsigned long *)0xF000006C // W, LCD Image 0 Position Register
#define HwLI0S *(volatile unsigned long *)0xF0000070 // W, LCD Image 0 Size Register
#define HwLI0BA0 *(volatile unsigned long *)0xF0000074 // W, LCD Image 0 Base Address 0 Register
#define HwLI0CA *(volatile unsigned long *)0xF0000078 // W, LCD Image 0 Current Address Register
#define HwLI0BA1 *(volatile unsigned long *)0xF000007C // W, LCD Image 0 Base Address 1 Register
#define HwLI0BA2 *(volatile unsigned long *)0xF0000080 // W, LCD Image 0 Base Address 2 Register
#define HwLI0O *(volatile unsigned long *)0xF0000084 // W, LCD Image 0 Offset Register
#define HwLI0SCALE *(volatile unsigned long *)0xF0000088 // W, LCD Image 0 Scale Ratio
#define HwLISCALE_Y(X) ((X)*Hw4)
#define HwLISCALE_Y_MASK HwLISCALE_Y(15)
#define HwLISCALE_X(X) ((X))
#define HwLISCALE_X_MASK HwLISCALE_X(15)
#define HwLI0SCALE_Y_NS HwZERO // Non-Scalable
#define HwLI0SCALE_Y_D2 Hw4 // DownScale by 2
#define HwLI0SCALE_Y_D3 Hw5 // DownScale by 3
#define HwLI0SCALE_Y_D4 (Hw5+Hw4) // DownScale by 4
#define HwLI0SCALE_Y_D8 (Hw6+Hw5+Hw4) // DownScale by 8
#define HwLI0SCALE_Y_U2 (Hw7+Hw4) // UpScale by 2
#define HwLI0SCALE_Y_U3 (Hw7+Hw5) // UpScale by 3
#define HwLI0SCALE_Y_U4 (Hw7+Hw5+Hw4) // UpScale by 4
#define HwLI0SCALE_Y_U8 (Hw7+Hw6+Hw5+Hw4) // UpScale by 8
#define HwLI0SCALE_X_NS HwZERO // Non-Scalable
#define HwLI0SCALE_X_D2 Hw0 // DownScale by 2
#define HwLI0SCALE_X_D3 Hw1 // DownScale by 3
#define HwLI0SCALE_X_D4 (Hw1+Hw0) // DownScale by 4
#define HwLI0SCALE_X_D8 (Hw2+Hw1+Hw0) // DownScale by 8
#define HwLI0SCALE_X_U2 (Hw3+Hw0) // UpScale by 2
#define HwLI0SCALE_X_U3 (Hw3+Hw1) // UpScale by 3
#define HwLI0SCALE_X_U4 (Hw3+Hw1+Hw0) // UpScale by 4
#define HwLI0SCALE_X_U8 (Hw3+Hw2+Hw1+Hw0) // UpScale by 8
#define HwLI1C *(volatile unsigned long *)0xF000008C // W, LCD Image 1 Control Register
#define HwLI1C_PD_EN Hw15 // Enable Padding
#define HwLI1C_PD_DIS ~Hw15 // Disable Padding
#define HwLI1C_BR_BE Hw7 // Big Endian pixel data
#define HwLI1C_YUV_420 Hw4 // YUV 4:2:0
#define HwLI1C_YUV_422 (Hw5+Hw4) // YUV 4:2:2
#define HwLI1C_YUV_422P (Hw6+Hw5+Hw4) // YUV 4:2:2 Patch
#define HwLI1C_BPP_1 HwLIC_BPP(0) // Bit Per Pixel = 1bpp
#define HwLI1C_BPP_2 HwLIC_BPP(1) // Bit Per Pixel = 2bpp
#define HwLI1C_BPP_4 HwLIC_BPP(2) // Bit Per Pixel = 4bpp
#define HwLI1C_BPP_332 HwLIC_BPP(3) // Bit Per Pixel = 332bpp
#define HwLI1C_BPP_444 HwLIC_BPP(4) // Bit Per Pixel = 444bpp
#define HwLI1C_BPP_565 HwLIC_BPP(5) // Bit Per Pixel = 565bpp
#define HwLI1C_BPP_555 HwLIC_BPP(6) // Bit Per Pixel = 555bpp
#define HwLI1C_BPP_888 HwLIC_BPP(7) // Bit Per Pixel = 888bpp
#define HwLI1C_BPP_666 HwLIC_BPP(8) // Bit Per Pixel = 666bpp
#define HwLI1P *(volatile unsigned long *)0xF0000090 // W, LCD Image 1 Position Register
#define HwLI1S *(volatile unsigned long *)0xF0000094 // W, LCD Image 1 Size Register
#define HwLI1BA0 *(volatile unsigned long *)0xF0000098 // W, LCD Image 1 Base Address 0 Register
#define HwLI1CA *(volatile unsigned long *)0xF000009C // W, LCD Image 1 Current Address Register
#define HwLI1BA1 *(volatile unsigned long *)0xF00000A0 // W, LCD Image 1 Base Address 1 Register
#define HwLI1BA2 *(volatile unsigned long *)0xF00000A4 // W, LCD Image 1 Base Address 2 Register
#define HwLI1O *(volatile unsigned long *)0xF00000A8 // W, LCD Image 1 Offset Register
#define HwLI1SCALE *(volatile unsigned long *)0xF00000AC // W, LCD Image 1 Scale Ratio
#define HwLI1SCALE_Y_NS HwZERO // Non-Scalable
#define HwLI1SCALE_Y_D2 Hw4 // DownScale by 2
#define HwLI1SCALE_Y_D3 Hw5 // DownScale by 3
#define HwLI1SCALE_Y_D4 (Hw5+Hw4) // DownScale by 4
#define HwLI1SCALE_Y_D8 (Hw6+Hw5+Hw4) // DownScale by 8
#define HwLI1SCALE_Y_U2 (Hw7+Hw4) // UpScale by 2
#define HwLI1SCALE_Y_U3 (Hw7+Hw5) // UpScale by 3
#define HwLI1SCALE_Y_U4 (Hw7+Hw5+Hw4) // UpScale by 4
#define HwLI1SCALE_Y_U8 (Hw7+Hw6+Hw5+Hw4) // UpScale by 8
#define HwLI1SCALE_X_NS HwZERO // Non-Scalable
#define HwLI1SCALE_X_D2 Hw0 // DownScale by 2
#define HwLI1SCALE_X_D3 Hw1 // DownScale by 3
#define HwLI1SCALE_X_D4 (Hw1+Hw0) // DownScale by 4
#define HwLI1SCALE_X_D8 (Hw2+Hw1+Hw0) // DownScale by 8
#define HwLI1SCALE_X_U2 (Hw3+Hw0) // UpScale by 2
#define HwLI1SCALE_X_U3 (Hw3+Hw1) // UpScale by 3
#define HwLI1SCALE_X_U4 (Hw3+Hw1+Hw0) // UpScale by 4
#define HwLI1SCALE_X_U8 (Hw3+Hw2+Hw1+Hw0) // UpScale by 8
#define HwLI2C *(volatile unsigned long *)0xF00000B0 // W, LCD Image 2 Control Register
#define HwLI2C_PD_EN Hw15 // Enable Padding
#define HwLI2C_PD_DIS ~Hw15 // Disable Padding
#define HwLI2C_LUT(X) ((X)*Hw9) // Use the Color Lookup Table
#define HwLI2C_LUT_CH0 HwLI2C_LUT(1) // Use the Color Lookup Table in channel 0
#define HwLI2C_LUT_CH1 HwLI2C_LUT(2) // Use the Color Lookup Table in channel 1
#define HwLI2C_LUT_CH2 HwLI2C_LUT(3) // Use the Color Lookup Table in channel 2
#define HwLI2C_BR_BE Hw7 // Big Endian pixel data
#define HwLI2C_YUV_420 Hw4 // YUV 4:2:0
#define HwLI2C_YUV_422 (Hw5+Hw4) // YUV 4:2:2
#define HwLI2C_YUV_422P (Hw6+Hw5+Hw4) // YUV 4:2:2 Patch
#define HwLI2C_BPP_1 HwLIC_BPP(0) // Bit Per Pixel = 1bpp
#define HwLI2C_BPP_2 HwLIC_BPP(1) // Bit Per Pixel = 2bpp
#define HwLI2C_BPP_4 HwLIC_BPP(2) // Bit Per Pixel = 4bpp
#define HwLI2C_BPP_332 HwLIC_BPP(3) // Bit Per Pixel = 332bpp
#define HwLI2C_BPP_444 HwLIC_BPP(4) // Bit Per Pixel = 444bpp
#define HwLI2C_BPP_565 HwLIC_BPP(5) // Bit Per Pixel = 565bpp
#define HwLI2C_BPP_555 HwLIC_BPP(6) // Bit Per Pixel = 555bpp
#define HwLI2C_BPP_888 HwLIC_BPP(7) // Bit Per Pixel = 888bpp
#define HwLI2C_BPP_666 HwLIC_BPP(8) // Bit Per Pixel = 666bpp
#define HwLI2P *(volatile unsigned long *)0xF00000B4 // W, LCD Image 2 Position Register
#define HwLI2S *(volatile unsigned long *)0xF00000B8 // W, LCD Image 2 Size Register
#define HwLI2BA0 *(volatile unsigned long *)0xF00000BC // W, LCD Image 2 Base Address 0 Register
#define HwLI2CA *(volatile unsigned long *)0xF00000C0 // W, LCD Image 2 Current Address Register
#define HwLI2BA1 *(volatile unsigned long *)0xF00000C4 // W, LCD Image 2 Base Address 1 Register
#define HwLI2BA2 *(volatile unsigned long *)0xF00000C8 // W, LCD Image 2 Base Address 2 Register
#define HwLI2O *(volatile unsigned long *)0xF00000CC // W, LCD Image 2 Offset Register
#define HwLI2SCALE *(volatile unsigned long *)0xF00000D0 // W, LCD Image 2 Scale Ratio
#define HwLI2SCALE_Y_NS HwZERO // Non-Scalable
#define HwLI2SCALE_Y_D2 Hw4 // DownScale by 2
#define HwLI2SCALE_Y_D3 Hw5 // DownScale by 3
#define HwLI2SCALE_Y_D4 (Hw5+Hw4) // DownScale by 4
#define HwLI2SCALE_Y_D8 (Hw6+Hw5+Hw4) // DownScale by 8
#define HwLI2SCALE_Y_U2 (Hw7+Hw4) // UpScale by 2
#define HwLI2SCALE_Y_U3 (Hw7+Hw5) // UpScale by 3
#define HwLI2SCALE_Y_U4 (Hw7+Hw5+Hw4) // UpScale by 4
#define HwLI2SCALE_Y_U8 (Hw7+Hw6+Hw5+Hw4) // UpScale by 8
#define HwLI2SCALE_X_NS HwZERO // Non-Scalable
#define HwLI2SCALE_X_D2 Hw0 // DownScale by 2
#define HwLI2SCALE_X_D3 Hw1 // DownScale by 3
#define HwLI2SCALE_X_D4 (Hw1+Hw0) // DownScale by 4
#define HwLI2SCALE_X_D8 (Hw2+Hw1+Hw0) // DownScale by 8
#define HwLI2SCALE_X_U2 (Hw3+Hw0) // UpScale by 2
#define HwLI2SCALE_X_U3 (Hw3+Hw1) // UpScale by 3
#define HwLI2SCALE_X_U4 (Hw3+Hw1+Hw0) // UpScale by 4
#define HwLI2SCALE_X_U8 (Hw3+Hw2+Hw1+Hw0) // UpScale by 8
#define HwDLCTRL *(volatile unsigned long *)0xF00000D4 // W, Dual LCD Control
#define HwDLCTRL_DRE Hw4 // Dual LCD Register Update Enable
#define HwDLCTRL_DLE Hw0 // Dual LCD Operation Enable
#define HwDLCSA0 *(volatile unsigned long *)0xF00000DC // W, Dual LCD Configuration Start Address 0
#define HwDLCSA1 *(volatile unsigned long *)0xF00000E0 // W, Dual LCD Configuration Start Address 1
#define HwY2RP0 *(volatile unsigned long *)0xF00000E4 // W, YCbCr to RGB Conversion Parameter 0
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -