|
|
/*******************************************************************************
|
|
|
* Copyright(c) 2023 Levetop Semiconductor Co.,Led. All rights reserved.
|
|
|
* @file LT768.h
|
|
|
* @author UartTFT Application Team
|
|
|
* @version V1.0.0
|
|
|
* @date 2023-02-24
|
|
|
* @brief Please refer to LT768.h file for the register function of LT768
|
|
|
********************************************************************************/
|
|
|
|
|
|
#ifndef _LT768_h
|
|
|
#define _LT768_h
|
|
|
|
|
|
#include "LT768.h"
|
|
|
#include "if_port.h"
|
|
|
|
|
|
#define cSetb0 0x01
|
|
|
#define cSetb1 0x02
|
|
|
#define cSetb2 0x04
|
|
|
#define cSetb3 0x08
|
|
|
#define cSetb4 0x10
|
|
|
#define cSetb5 0x20
|
|
|
#define cSetb6 0x40
|
|
|
#define cSetb7 0x80
|
|
|
|
|
|
#define cClrb0 0xfe
|
|
|
#define cClrb1 0xfd
|
|
|
#define cClrb2 0xfb
|
|
|
#define cClrb3 0xf7
|
|
|
#define cClrb4 0xef
|
|
|
#define cClrb5 0xdf
|
|
|
#define cClrb6 0xbf
|
|
|
#define cClrb7 0x7f
|
|
|
|
|
|
void LCD_RegisterWrite(uint8_t Cmd, uint8_t Data);
|
|
|
uint8_t LCD_RegisterRead(uint8_t Cmd);
|
|
|
|
|
|
//**Staus**//
|
|
|
void Check_Mem_WR_FIFO_not_Full(void);
|
|
|
void Check_Mem_WR_FIFO_Empty(void);
|
|
|
void Check_Mem_RD_FIFO_not_Full(void);
|
|
|
void Check_Mem_RD_FIFO_not_Empty(void);
|
|
|
void Check_2D_Busy(void);
|
|
|
void Check_SDRAM_Ready(void);
|
|
|
uint8_t Power_Saving_Status(void);
|
|
|
void Check_Power_is_Normal(void);
|
|
|
void Check_Power_is_Saving(void);
|
|
|
void Check_NO_Interrupt(void);
|
|
|
void Check_Interrupt_Occur(void);
|
|
|
|
|
|
void Check_Busy_Draw(void);
|
|
|
void Check_Busy_SFI_DMA(void);
|
|
|
|
|
|
//**[00h]**//
|
|
|
void LT768_SW_Reset(void);
|
|
|
//**[01h]**//
|
|
|
void Enable_PLL(void);
|
|
|
void LT768_Sleep(void);
|
|
|
void LT768_WakeUp(void);
|
|
|
void TFT_24bit(void);
|
|
|
void TFT_18bit(void);
|
|
|
void TFT_16bit(void);
|
|
|
void TFT_LVDS(void);
|
|
|
void Key_Scan_Enable(void);
|
|
|
void Key_Scan_Disable(void);
|
|
|
void LT768_I2CM_Enable(void);
|
|
|
void LT768_I2CM_Disable(void);
|
|
|
void Enable_SFlash_SPI(void);
|
|
|
void Disable_SFlash_SPI(void);
|
|
|
void Host_Bus_8bit(void);
|
|
|
void Host_Bus_16bit(void);
|
|
|
//**[02h]**//
|
|
|
|
|
|
void RGB_8b_8bpp(void);
|
|
|
void RGB_8b_16bpp(void);
|
|
|
void RGB_8b_24bpp(void);
|
|
|
|
|
|
void RGB_16b_8bpp(void);
|
|
|
void RGB_16b_16bpp(void);
|
|
|
void RGB_16b_24bpp_mode1(void);
|
|
|
void RGB_16b_24bpp_mode2(void);
|
|
|
|
|
|
void MemRead_Left_Right_Top_Down(void);
|
|
|
void MemRead_Right_Left_Top_Down(void);
|
|
|
void MemRead_Top_Down_Left_Right(void);
|
|
|
void MemRead_Down_Top_Left_Right(void);
|
|
|
|
|
|
void MemWrite_Left_Right_Top_Down(void);
|
|
|
void MemWrite_Right_Left_Top_Down(void);
|
|
|
void MemWrite_Top_Down_Left_Right(void);
|
|
|
void MemWrite_Down_Top_Left_Right(void);
|
|
|
//**[03h]**//
|
|
|
void Interrupt_Active_Low(void);
|
|
|
void Interrupt_Active_High(void);
|
|
|
void ExtInterrupt_Debounce(void);
|
|
|
void ExtInterrupt_Nodebounce(void);
|
|
|
void ExtInterrupt_Input_Low_Level_Trigger(void);
|
|
|
void ExtInterrupt_Input_High_Level_Trigger(void);
|
|
|
void ExtInterrupt_Input_Falling_Edge_Trigger(void);
|
|
|
void ExtInterrupt_Input_Rising_Edge_Trigger(void);
|
|
|
void LVDS_Format1(void);
|
|
|
void LVDS_Format2(void);
|
|
|
void Graphic_Mode(void);
|
|
|
void Text_Mode(void);
|
|
|
void Memory_Select_SDRAM(void);
|
|
|
void Memory_Select_Graphic_Cursor_RAM(void);
|
|
|
void Memory_Select_Color_Palette_RAM(void);
|
|
|
//**[05h]**//
|
|
|
//**[06h]**//
|
|
|
//**[07h]**//
|
|
|
//**[09h]**//
|
|
|
//**[0Ah]**//
|
|
|
//**[0Bh]**//
|
|
|
void Enable_Resume_Interrupt(void);
|
|
|
void Disable_Resume_Interrupt(void);
|
|
|
void Enable_ExtInterrupt_Input(void);
|
|
|
void Disable_ExtInterrupt_Input(void);
|
|
|
void Enable_I2CM_Interrupt(void);
|
|
|
void Disable_I2CM_Interrupt(void);
|
|
|
void Enable_Vsync_Interrupt(void);
|
|
|
void Disable_Vsync_Interrupt(void);
|
|
|
void Enable_KeyScan_Interrupt(void);
|
|
|
void Disable_KeyScan_Interrupt(void);
|
|
|
void Enable_DMA_Draw_BTE_Interrupt(void);
|
|
|
void Disable_DMA_Draw_BTE_Interrupt(void);
|
|
|
void Enable_PWM1_Interrupt(void);
|
|
|
void Disable_PWM1_Interrupt(void);
|
|
|
void Enable_PWM0_Interrupt(void);
|
|
|
void Disable_PWM0_Interrupt(void);
|
|
|
//**[0Ch]**//
|
|
|
uint8_t Read_Interrupt_status(void);
|
|
|
void Clear_Resume_Interrupt_Flag(void);
|
|
|
void Clear_ExtInterrupt_Input_Flag(void);
|
|
|
void Clear_I2CM_Interrupt_Flag(void);
|
|
|
void Clear_Vsync_Interrupt_Flag(void);
|
|
|
void Clear_KeyScan_Interrupt_Flag(void);
|
|
|
void Clear_DMA_Draw_BTE_Interrupt_Flag(void);
|
|
|
void Clear_PWM1_Interrupt_Flag(void);
|
|
|
void Clear_PWM0_Interrupt_Flag(void);
|
|
|
//**[0Dh]**//
|
|
|
void Mask_Resume_Interrupt_Flag(void);
|
|
|
void Mask_ExtInterrupt_Input_Flag(void);
|
|
|
void Mask_I2CM_Interrupt_Flag(void);
|
|
|
void Mask_Vsync_Interrupt_Flag(void);
|
|
|
void Mask_KeyScan_Interrupt_Flag(void);
|
|
|
void Mask_DMA_Draw_BTE_Interrupt_Flag(void);
|
|
|
void Mask_PWM1_Interrupt_Flag(void);
|
|
|
void Mask_PWM0_Interrupt_Flag(void);
|
|
|
//
|
|
|
void Enable_Resume_Interrupt_Flag(void);
|
|
|
void Enable_ExtInterrupt_Input_Flag(void);
|
|
|
void Enable_I2CM_Interrupt_Flag(void);
|
|
|
void Enable_Vsync_Interrupt_Flag(void);
|
|
|
void Enable_KeyScan_Interrupt_Flag(void);
|
|
|
void Enable_DMA_Draw_BTE_Interrupt_Flag(void);
|
|
|
void Enable_PWM1_Interrupt_Flag(void);
|
|
|
void Enable_PWM0_Interrupt_Flag(void);
|
|
|
//**[0Eh]**//
|
|
|
void Enable_GPIOF_PullUp(void);
|
|
|
void Enable_GPIOE_PullUp(void);
|
|
|
void Enable_GPIOD_PullUp(void);
|
|
|
void Enable_GPIOC_PullUp(void);
|
|
|
void Enable_XDB15_8_PullUp(void);
|
|
|
void Enable_XDB7_0_PullUp(void);
|
|
|
void Disable_GPIOF_PullUp(void);
|
|
|
void Disable_GPIOE_PullUp(void);
|
|
|
void Disable_GPIOD_PullUp(void);
|
|
|
void Disable_GPIOC_PullUp(void);
|
|
|
void Disable_XDB15_8_PullUp(void);
|
|
|
void Disable_XDB7_0_PullUp(void);
|
|
|
|
|
|
//**[0Fh]**//
|
|
|
void XPDAT18_Set_GPIO_D7(void);
|
|
|
void XPDAT18_Set_KOUT4(void);
|
|
|
void XPDAT17_Set_GPIO_D5(void);
|
|
|
void XPDAT17_Set_KOUT2(void);
|
|
|
void XPDAT16_Set_GPIO_D4(void);
|
|
|
void XPDAT16_Set_KOUT1(void);
|
|
|
void XPDAT9_Set_GPIO_D3(void);
|
|
|
void XPDAT9_Set_KOUT3(void);
|
|
|
void XPDAT8_Set_GPIO_D2(void);
|
|
|
void XPDAT8_Set_KIN3(void);
|
|
|
void XPDAT2_Set_GPIO_D6(void);
|
|
|
void XPDAT2_Set_KIN4(void);
|
|
|
void XPDAT1_Set_GPIO_D1(void);
|
|
|
void XPDAT1_Set_KIN2(void);
|
|
|
void XPDAT0_Set_GPIO_D0(void);
|
|
|
void XPDAT0_Set_KIN1(void);
|
|
|
|
|
|
//**[10h]**//
|
|
|
void Enable_PIP1(void);
|
|
|
void Disable_PIP1(void);
|
|
|
void Enable_PIP2(void);
|
|
|
void Disable_PIP2(void);
|
|
|
void Select_PIP1_Parameter(void);
|
|
|
void Select_PIP2_Parameter(void);
|
|
|
void Select_Main_Window_8bpp(void);
|
|
|
void Select_Main_Window_16bpp(void);
|
|
|
void Select_Main_Window_24bpp(void);
|
|
|
//**[11h]**//
|
|
|
void Select_PIP1_Window_8bpp(void);
|
|
|
void Select_PIP1_Window_16bpp(void);
|
|
|
void Select_PIP1_Window_24bpp(void);
|
|
|
void Select_PIP2_Window_8bpp(void);
|
|
|
void Select_PIP2_Window_16bpp(void);
|
|
|
void Select_PIP2_Window_24bpp(void);
|
|
|
//**[12h]**//
|
|
|
void PCLK_Rising(void);
|
|
|
void PCLK_Falling(void);
|
|
|
void Display_ON(void);
|
|
|
void Display_OFF(void);
|
|
|
void Color_Bar_ON(void);
|
|
|
void Color_Bar_OFF(void);
|
|
|
void HSCAN_L_to_R(void);
|
|
|
void HSCAN_R_to_L(void);
|
|
|
void VSCAN_T_to_B(void);
|
|
|
void VSCAN_B_to_T(void);
|
|
|
void PDATA_Set_RGB(void);
|
|
|
void PDATA_Set_RBG(void);
|
|
|
void PDATA_Set_GRB(void);
|
|
|
void PDATA_Set_GBR(void);
|
|
|
void PDATA_Set_BRG(void);
|
|
|
void PDATA_Set_BGR(void);
|
|
|
void PDATA_IDLE_STATE(void);
|
|
|
|
|
|
//**[13h]**//
|
|
|
void HSYNC_Low_Active(void);
|
|
|
void HSYNC_High_Active(void);
|
|
|
void VSYNC_Low_Active(void);
|
|
|
void VSYNC_High_Active(void);
|
|
|
void DE_Low_Active(void);
|
|
|
void DE_High_Active(void);
|
|
|
void Idle_DE_Low(void);
|
|
|
void Idle_DE_High(void);
|
|
|
void Idle_PCLK_Low(void);
|
|
|
void Idle_PCLK_High(void);
|
|
|
void Idle_PDAT_Low(void);
|
|
|
void Idle_PDAT_High(void);
|
|
|
void Idle_HSYNC_Low(void);
|
|
|
void Idle_HSYNC_High(void);
|
|
|
void Idle_VSYNC_Low(void);
|
|
|
void Idle_VSYNC_High(void);
|
|
|
//**[14h][15h][1Ah][1Bh]**//
|
|
|
void LCD_HorizontalWidth_VerticalHeight(uint16_t WX, uint16_t HY);
|
|
|
//**[16h][17h]**//
|
|
|
void LCD_Horizontal_Non_Display(uint16_t WX);
|
|
|
//**[18h]**//
|
|
|
void LCD_HSYNC_Start_Position(uint16_t WX);
|
|
|
//**[19h]**//
|
|
|
void LCD_HSYNC_Pulse_Width(uint16_t WX);
|
|
|
//**[1Ch][1Dh]**//
|
|
|
void LCD_Vertical_Non_Display(uint16_t HY);
|
|
|
//**[1Eh]**//
|
|
|
void LCD_VSYNC_Start_Position(uint16_t HY);
|
|
|
//**[1Fh]**//
|
|
|
void LCD_VSYNC_Pulse_Width(uint16_t HY);
|
|
|
//**[20h][21h][22h][23h]**//
|
|
|
void Main_Image_Start_Address(uint32_t Addr);
|
|
|
//**[24h][25h]**//
|
|
|
void Main_Image_Width(uint16_t WX);
|
|
|
//**[26h][27h][28h][29h]**//
|
|
|
void Main_Window_Start_XY(uint16_t WX, uint16_t HY);
|
|
|
//**[2Ah][2Bh][2Ch][2Dh]**//
|
|
|
void PIP_Display_Start_XY(uint16_t WX, uint16_t HY);
|
|
|
//**[2Eh][2Fh][30h][31h]**//
|
|
|
void PIP_Image_Start_Address(uint32_t Addr);
|
|
|
//**[32h][33h]**//
|
|
|
void PIP_Image_Width(uint16_t WX);
|
|
|
//**[34h][35h][36h][37h]**//
|
|
|
void PIP_Window_Image_Start_XY(uint16_t WX, uint16_t HY);
|
|
|
//**[38h][39h][3Ah][3Bh]**//
|
|
|
void PIP_Window_Width_Height(uint16_t WX, uint16_t HY);
|
|
|
//**[3C]**//
|
|
|
void Enable_Graphic_Cursor(void);
|
|
|
void Disable_Graphic_Cursor(void);
|
|
|
void Select_Graphic_Cursor_1(void);
|
|
|
void Select_Graphic_Cursor_2(void);
|
|
|
void Select_Graphic_Cursor_3(void);
|
|
|
void Select_Graphic_Cursor_4(void);
|
|
|
void Enable_Text_Cursor(void);
|
|
|
void Disable_Text_Cursor(void);
|
|
|
void Enable_Text_Cursor_Blinking(void);
|
|
|
void Disable_Text_Cursor_Blinking(void);
|
|
|
//**[3D]**//
|
|
|
void Blinking_Time_Frames(uint8_t temp);
|
|
|
//**[3E][3Fh]**//
|
|
|
void Text_Cursor_H_V(uint16_t WX, uint16_t HY);
|
|
|
//**[40h][41h][42h][43h]**//
|
|
|
void Graphic_Cursor_XY(uint16_t WX, uint16_t HY);
|
|
|
//**[44]**//
|
|
|
void Set_Graphic_Cursor_Color_1(uint8_t temp);
|
|
|
//**[45]**//
|
|
|
void Set_Graphic_Cursor_Color_2(uint8_t temp);
|
|
|
//**[50h][51h][52h][53h]**//
|
|
|
void Canvas_Image_Start_address(uint32_t Addr);
|
|
|
//**[54h][55h]**//
|
|
|
void Canvas_image_width(uint16_t WX);
|
|
|
//**[56h][57h][58h][59h]**//
|
|
|
void Active_Window_XY(uint16_t WX, uint16_t HY);
|
|
|
//**[5Ah][5Bh][5Ch][5Dh]**//
|
|
|
void Active_Window_WH(uint16_t WX, uint16_t HY);
|
|
|
//**[5E]**//
|
|
|
void Select_Write_Data_Position(void);
|
|
|
void Select_Read_Data_Position(void);
|
|
|
void Memory_XY_Mode(void);
|
|
|
void Memory_Linear_Mode(void);
|
|
|
void Memory_8bpp_Mode(void);
|
|
|
void Memory_16bpp_Mode(void);
|
|
|
void Memory_24bpp_Mode(void);
|
|
|
//**[5Fh][60h][61h][62h]**//
|
|
|
void Goto_Pixel_XY(uint16_t WX, uint16_t HY);
|
|
|
void Goto_Linear_Addr(uint32_t Addr);
|
|
|
//**[63h][64h][65h][66h]**//
|
|
|
void Goto_Text_XY(uint16_t WX, uint16_t HY);
|
|
|
|
|
|
////////////////////////////////////////////////////////////////////////
|
|
|
////**** [ Function : Draw ] ****////
|
|
|
//**[67h]**//
|
|
|
void Start_Line(void);
|
|
|
void Start_Triangle(void);
|
|
|
void Start_Triangle_Fill(void);
|
|
|
//**[68h]~[73h]**//
|
|
|
void Line_Start_XY(uint16_t WX, uint16_t HY);
|
|
|
void Line_End_XY(uint16_t WX, uint16_t HY);
|
|
|
void Triangle_Point1_XY(uint16_t WX, uint16_t HY);
|
|
|
void Triangle_Point2_XY(uint16_t WX, uint16_t HY);
|
|
|
void Triangle_Point3_XY(uint16_t WX, uint16_t HY);
|
|
|
void Square_Start_XY(uint16_t WX, uint16_t HY);
|
|
|
void Square_End_XY(uint16_t WX, uint16_t HY);
|
|
|
//**[76h]**//
|
|
|
void Start_Circle_or_Ellipse(void);
|
|
|
void Start_Circle_or_Ellipse_Fill(void);
|
|
|
void Start_Left_Down_Curve(void);
|
|
|
void Start_Left_Up_Curve(void);
|
|
|
void Start_Right_Up_Curve(void);
|
|
|
void Start_Right_Down_Curve(void);
|
|
|
void Start_Left_Down_Curve_Fill(void);
|
|
|
void Start_Left_Up_Curve_Fill(void);
|
|
|
void Start_Right_Up_Curve_Fill(void);
|
|
|
void Start_Right_Down_Curve_Fill(void);
|
|
|
void Start_Square(void);
|
|
|
void Start_Square_Fill(void);
|
|
|
void Start_Circle_Square(void);
|
|
|
void Start_Circle_Square_Fill(void);
|
|
|
//**[77h]~[7Eh]**//
|
|
|
void Circle_Center_XY(uint16_t WX, uint16_t HY);
|
|
|
void Ellipse_Center_XY(uint16_t WX, uint16_t HY);
|
|
|
void Circle_Radius_R(uint16_t WX);
|
|
|
void Ellipse_Radius_RxRy(uint16_t WX, uint16_t HY);
|
|
|
void Circle_Square_Radius_RxRy(uint16_t WX, uint16_t HY);
|
|
|
|
|
|
////////////////////////////////////////////////////////////////////////
|
|
|
////**** [ Function : PWM ] ****////
|
|
|
//**[84h]**//
|
|
|
void Set_PWM_Prescaler_1_to_256(uint16_t WX);
|
|
|
//**[85h]**//
|
|
|
void Select_PWM1_Clock_Divided_By_1(void);
|
|
|
void Select_PWM1_Clock_Divided_By_2(void);
|
|
|
void Select_PWM1_Clock_Divided_By_4(void);
|
|
|
void Select_PWM1_Clock_Divided_By_8(void);
|
|
|
void Select_PWM0_Clock_Divided_By_1(void);
|
|
|
void Select_PWM0_Clock_Divided_By_2(void);
|
|
|
void Select_PWM0_Clock_Divided_By_4(void);
|
|
|
void Select_PWM0_Clock_Divided_By_8(void);
|
|
|
//[85h].[bit3][bit2]
|
|
|
void Select_PWM1_is_ErrorFlag(void);
|
|
|
void Select_PWM1(void);
|
|
|
void Select_PWM1_is_Osc_Clock(void);
|
|
|
//[85h].[bit1][bit0]
|
|
|
void Select_PWM0_is_GPIO_C7(void);
|
|
|
void Select_PWM0(void);
|
|
|
void Select_PWM0_is_Core_Clock(void);
|
|
|
//**[86h]**//
|
|
|
//[86h]PWM1
|
|
|
void Enable_PWM1_Inverter(void);
|
|
|
void Disable_PWM1_Inverter(void);
|
|
|
void Auto_Reload_PWM1(void);
|
|
|
void One_Shot_PWM1(void);
|
|
|
void Start_PWM1(void);
|
|
|
void Stop_PWM1(void);
|
|
|
//[86h]PWM0
|
|
|
void Enable_PWM0_Dead_Zone(void);
|
|
|
void Disable_PWM0_Dead_Zone(void);
|
|
|
void Enable_PWM0_Inverter(void);
|
|
|
void Disable_PWM0_Inverter(void);
|
|
|
void Auto_Reload_PWM0(void);
|
|
|
void One_Shot_PWM0(void);
|
|
|
void Start_PWM0(void);
|
|
|
void Stop_PWM0(void);
|
|
|
//**[87h]**//
|
|
|
void Set_Timer0_Dead_Zone_Length(uint8_t temp);
|
|
|
//**[88h][89h]**//
|
|
|
void Set_Timer0_Compare_Buffer(uint16_t WX);
|
|
|
//**[8Ah][8Bh]**//
|
|
|
void Set_Timer0_Count_Buffer(uint16_t WX);
|
|
|
//**[8Ch][8Dh]**//
|
|
|
void Set_Timer1_Compare_Buffer(uint16_t WX);
|
|
|
//**[8Eh][8Fh]**//
|
|
|
void Set_Timer1_Count_Buffer(uint16_t WX);
|
|
|
|
|
|
////////////////////////////////////////////////////////////////////////
|
|
|
////**** [ Function : BTE ] ****////
|
|
|
//**[90h]**//
|
|
|
|
|
|
//[90h]=========================================================================
|
|
|
void BTE_Enable(void);
|
|
|
void BTE_Disable(void);
|
|
|
|
|
|
void Check_BTE_Busy(void);
|
|
|
|
|
|
void Pattern_Format_8X8(void);
|
|
|
void Pattern_Format_16X16(void);
|
|
|
|
|
|
//[91h]=========================================================================
|
|
|
void BTE_ROP_Code(uint8_t setx);
|
|
|
void BTE_Operation_Code(uint8_t setx);
|
|
|
|
|
|
//[92h]=========================================================================
|
|
|
void BTE_S0_Color_8bpp(void);
|
|
|
void BTE_S0_Color_16bpp(void);
|
|
|
void BTE_S0_Color_24bpp(void);
|
|
|
|
|
|
void BTE_S1_Color_8bpp(void);
|
|
|
void BTE_S1_Color_16bpp(void);
|
|
|
void BTE_S1_Color_24bpp(void);
|
|
|
void BTE_S1_Color_Constant(void);
|
|
|
void BTE_S1_Color_8bit_Alpha(void);
|
|
|
void BTE_S1_Color_16bit_Alpha(void);
|
|
|
|
|
|
void BTE_Destination_Color_8bpp(void);
|
|
|
void BTE_Destination_Color_16bpp(void);
|
|
|
void BTE_Destination_Color_24bpp(void);
|
|
|
|
|
|
//[93h][94h][95h][96h]=========================================================================
|
|
|
void BTE_S0_Memory_Start_Address(uint32_t Addr);
|
|
|
|
|
|
//[97h][98h]=========================================================================
|
|
|
void BTE_S0_Image_Width(uint16_t WX);
|
|
|
|
|
|
//[99h][9Ah][9Bh][9Ch]=========================================================================
|
|
|
void BTE_S0_Window_Start_XY(uint16_t WX, uint16_t HY);
|
|
|
|
|
|
//[9Dh][9Eh][9Fh][A0h]=========================================================================
|
|
|
void BTE_S1_Memory_Start_Address(uint32_t Addr);
|
|
|
void S1_Constant_color_256(uint8_t temp);
|
|
|
void S1_Constant_color_65k(uint16_t temp);
|
|
|
void S1_Constant_color_16M(uint32_t temp);
|
|
|
|
|
|
//[A1h][A2h]=========================================================================
|
|
|
void BTE_S1_Image_Width(uint16_t WX);
|
|
|
|
|
|
//[A3h][A4h][A5h][A6h]=========================================================================
|
|
|
void BTE_S1_Window_Start_XY(uint16_t WX, uint16_t HY);
|
|
|
|
|
|
//[A7h][A8h][A9h][AAh]=========================================================================
|
|
|
void BTE_Destination_Memory_Start_Address(uint32_t Addr);
|
|
|
|
|
|
//[ABh][ACh]=========================================================================
|
|
|
void BTE_Destination_Image_Width(uint16_t WX);
|
|
|
|
|
|
//[ADh][AEh][AFh][B0h]=========================================================================
|
|
|
void BTE_Destination_Window_Start_XY(uint16_t WX, uint16_t HY);
|
|
|
|
|
|
//[B1h][B2h][B3h][B4h]=========================================================================
|
|
|
void BTE_Window_Size(uint16_t WX, uint16_t WY);
|
|
|
|
|
|
//[B5h]=========================================================================
|
|
|
void BTE_Alpha_Blending_Effect(uint8_t temp);
|
|
|
|
|
|
//**[B5h]**//
|
|
|
|
|
|
////////////////////////////////////////////////////////////////////////
|
|
|
////**** [ Function : Serial Flash ] ****////
|
|
|
|
|
|
// REG[B6h] Serial flash DMA Controller REG (DMA_CTRL)
|
|
|
void Start_SFI_DMA(void);
|
|
|
void Check_Busy_SFI_DMA(void);
|
|
|
|
|
|
// REG[B7h] Serial Flash/ROM Controller Register (SFL_CTRL)
|
|
|
void Select_SFI_0(void);
|
|
|
void Select_SFI_1(void);
|
|
|
void Select_SFI_Font_Mode(void);
|
|
|
void Select_SFI_DMA_Mode(void);
|
|
|
void Select_SFI_24bit_Address(void);
|
|
|
void Select_SFI_32bit_Address(void);
|
|
|
void Select_SFI_Waveform_Mode_0(void);
|
|
|
void Select_SFI_Waveform_Mode_3(void);
|
|
|
void Select_SFI_0_DummyRead(void);
|
|
|
void Select_SFI_8_DummyRead(void);
|
|
|
void Select_SFI_16_DummyRead(void);
|
|
|
void Select_SFI_24_DummyRead(void);
|
|
|
void Select_SFI_Single_Mode(void);
|
|
|
void Select_SFI_Dual_Mode0(void);
|
|
|
void Select_SFI_Dual_Mode1(void);
|
|
|
|
|
|
// REG[B8h] SPI master Tx /Rx FIFO Data Register (SPIDR)
|
|
|
uint8_t SPI_Master_FIFO_Data_Put(uint8_t Data);
|
|
|
uint8_t SPI_Master_FIFO_Data_Get(void);
|
|
|
|
|
|
// REG[B9h] SPI master Control Register (SPIMCR2)
|
|
|
void Mask_SPI_Master_Interrupt_Flag(void);
|
|
|
void Select_nSS_drive_on_xnsfcs0(void);
|
|
|
void Select_nSS_drive_on_xnsfcs1(void);
|
|
|
void nSS_Inactive(void);
|
|
|
void nSS_Active(void);
|
|
|
void OVFIRQEN_Enable(void);
|
|
|
void EMTIRQEN_Enable(void);
|
|
|
void Reset_CPOL(void);
|
|
|
void Set_CPOL(void);
|
|
|
void Reset_CPHA(void);
|
|
|
void Set_CPHA(void);
|
|
|
|
|
|
// REG[BAh] SPI master Status Register (SPIMSR)
|
|
|
uint8_t Tx_FIFO_Empty_Flag(void);
|
|
|
uint8_t Tx_FIFO_Full_Flag(void);
|
|
|
uint8_t Rx_FIFO_Empty_Flag(void);
|
|
|
uint8_t Rx_FIFO_full_flag(void);
|
|
|
uint8_t OVFI_Flag(void);
|
|
|
void Clear_OVFI_Flag(void);
|
|
|
uint8_t EMTI_Flag(void);
|
|
|
void Clear_EMTI_Flag(void);
|
|
|
|
|
|
// REG[BB] SPI Clock period (SPIDIV)
|
|
|
void SPI_Clock_Period(uint8_t temp);
|
|
|
|
|
|
//**[BCh][BDh][BEh][BFh]**//
|
|
|
void SFI_DMA_Source_Start_Address(uint32_t Addr);
|
|
|
//**[C0h][C1h][C2h][C3h]**//
|
|
|
void SFI_DMA_Destination_Start_Address(uint32_t Addr);
|
|
|
void SFI_DMA_Destination_Upper_Left_Corner(uint16_t WX, uint16_t HY);
|
|
|
//**[C4h][C5h]**//
|
|
|
void SFI_DMA_Destination_Width(uint16_t WX);
|
|
|
//**[C6h][C7h][C8h][C9h]**//
|
|
|
void SFI_DMA_Transfer_Number(uint32_t Addr);
|
|
|
void SFI_DMA_Transfer_Width_Height(uint16_t WX, uint16_t HY);
|
|
|
//**[CAh][CBh]**//
|
|
|
void SFI_DMA_Source_Width(uint16_t WX);
|
|
|
|
|
|
////////////////////////////////////////////////////////////////////////
|
|
|
////**** [ Function : Font ] ****////
|
|
|
//**[CCh]**//
|
|
|
|
|
|
void Font_Select_UserDefine_Mode(void);
|
|
|
void CGROM_Select_Internal_CGROM(void);
|
|
|
void CGROM_Select_Genitop_FontROM(void);
|
|
|
void Font_Select_8x16_16x16(void);
|
|
|
void Font_Select_12x24_24x24(void);
|
|
|
void Font_Select_16x32_32x32(void);
|
|
|
void Internal_CGROM_Select_ISOIEC8859_1(void);
|
|
|
void Internal_CGROM_Select_ISOIEC8859_2(void);
|
|
|
void Internal_CGROM_Select_ISOIEC8859_3(void);
|
|
|
void Internal_CGROM_Select_ISOIEC8859_4(void);
|
|
|
//**[CDh]**//
|
|
|
void Enable_Font_Alignment(void);
|
|
|
void Disable_Font_Alignment(void);
|
|
|
void Font_Background_select_Transparency(void);
|
|
|
void Font_Background_select_Color(void);
|
|
|
void Font_0_degree(void);
|
|
|
void Font_90_degree(void);
|
|
|
void Font_Width_X1(void);
|
|
|
void Font_Width_X2(void);
|
|
|
void Font_Width_X3(void);
|
|
|
void Font_Width_X4(void);
|
|
|
void Font_Height_X1(void);
|
|
|
void Font_Height_X2(void);
|
|
|
void Font_Height_X3(void);
|
|
|
void Font_Height_X4(void);
|
|
|
//**[CEh]**//
|
|
|
void GTFont_Select_GT21L16TW_GT21H16T1W(void);
|
|
|
void GTFont_Select_GT23L16U2W(void);
|
|
|
void GTFont_Select_GT23L24T3Y_GT23H24T3Y(void);
|
|
|
void GTFont_Select_GT23L24M1Z(void);
|
|
|
void GTFont_Select_GT23L32S4W_GT23H32S4W(void);
|
|
|
void GTFont_Select_GT20L24F6Y(void);
|
|
|
void GTFont_Select_GT21L24S1W(void);
|
|
|
void GTFont_Select_GT22L16A1Y(void);
|
|
|
//**[CFh]**//
|
|
|
void Set_GTFont_Decoder(uint8_t temp);
|
|
|
//**[D0h]**//
|
|
|
void Font_Line_Distance(uint8_t temp);
|
|
|
//**[D1h]**//
|
|
|
void Set_Font_to_Font_Width(uint8_t temp);
|
|
|
//**[D2h]~[D4h]**//
|
|
|
void Foreground_RGB(uint8_t RED, uint8_t GREEN, uint8_t BLUE);
|
|
|
void Foreground_color_256(uint8_t temp);
|
|
|
void Foreground_color_65k(uint16_t temp);
|
|
|
void Foreground_color_16M(uint32_t temp);
|
|
|
//**[D5h]~[D7h]**//
|
|
|
void Background_RGB(uint8_t RED, uint8_t GREEN, uint8_t BLUE);
|
|
|
void Background_color_256(uint8_t temp);
|
|
|
void Background_color_65k(uint16_t temp);
|
|
|
void Background_color_16M(uint32_t temp);
|
|
|
//**[DBh]~[DEh]**//
|
|
|
void CGRAM_Start_address(uint32_t Addr);
|
|
|
//**[DFh]**//
|
|
|
void Power_Normal_Mode(void);
|
|
|
void Power_Saving_Standby_Mode(void);
|
|
|
void Power_Saving_Suspend_Mode(void);
|
|
|
void Power_Saving_Sleep_Mode(void);
|
|
|
|
|
|
////////////////////////////////////////////////////////////////////////
|
|
|
////**** [ Function : SDRAM ] ****////
|
|
|
//**[E0h]~[E4h]**//
|
|
|
// LT768_Select_SDRAM();
|
|
|
|
|
|
////////////////////////////////////////////////////////////////////////
|
|
|
////**** [ Function : I2C ] ****////
|
|
|
//**[E5h]~[EAh]**//
|
|
|
void LT768_I2CM_Clock_Prescale(uint16_t WX);
|
|
|
//**[E7h]**//
|
|
|
void LT768_I2CM_Transmit_Data(uint8_t temp);
|
|
|
//**[E8h]**//
|
|
|
uint8_t LT768_I2CM_Receiver_Data(void);
|
|
|
//**[E9h]**//
|
|
|
|
|
|
void LT768_I2CM_Read_With_Ack(void);
|
|
|
void LT768_I2CM_Read_With_Nack(void);
|
|
|
void LT768_I2CM_Write_With_Start(void);
|
|
|
void LT768_I2CM_Write(void);
|
|
|
void LT768_I2CM_Stop(void);
|
|
|
|
|
|
//**[EAh]**//
|
|
|
uint8_t LT768_I2CM_Check_Slave_ACK(void);
|
|
|
uint8_t LT768_I2CM_Bus_Busy(void);
|
|
|
uint8_t LT768_I2CM_transmit_Progress(void);
|
|
|
uint8_t LT768_I2CM_Arbitration(void);
|
|
|
|
|
|
////////////////////////////////////////////////////////////////////////
|
|
|
////**** [ Function : GPIO ] ****////
|
|
|
//[F0h][F1h]
|
|
|
void Set_GPIO_A_In_Out(uint8_t temp);
|
|
|
void Write_GPIO_A_7_0(uint8_t temp);
|
|
|
uint8_t Read_GPIO_A_7_0(void);
|
|
|
//[F2h]
|
|
|
void Write_GPIO_B_7_4(uint8_t temp);
|
|
|
uint8_t Read_GPIO_B_7_0(void);
|
|
|
//[F3h][F4h]
|
|
|
void Set_GPIO_C_In_Out(uint8_t temp);
|
|
|
void Write_GPIO_C_7_0(uint8_t temp);
|
|
|
uint8_t Read_GPIO_C_7_0(void);
|
|
|
//[F5h][F6h]
|
|
|
void Set_GPIO_D_In_Out(uint8_t temp);
|
|
|
void Write_GPIO_D_7_0(uint8_t temp);
|
|
|
uint8_t Read_GPIO_D_7_0(void);
|
|
|
//[F7h][F8h]
|
|
|
void Set_GPIO_E_In_Out(uint8_t temp);
|
|
|
void Write_GPIO_E_7_0(uint8_t temp);
|
|
|
uint8_t Read_GPIO_E_7_0(void);
|
|
|
//[F9h][FAh]
|
|
|
void Set_GPIO_F_In_Out(uint8_t temp);
|
|
|
void Write_GPIO_F_7_0(uint8_t temp);
|
|
|
uint8_t Read_GPIO_F_7_0(void);
|
|
|
|
|
|
////////////////////////////////////////////////////////////////////////
|
|
|
////**** [ Function : Key ] ****////
|
|
|
//**[FBh]~[FFh]**//
|
|
|
//[FBh]
|
|
|
void Long_Key_enable(void);
|
|
|
void Key_Scan_Freg(uint8_t temp); // set bit2~0
|
|
|
|
|
|
//[FCh]
|
|
|
void Key_Scan_Wakeup_Function_Enable(void);
|
|
|
void Long_Key_Timing_Adjustment(uint8_t setx); // set bit5~3
|
|
|
uint8_t Numbers_of_Key_Hit(void);
|
|
|
|
|
|
//[FDh][FEh][FFh]
|
|
|
uint8_t Read_Key_Strobe_Data_0(void);
|
|
|
uint8_t Read_Key_Strobe_Data_1(void);
|
|
|
uint8_t Read_Key_Strobe_Data_2(void);
|
|
|
|
|
|
void Show_String(char *str);
|
|
|
void Show_picture(uint32_t numbers, const uint16_t *data);
|
|
|
|
|
|
void PWM0_ON(void); // Open PWM0
|
|
|
|
|
|
void LT768_HW_Reset(void);
|
|
|
void System_Check_Temp(void);
|
|
|
void Enable_SPI_Flash_DMA(uint8_t val);
|
|
|
|
|
|
#endif
|