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