ﻫﻫ#include "LCD.h"
#include "" ﻫ
//定义驱动IC是ILI9320还是ILI9325 ﻫ#define ILI9325 //ILI9325 ﻫﻫ//屏幕旋转定义 数字按照 ID[1:0]AM 按照PDF中的配置定义
#define ID_AM 110
void Wr_LCD_Data(u16 Data); ﻫvoid Wr_LCD_Reg(u16 Reg_Addr,u16 Data); ﻫvoid Lcd_SetCursor(u8 x,u16 y); ﻫvoid Lcd_Clear(u16 Color); ﻫvoid LCD_ExitSleep_ILI9325(void); ﻫﻫstatic void LCD_Delay(u32 Delay_Time)
{ ﻫwhile(Delay_Time>0) ﻫ{
Delay_Time--; ﻫ}
} ﻫ
void Wr_LCD_Reg(u16 Reg_Addr,u16 Data) ﻫ{ ﻫ FSMC_SRAM_WriteBuffer(&Reg_Addr, 0x00000000, 1); ﻫ FSMC_SRAM_WriteBuffer(&Data, 0x00000001, 1); ﻫ} ﻫﻫvoid Wr_LCD_Data(u16 Data)
{
FSMC_SRAM_WriteBuffer(&Data, 0x00000001, 1);
}
ﻫint LCD_Init(void) ﻫ{ ﻫ int i; ﻫ// 测试16根数据线 ﻫ/* ﻫwhile(1) ﻫ { ﻫ Wr_LCD_Data(0xffff);
LCD_Delay(100);
Wr_LCD_Data(0x0000); ﻫ } ﻫ */ ﻫGPIO_SetBits(GPIOG,GPIO_Pin_4); ﻫLCD_Delay(1000); ﻫGPIO_ResetBits(GPIOG,GPIO_Pin_4); ﻫLCD_Delay(40000); ﻫGPIO_SetBits(GPIOG,GPIO_Pin_4); ﻫLCD_Delay(1000); //LCD Reset. ﻫﻫﻫ //Start Initial Sequence// ﻫ Wr_LCD_Reg(0x00E3, 0x3008); // Set internal timing ﻫ Wr_LCD_Reg(0x00E7, 0x0012); // Set internal timing
Wr_LCD_Reg(0x00EF, 0x1231); // Set internal timing ﻫ Wr_LCD_Reg(0x0001, 0x0100); // set SS and SM bit ﻫ Wr_LCD_Reg(0x0002, 0x0700); // set 1 line
stm32驱动ILI9325 来自淘豆网m.daumloan.com转载请标明出处.