|
#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
2015-4-23 20:57 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
4.26 KB, 下載次數: 88, 下載積分: 黑幣 -5
SSD1289驅動IC的3.2寸TFT
評分
-
查看全部評分
|