Nevar pievienot vairāk kā 25 tēmas Tēmai ir jāsākas ar burtu vai ciparu, tā var saturēt domu zīmes ('-') un var būt līdz 35 simboliem gara.
 
 
 
 
 
 

679 rindas
21 KiB

/*******************************************************************************
 * 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