| 本帖最后由 iamusb 于 2015-4-5 18:08 编辑 
 公布24脚2.4彩屏资料,此屏大约销售四百多片出去了
 
 经过高手一天的时间,全部搞定,成功驱动
 
 现公布所有资料
 
 欢迎手上有屏的坛友,进一步完善资料,让大家玩得开心
 
 第一部分:
 
 font.h
 
 #ifndef __FONT_H
 #define __FONT_H
 #define u16 unsigned int
 #define u8 unsigned char
 
 u8 const asc2_1608[1520]={
 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
 0x00,0x00,0x00,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x00,0x00,0x18,0x18,0x00,0x00,
 0x00,0x48,0x6C,0x24,0x12,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
 0x00,0x00,0x00,0x24,0x24,0x24,0x7F,0x12,0x12,0x12,0x7F,0x12,0x12,0x12,0x00,0x00,
 0x00,0x00,0x08,0x1C,0x2A,0x2A,0x0A,0x0C,0x18,0x28,0x28,0x2A,0x2A,0x1C,0x08,0x08,
 0x00,0x00,0x00,0x22,0x25,0x15,0x15,0x15,0x2A,0x58,0x54,0x54,0x54,0x22,0x00,0x00,
 0x00,0x00,0x00,0x0C,0x12,0x12,0x12,0x0A,0x76,0x25,0x29,0x11,0x91,0x6E,0x00,0x00,
 0x00,0x06,0x06,0x04,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
 0x00,0x40,0x20,0x10,0x10,0x08,0x08,0x08,0x08,0x08,0x08,0x10,0x10,0x20,0x40,0x00,
 0x00,0x02,0x04,0x08,0x08,0x10,0x10,0x10,0x10,0x10,0x10,0x08,0x08,0x04,0x02,0x00,
 0x00,0x00,0x00,0x00,0x08,0x08,0x6B,0x1C,0x1C,0x6B,0x08,0x08,0x00,0x00,0x00,0x00,
 0x00,0x00,0x00,0x00,0x08,0x08,0x08,0x08,0x7F,0x08,0x08,0x08,0x08,0x00,0x00,0x00,
 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x06,0x06,0x04,0x03,
 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFE,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x06,0x06,0x00,0x00,
 0x00,0x00,0x80,0x40,0x40,0x20,0x20,0x10,0x10,0x08,0x08,0x04,0x04,0x02,0x02,0x00,
 0x00,0x00,0x00,0x18,0x24,0x42,0x42,0x42,0x42,0x42,0x42,0x42,0x24,0x18,0x00,0x00,
 0x00,0x00,0x00,0x08,0x0E,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x3E,0x00,0x00,
 0x00,0x00,0x00,0x3C,0x42,0x42,0x42,0x20,0x20,0x10,0x08,0x04,0x42,0x7E,0x00,0x00,
 0x00,0x00,0x00,0x3C,0x42,0x42,0x20,0x18,0x20,0x40,0x40,0x42,0x22,0x1C,0x00,0x00,
 0x00,0x00,0x00,0x20,0x30,0x28,0x24,0x24,0x22,0x22,0x7E,0x20,0x20,0x78,0x00,0x00,
 0x00,0x00,0x00,0x7E,0x02,0x02,0x02,0x1A,0x26,0x40,0x40,0x42,0x22,0x1C,0x00,0x00,
 0x00,0x00,0x00,0x38,0x24,0x02,0x02,0x1A,0x26,0x42,0x42,0x42,0x24,0x18,0x00,0x00,
 0x00,0x00,0x00,0x7E,0x22,0x22,0x10,0x10,0x08,0x08,0x08,0x08,0x08,0x08,0x00,0x00,
 0x00,0x00,0x00,0x3C,0x42,0x42,0x42,0x24,0x18,0x24,0x42,0x42,0x42,0x3C,0x00,0x00,
 0x00,0x00,0x00,0x18,0x24,0x42,0x42,0x42,0x64,0x58,0x40,0x40,0x24,0x1C,0x00,0x00,
 0x00,0x00,0x00,0x00,0x00,0x00,0x18,0x18,0x00,0x00,0x00,0x00,0x18,0x18,0x00,0x00,
 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x08,0x00,0x00,0x00,0x00,0x00,0x08,0x08,0x04,
 0x00,0x00,0x00,0x40,0x20,0x10,0x08,0x04,0x02,0x04,0x08,0x10,0x20,0x40,0x00,0x00,
 0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0x00,0x00,0x00,0x7F,0x00,0x00,0x00,0x00,0x00,
 0x00,0x00,0x00,0x02,0x04,0x08,0x10,0x20,0x40,0x20,0x10,0x08,0x04,0x02,0x00,0x00,
 0x00,0x00,0x00,0x3C,0x42,0x42,0x46,0x40,0x20,0x10,0x10,0x00,0x18,0x18,0x00,0x00,
 0x00,0x00,0x00,0x1C,0x22,0x5A,0x55,0x55,0x55,0x55,0x2D,0x42,0x22,0x1C,0x00,0x00,
 0x00,0x00,0x00,0x08,0x08,0x18,0x14,0x14,0x24,0x3C,0x22,0x42,0x42,0xE7,0x00,0x00,
 0x00,0x00,0x00,0x1F,0x22,0x22,0x22,0x1E,0x22,0x42,0x42,0x42,0x22,0x1F,0x00,0x00,
 0x00,0x00,0x00,0x7C,0x42,0x42,0x01,0x01,0x01,0x01,0x01,0x42,0x22,0x1C,0x00,0x00,
 0x00,0x00,0x00,0x1F,0x22,0x42,0x42,0x42,0x42,0x42,0x42,0x42,0x22,0x1F,0x00,0x00,
 0x00,0x00,0x00,0x3F,0x42,0x12,0x12,0x1E,0x12,0x12,0x02,0x42,0x42,0x3F,0x00,0x00,
 0x00,0x00,0x00,0x3F,0x42,0x12,0x12,0x1E,0x12,0x12,0x02,0x02,0x02,0x07,0x00,0x00,
 0x00,0x00,0x00,0x3C,0x22,0x22,0x01,0x01,0x01,0x71,0x21,0x22,0x22,0x1C,0x00,0x00,
 0x00,0x00,0x00,0xE7,0x42,0x42,0x42,0x42,0x7E,0x42,0x42,0x42,0x42,0xE7,0x00,0x00,
 0x00,0x00,0x00,0x3E,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x3E,0x00,0x00,
 0x00,0x00,0x00,0x7C,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x11,0x0F,
 0x00,0x00,0x00,0x77,0x22,0x12,0x0A,0x0E,0x0A,0x12,0x12,0x22,0x22,0x77,0x00,0x00,
 0x00,0x00,0x00,0x07,0x02,0x02,0x02,0x02,0x02,0x02,0x02,0x02,0x42,0x7F,0x00,0x00,
 0x00,0x00,0x00,0x77,0x36,0x36,0x36,0x36,0x2A,0x2A,0x2A,0x2A,0x2A,0x6B,0x00,0x00,
 0x00,0x00,0x00,0xE3,0x46,0x46,0x4A,0x4A,0x52,0x52,0x52,0x62,0x62,0x47,0x00,0x00,
 0x00,0x00,0x00,0x1C,0x22,0x41,0x41,0x41,0x41,0x41,0x41,0x41,0x22,0x1C,0x00,0x00,
 0x00,0x00,0x00,0x3F,0x42,0x42,0x42,0x42,0x3E,0x02,0x02,0x02,0x02,0x07,0x00,0x00,
 0x00,0x00,0x00,0x1C,0x22,0x41,0x41,0x41,0x41,0x41,0x4D,0x53,0x32,0x1C,0x60,0x00,
 0x00,0x00,0x00,0x3F,0x42,0x42,0x42,0x3E,0x12,0x12,0x22,0x22,0x42,0xC7,0x00,0x00,
 0x00,0x00,0x00,0x7C,0x42,0x42,0x02,0x04,0x18,0x20,0x40,0x42,0x42,0x3E,0x00,0x00,
 0x00,0x00,0x00,0x7F,0x49,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x1C,0x00,0x00,
 0x00,0x00,0x00,0xE7,0x42,0x42,0x42,0x42,0x42,0x42,0x42,0x42,0x42,0x3C,0x00,0x00,
 0x00,0x00,0x00,0xE7,0x42,0x42,0x22,0x24,0x24,0x14,0x14,0x18,0x08,0x08,0x00,0x00,
 0x00,0x00,0x00,0x6B,0x49,0x49,0x49,0x49,0x55,0x55,0x36,0x22,0x22,0x22,0x00,0x00,
 0x00,0x00,0x00,0xE7,0x42,0x24,0x24,0x18,0x18,0x18,0x24,0x24,0x42,0xE7,0x00,0x00,
 0x00,0x00,0x00,0x77,0x22,0x22,0x14,0x14,0x08,0x08,0x08,0x08,0x08,0x1C,0x00,0x00,
 0x00,0x00,0x00,0x7E,0x21,0x20,0x10,0x10,0x08,0x04,0x04,0x42,0x42,0x3F,0x00,0x00,
 0x00,0x78,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x78,0x00,
 0x00,0x00,0x02,0x02,0x04,0x04,0x08,0x08,0x08,0x10,0x10,0x20,0x20,0x20,0x40,0x40,
 0x00,0x1E,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x1E,0x00,
 0x00,0x38,0x44,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,
 0x00,0x06,0x08,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3C,0x42,0x78,0x44,0x42,0x42,0xFC,0x00,0x00,
 0x00,0x00,0x00,0x03,0x02,0x02,0x02,0x1A,0x26,0x42,0x42,0x42,0x26,0x1A,0x00,0x00,
 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x38,0x44,0x02,0x02,0x02,0x44,0x38,0x00,0x00,
 0x00,0x00,0x00,0x60,0x40,0x40,0x40,0x78,0x44,0x42,0x42,0x42,0x64,0xD8,0x00,0x00,
 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3C,0x42,0x7E,0x02,0x02,0x42,0x3C,0x00,0x00,
 0x00,0x00,0x00,0xF0,0x88,0x08,0x08,0x7E,0x08,0x08,0x08,0x08,0x08,0x3E,0x00,0x00,
 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7C,0x22,0x22,0x1C,0x02,0x3C,0x42,0x42,0x3C,
 0x00,0x00,0x00,0x03,0x02,0x02,0x02,0x3A,0x46,0x42,0x42,0x42,0x42,0xE7,0x00,0x00,
 0x00,0x00,0x00,0x0C,0x0C,0x00,0x00,0x0E,0x08,0x08,0x08,0x08,0x08,0x3E,0x00,0x00,
 0x00,0x00,0x00,0x30,0x30,0x00,0x00,0x38,0x20,0x20,0x20,0x20,0x20,0x20,0x22,0x1E,
 0x00,0x00,0x00,0x03,0x02,0x02,0x02,0x72,0x12,0x0A,0x16,0x12,0x22,0x77,0x00,0x00,
 0x00,0x00,0x00,0x0E,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x08,0x3E,0x00,0x00,
 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0x92,0x92,0x92,0x92,0x92,0xB7,0x00,0x00,
 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3B,0x46,0x42,0x42,0x42,0x42,0xE7,0x00,0x00,
 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3C,0x42,0x42,0x42,0x42,0x42,0x3C,0x00,0x00,
 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1B,0x26,0x42,0x42,0x42,0x22,0x1E,0x02,0x07,
 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x78,0x44,0x42,0x42,0x42,0x44,0x78,0x40,0xE0,
 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x77,0x4C,0x04,0x04,0x04,0x04,0x1F,0x00,0x00,
 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7C,0x42,0x02,0x3C,0x40,0x42,0x3E,0x00,0x00,
 0x00,0x00,0x00,0x00,0x00,0x08,0x08,0x3E,0x08,0x08,0x08,0x08,0x08,0x30,0x00,0x00,
 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x63,0x42,0x42,0x42,0x42,0x62,0xDC,0x00,0x00,
 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xE7,0x42,0x24,0x24,0x14,0x08,0x08,0x00,0x00,
 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xEB,0x49,0x49,0x55,0x55,0x22,0x22,0x00,0x00,
 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x76,0x24,0x18,0x18,0x18,0x24,0x6E,0x00,0x00,
 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xE7,0x42,0x24,0x24,0x14,0x18,0x08,0x08,0x07,
 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7E,0x22,0x10,0x08,0x08,0x44,0x7E,0x00,0x00,
 0x00,0xC0,0x20,0x20,0x20,0x20,0x20,0x10,0x20,0x20,0x20,0x20,0x20,0x20,0xC0,0x00,
 0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10,
 0x00,0x06,0x08,0x08,0x08,0x08,0x08,0x10,0x08,0x08,0x08,0x08,0x08,0x08,0x06,0x00,
 0x0C,0x32,0xC2,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
 };
 #endif
 
 
 
 第二部分:
 main.c
 #include "io430x13x.h"
 #include "font.h"
 
 //程序默认IO连接方式:
 #define LCD_CS     P4OUT_bit.P5   //片选
 #define LCD_REST   P4OUT_bit.P4          //复位
 #define LCD_DC     P4OUT_bit.P3          //数据/命令切换
 #define LCD_WR     P4OUT_bit.P2          //写时钟
 #define LCD_RD     P4OUT_bit.P1          //读时钟
 #define LCD_DATA   P3OUT          //数据
 
 //定义LCD的尺寸
 #define LCD_W 240
 #define LCD_H 320
 
 #define u32 unsigned long
 #define u16 unsigned int
 #define u8 unsigned char
 
 //画笔颜色
 #define WHITE                  0xFFFF
 #define BLACK                  0x0000
 #define BLUE                  0x001F
 #define BRED             0XF81F
 #define GRED                          0XFFE0
 #define GBLUE                         0X07FF
 #define RED                    0xF800
 #define MAGENTA                0xF81F
 #define GREEN                  0x07E0
 #define CYAN                   0x7FFF
 #define YELLOW                 0xFFE0
 #define BROWN                          0XBC40 //棕色
 #define BRRED                          0XFC07 //棕红色
 #define GRAY                           0X8430 //灰色
 //GUI颜色
 
 #define DARKBLUE               0X01CF        //深蓝色
 #define LIGHTBLUE               0X7D7C        //浅蓝色
 #define GRAYBLUE                0X5458 //灰蓝色
 //以上三色为PANEL的颜色
 
 #define LIGHTGREEN              0X841F //浅绿色
 #define LGRAY                          0XC618 //浅灰色(PANNEL),窗体背景色
 
 #define LGRAYBLUE        0XA651 //浅灰蓝色(中间层颜色)
 #define LBBLUE           0X2B12 //浅棕蓝色(选择条目的反色)
 
 u8 const string1[]={"0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ~!@#$%^&*()_+-=[]{}|;:'<,>.?/"};
 
 u16 BACK_COLOR, POINT_COLOR;   //背景色,画笔色
 
 
 void delayms(unsigned int a)
 {
 unsigned int i;
 while (--a!=0)
 for(i=4;i>0;i--);
 }
 
 void LCD_WR_DATA8(u8 da) //发送数据-8位参数
 {
 LCD_DC=1;
 LCD_DATA = da;
 LCD_WR=0;
 LCD_WR=1;
 }
 void LCD_WR_DATA(u16 da)
 {
 LCD_DC=1;
 LCD_DATA = da;
 LCD_WR=0;
 LCD_WR=1;
 LCD_DATA = da>>8;
 LCD_WR=0;
 LCD_WR=1;
 }
 void LCD_WR_REG(u8 da)
 {
 LCD_DC=0;
 LCD_DATA = da;
 LCD_WR=0;
 LCD_WR=1;
 }
 void LCD_WR_REG_DATA(u8 reg,u16 da)
 {
 LCD_WR_REG(reg);
 LCD_WR_DATA(da);
 }
 void Address_set(unsigned int x1,unsigned int y1,unsigned int x2,unsigned int y2)
 {
 LCD_WR_REG(0x2a);
 LCD_WR_DATA8(x1>>8);
 LCD_WR_DATA8(x1);
 LCD_WR_DATA8(x2>>8);
 LCD_WR_DATA8(x2);
 
 LCD_WR_REG(0x2b);
 LCD_WR_DATA8(y1>>8);
 LCD_WR_DATA8(y1);
 LCD_WR_DATA8(y2>>8);
 LCD_WR_DATA8(y2);
 
 LCD_WR_REG(0x2C);
 
 }
 void Lcd_Init(void)
 {
 
 LCD_REST=0;
 delayms(20);
 LCD_REST=1;
 delayms(200);
 LCD_CS =0;  //打开片选使能
 
 LCD_WR_REG(0xCB);
 LCD_WR_DATA8(0x39);
 LCD_WR_DATA8(0x2C);
 LCD_WR_DATA8(0x00);
 LCD_WR_DATA8(0x34);
 LCD_WR_DATA8(0x02);
 
 LCD_WR_REG(0xCF);
 LCD_WR_DATA8(0x00);
 LCD_WR_DATA8(0XC1);
 LCD_WR_DATA8(0X30);
 
 LCD_WR_REG(0xE8);
 LCD_WR_DATA8(0x85);
 LCD_WR_DATA8(0x00);
 LCD_WR_DATA8(0x78);
 
 LCD_WR_REG(0xEA);
 LCD_WR_DATA8(0x00);
 LCD_WR_DATA8(0x00);
 
 LCD_WR_REG(0xED);
 LCD_WR_DATA8(0x64);
 LCD_WR_DATA8(0x03);
 LCD_WR_DATA8(0X12);
 LCD_WR_DATA8(0X81);
 
 LCD_WR_REG(0xF7);
 LCD_WR_DATA8(0x20);
 
 LCD_WR_REG(0xC0);    //Power control
 LCD_WR_DATA8(0x23);   //VRH[5:0]
 
 LCD_WR_REG(0xC1);    //Power control
 LCD_WR_DATA8(0x10);   //SAP[2:0];BT[3:0]
 
 LCD_WR_REG(0xC5);    //VCM control
 LCD_WR_DATA8(0x3e); //对比度调节
 LCD_WR_DATA8(0x28);
 
 LCD_WR_REG(0xC7);    //VCM control2
 LCD_WR_DATA8(0x86);  //--
 
 LCD_WR_REG(0x36);    // Memory Access Control
 LCD_WR_DATA8(0x48); //           //48 68竖屏//28 E8 横屏
 
 LCD_WR_REG(0x3A);
 LCD_WR_DATA8(0x55);
 
 LCD_WR_REG(0xB1);
 LCD_WR_DATA8(0x00);
 LCD_WR_DATA8(0x18);
 
 LCD_WR_REG(0xB6);    // Display Function Control
 LCD_WR_DATA8(0x08);
 LCD_WR_DATA8(0x82);
 LCD_WR_DATA8(0x27);
 
 LCD_WR_REG(0xF2);    // 3Gamma Function Disable
 LCD_WR_DATA8(0x00);
 
 LCD_WR_REG(0x26);    //Gamma curve selected
 LCD_WR_DATA8(0x01);
 
 LCD_WR_REG(0xE0);    //Set Gamma
 LCD_WR_DATA8(0x0F);
 LCD_WR_DATA8(0x31);
 LCD_WR_DATA8(0x2B);
 LCD_WR_DATA8(0x0C);
 LCD_WR_DATA8(0x0E);
 LCD_WR_DATA8(0x08);
 LCD_WR_DATA8(0x4E);
 LCD_WR_DATA8(0xF1);
 LCD_WR_DATA8(0x37);
 LCD_WR_DATA8(0x07);
 LCD_WR_DATA8(0x10);
 LCD_WR_DATA8(0x03);
 LCD_WR_DATA8(0x0E);
 LCD_WR_DATA8(0x09);
 LCD_WR_DATA8(0x00);
 
 LCD_WR_REG(0XE1);    //Set Gamma
 LCD_WR_DATA8(0x00);
 LCD_WR_DATA8(0x0E);
 LCD_WR_DATA8(0x14);
 LCD_WR_DATA8(0x03);
 LCD_WR_DATA8(0x11);
 LCD_WR_DATA8(0x07);
 LCD_WR_DATA8(0x31);
 LCD_WR_DATA8(0xC1);
 LCD_WR_DATA8(0x48);
 LCD_WR_DATA8(0x08);
 LCD_WR_DATA8(0x0F);
 LCD_WR_DATA8(0x0C);
 LCD_WR_DATA8(0x31);
 LCD_WR_DATA8(0x36);
 LCD_WR_DATA8(0x0F);
 
 LCD_WR_REG(0x2A);
 LCD_WR_DATA8(0x00);
 LCD_WR_DATA8(0x00);
 LCD_WR_DATA8(0x00);
 LCD_WR_DATA8(0xEF);
 
 LCD_WR_REG(0x2B);
 LCD_WR_DATA8(0x00);
 LCD_WR_DATA8(0x00);
 LCD_WR_DATA8(0x01);
 LCD_WR_DATA8(0x3F);
 LCD_WR_REG(0x11);    //Exit Sleep
 delayms(200);
 
 LCD_WR_REG(0x29);    //Display on
 LCD_WR_REG(0x2c);
 
 }
 //清屏函数
 //Color:要清屏的填充色
 void LCD_Clear(u16 Color)
 {
 u8 VH,VL;
 u16 i,j;
 VH=Color>>8;
 VL=Color;
 Address_set(0,0,LCD_W-1,LCD_H-1);
 for(i=0;i<LCD_W;i++)
 {
 for (j=0;j<LCD_H;j++)
 {
 LCD_WR_DATA8(VH);
 LCD_WR_DATA8(VL);
 
 }
 
 }
 }
 //画点
 //POINT_COLOR:此点的颜色
 void LCD_DrawPoint(u16 x,u16 y)
 {
 Address_set(x,y,x,y);//设置光标位置
 LCD_WR_DATA(POINT_COLOR);
 }
 
 //在指定区域内填充指定颜色
 //区域大小:
 //  (xend-xsta)*(yend-ysta)
 void LCD_Fill(u16 xsta,u16 ysta,u16 xend,u16 yend,u16 color)
 {
 u16 i,j;
 Address_set(xsta,ysta,xend,yend);      //设置光标位置
 for(i=ysta;i<=yend;i++)
 {
 for(j=xsta;j<=xend;j++)LCD_WR_DATA(color);//设置光标位置
 }
 }
 //画一个大点
 //POINT_COLOR:此点的颜色
 void LCD_DrawPoint_big(u16 x,u16 y)
 {
 LCD_Fill(x-1,y-1,x+1,y+1,POINT_COLOR);
 }
 //画线
 //x1,y1:起点坐标
 //x2,y2:终点坐标
 void LCD_DrawLine(u16 x1, u16 y1, u16 x2, u16 y2)
 {
 u16 t;
 int xerr=0,yerr=0,delta_x,delta_y,distance;
 int incx,incy,uRow,uCol;
 
 delta_x=x2-x1; //计算坐标增量
 delta_y=y2-y1;
 uRow=x1;
 uCol=y1;
 if(delta_x>0)incx=1; //设置单步方向
 else if(delta_x==0)incx=0;//垂直线
 else {incx=-1;delta_x=-delta_x;}
 if(delta_y>0)incy=1;
 else if(delta_y==0)incy=0;//水平线
 else{incy=-1;delta_y=-delta_y;}
 if( delta_x>delta_y)distance=delta_x; //选取基本增量坐标轴
 else distance=delta_y;
 for(t=0;t<=distance+1;t++ )//画线输出
 {
 LCD_DrawPoint(uRow,uCol);//画点
 xerr+=delta_x ;
 yerr+=delta_y ;
 if(xerr>distance)
 {
 xerr-=distance;
 uRow+=incx;
 }
 if(yerr>distance)
 {
 yerr-=distance;
 uCol+=incy;
 }
 }
 }
 //画矩形
 void LCD_DrawRectangle(u16 x1, u16 y1, u16 x2, u16 y2)
 {
 LCD_DrawLine(x1,y1,x2,y1);
 LCD_DrawLine(x1,y1,x1,y2);
 LCD_DrawLine(x1,y2,x2,y2);
 LCD_DrawLine(x2,y1,x2,y2);
 }
 //在指定位置画一个指定大小的圆
 //(x,y):中心点
 //r    :半径
 void Draw_Circle(u16 x0,u16 y0,u8 r)
 {
 int a,b;
 int di;
 a=0;b=r;
 di=3-(r<<1);             //判断下个点位置的标志
 while(a<=b)
 {
 LCD_DrawPoint(x0-b,y0-a);             //3
 LCD_DrawPoint(x0+b,y0-a);             //0
 LCD_DrawPoint(x0-a,y0+b);             //1
 LCD_DrawPoint(x0-b,y0-a);             //7
 LCD_DrawPoint(x0-a,y0-b);             //2
 LCD_DrawPoint(x0+b,y0+a);             //4
 LCD_DrawPoint(x0+a,y0-b);             //5
 LCD_DrawPoint(x0+a,y0+b);             //6
 LCD_DrawPoint(x0-b,y0+a);
 a++;
 //使用Bresenham算法画圆
 if(di<0)di +=4*a+6;
 else
 {
 di+=10+4*(a-b);
 b--;
 }
 LCD_DrawPoint(x0+a,y0+b);
 }
 }
 //在指定位置显示一个字符
 
 //num:要显示的字符:" "--->"~"
 //mode:叠加方式(1)还是非叠加方式(0)
 //在指定位置显示一个字符
 
 //num:要显示的字符:" "--->"~"
 
 //mode:叠加方式(1)还是非叠加方式(0)
 void LCD_ShowChar(u16 x,u16 y,u8 num,u8 mode)
 {
 u8 temp;
 u8 pos,t;
 u16 x0=x;
 u16 colortemp=POINT_COLOR;
 if(x>LCD_W-16||y>LCD_H-16)return;
 //设置窗口
 num=num-' ';//得到偏移后的值
 Address_set(x,y,x+8-1,y+16-1);      //设置光标位置
 if(!mode) //非叠加方式
 {
 for(pos=0;pos<16;pos++)
 {
 temp=asc2_1608[(u16)num*16+pos];                 //调用1608字体
 for(t=0;t<8;t++)
 {
 if(temp&0x01)POINT_COLOR=colortemp;
 else POINT_COLOR=BACK_COLOR;
 LCD_WR_DATA(POINT_COLOR);
 temp>>=1;
 x++;
 }
 x=x0;
 y++;
 }
 }else//叠加方式
 {
 for(pos=0;pos<16;pos++)
 {
 temp=asc2_1608[(u16)num*16+pos];                 //调用1608字体
 for(t=0;t<8;t++)
 {
 if(temp&0x01)LCD_DrawPoint(x+t,y+pos);//画一个点
 temp>>=1;
 }
 }
 }
 POINT_COLOR=colortemp;
 }
 //m^n函数
 u32 mypow(u8 m,u8 n)
 {
 u32 result=1;
 while(n--)result*=m;
 return result;
 }
 //显示2个数字
 //x,y :起点坐标
 //len :数字的位数
 //color:颜色
 //num:数值(0~4294967295);
 void LCD_ShowNum(u16 x,u16 y,u32 num,u8 len)
 {
 u8 t,temp;
 u8 enshow=0;
 num=(u16)num;
 for(t=0;t<len;t++)
 {
 temp=(num/mypow(10,len-t-1))%10;
 if(enshow==0&&t<(len-1))
 {
 if(temp==0)
 {
 LCD_ShowChar(x+8*t,y,' ',0);
 continue;
 }else enshow=1;
 
 }
 LCD_ShowChar(x+8*t,y,temp+48,0);
 }
 }
 //显示2个数字
 //x,y:起点坐标
 //num:数值(0~99);
 void LCD_Show2Num(u16 x,u16 y,u16 num,u8 len)
 {
 u8 t,temp;
 for(t=0;t<len;t++)
 {
 temp=(num/mypow(10,len-t-1))%10;
 LCD_ShowChar(x+8*t,y,temp+'0',0);
 }
 }
 //显示字符串
 //x,y:起点坐标
 //*p:字符串起始地址
 //用16字体
 void LCD_ShowString(u16 x,u16 y,const u8 *p)
 {
 while(*p!='\0')
 {
 if(x>LCD_W-16){x=0;y+=16;}
 if(y>LCD_H-16){y=x=0;}
 LCD_ShowChar(x,y,*p,0);
 x+=8;
 p++;
 }
 }
 
 int main( void )
 {
 // Stop watchdog timer to prevent time out reset
 WDTCTL = WDTPW + WDTHOLD;
 P4DIR = 0XFF;
 P4OUT = 0Xff;
 P3DIR = 0XFF;
 P3OUT = 0Xff;
 BACK_COLOR  = WHITE;
 POINT_COLOR = BLACK;
 Lcd_Init();   //tft初始化
 while(1)
 {
 LCD_Clear(RED);
 delayms(3000);
 LCD_Clear(GREEN);
 delayms(3000);
 LCD_Clear(BLUE);
 delayms(3000);
 LCD_Clear(WHITE);
 delayms(3000);
 LCD_DrawLine(56,78,110,270);
 Draw_Circle(128,128,64);
 LCD_DrawRectangle(34,55,230,300);
 delayms(3000);
 LCD_Clear(WHITE);
 delayms(3000);
 LCD_ShowString(0,0,string1);
 delayms(3000);
 }
 //return 0;
 }
 
 
 
 第三部分,引脚信息
 
 引脚信息
 1、LED-
 2、LED+(3.3V)
 3、VSS
 4、VCC
 5、VDD
 6、NC
 7、CS
 8、RESET
 9、DC
 10、WR
 11、RD
 12、D17
 13、D16
 14、D15
 15、D14
 16、D13
 17、D12
 18、D11
 19、D10
 20、VSS
 21、NC
 22、NC
 23、NC
 24、NC
 VDD&VCC接3.3V
 驱动IC型号 NV3029C 兼容ILI9341
 
 
 第四部分,兼容芯片资料
 
 
  芯嵌出品-ILI9341中文翻译资料(版本V1.0).pdf
(3.31 MB, 下载次数: 392) 
 
 
 
 点亮效果图
 
 
   
 
 
   
 
 
   
 
 
   
 
 此屏上家还有几百片,正在联系高价购回。
 
 
 https://www.yleee.com.cn/data/attachment/forum/201503/19/131717sfz4etwzzk7u7eft.jpg.thumb.jpg
 
 
 
 https://www.yleee.com.cn/data/attachment/forum/201503/19/131734x0li4gtj9lg4i0ia.jpg
 
 https://www.yleee.com.cn/data/attachment/forum/201503/19/131745t06663f67500s5ro.jpg
 
 https://www.yleee.com.cn/data/attachment/forum/201503/19/131749pg3t2godbs420gth.jpg.thumb.jpg
 
 https://www.yleee.com.cn/data/attachment/forum/201503/19/131720b2fzwd2ye69ey95u.jpg
 
 
 
 
 |