|
#include <reg52.h>
#include <intrins.h>
#include "string.h"
#define u8 unsigned char
#define u16 unsigned int
#define u32 unsigned long
/*****************************接线部分************************/
#define LCD_DataPortH P2 //高8位数据口,8位模式下只使用高8位
#define LCD_DataPortL P0 //低8位数据口
sbit LCD_RD =P3^5; //读控制
sbit LCD_WR = P3^6; //写控制
sbit LCD_RS = P3^7; //数据/命令切换
sbit LCD_CS=P1^1; //片选
sbit LCD_RESET = P1^0; //复位
//sbit LCD_BL=P1^7; //背光控制
/*****************************接线部分************************/
//LCD重要参数集
typedef struct
{
u16 width; //LCD 宽度
u16 height; //LCD 高度
// u16 id; //LCD ID
u8 dir; //横屏还是竖屏控制:0,竖屏;1,横屏。
u16 wramcmd; //开始写gram指令
// u16 setxcmd; //设置x坐标指令
// u16 setycmd; //设置y坐标指令
}_lcd_dev;
_lcd_dev lcddev;
//LCD的画笔颜色和背景色
u16 POINT_COLOR=0x0000; //画笔颜色
u16 BACK_COLOR=0xFFFF; //背景色
//画笔颜色
#define WHITE 0xFFFF
#define BLACK 0x0000
#define YELLOW 0xFFE0
#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 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 //浅棕蓝色(选择条目的反色)
//函数申明*******************************************
void delay_ms(int count);
//void delay_us(int count);
void Lcd_Set_Cursor(u16 Xpos, u16 Ypos);//设置光标位置
void Lcd_Set_Windows(u16 xStar,u16 yStar,u16 xEnd,u16 yEnd);//设置显示窗口
void Lcd_Write_Com(int);//写指令
void Lcd_Write_Data(int);//写数据
void Lcd_Draw_Point(u16 x,u16 y,u16 color);//画点**************************************
void Lcd_Draw_Line(u16 x1, u16 y1, u16 x2, u16 y2,u16 color);//画线********************
void Lcd_Draw_Rectangle(u16 x1, u16 y1, u16 x2, u16 y2,u16 color,int fill);//画矩形*************
//void Lcd_Draw_FillRectangle(u16 x1, u16 y1, u16 x2, u16 y2);//画实矩形*******
void Lcd_Fill(u16 sx,u16 sy,u16 ex,u16 ey,u16 color);//填充颜色
void GUI_Draw_Point(u16 x,u16 y,u16 color);
void Lcd_Draw_Circle(int xc, int yc,u16 c,int r, int fill);
void _Draw_Circle_8(int xc, int yc, int x, int y, int color); //内部调用
void Lcd_Init(void);//初始化LCD
void Lcd_Clear(u16 Color);//清屏*********************************************
void Lcd_Reset(void);//复位
//void Lcd_Write_RAM_Prepare(void);
void Lcd_Set_Param(void);
void Lcd_Write_Bus(char VH,char VL);//16位并行写入时序
void Lcd_Write_Com_Data(u16 LCD_Reg, u16 LCD_RegValue);
//****************************************************
[见附件]
|
-
-
lcd32.zip
4.26 KB, 下载次数: 88, 下载积分: 黑币 -5
SSD1289驱动IC的3.2寸TFT
评分
-
查看全部评分
|