📄 lcd_pg320240.c
字号:
/***********************************************************************
* *
* Project Name: Demo board for graphic LCD 320240 *
* Description: Driving of the LCD 320240 *
* File name: LCD_pg24064 *
* Processor: uPD78F9177 *
* Revision: 1.0 *
* Date: 24.11.2004 *
* Compiler: C crosscompiler IAR 2.22 *
* Author: Lukas Bier *
* Company: *
* Email: Bier@elatec.cz *
* *
***********************************************************************/
#include <in78000.h>
#include "Df9177ay.H"
#include "defines.h"
#include "LCD_pg320240.h"
// write_c - write command to LCD
void lcdwrite_command(unsigned char Data)
{
A0 = 1; // write commnad
P5 = (Data);
P0 &= 0xF0;
P0 |= (Data >> 4);
WR = 0;
WR = 1;
}
// lcdwrite_data write data to LCD
void lcdwrite_data(unsigned char Data)
{
A0 = 0;
P5 = Data;
P0 &= 0xF0;
P0 |= (Data >> 4);
WR = 0;
WR = 1;
}
void clear_ram(void){
unsigned int i;
lcdwrite_command(0x46); lcdwrite_data(0); lcdwrite_data(0); // Set cursor
lcdwrite_command(0x42); // mwrite
for (i=0;i < 1200;i++) lcdwrite_data(0x20);
lcdwrite_command(0x46); lcdwrite_data(0xb0); lcdwrite_data(0x04); // Set cursor to graphic page
lcdwrite_command(0x42); // mwrite
for (i=0;i < 9600;i++) lcdwrite_data(0);
}
void clear_txt(void)
{
unsigned int i;
lcdwrite_command(0x46); lcdwrite_data(0); lcdwrite_data(0); // Set cursor
lcdwrite_command(0x42); // mwrite
for (i=0;i < 1200;i++) lcdwrite_data(0x20);
}
void init_lcd(void)
{
lcdwrite_command(0x40); lcdwrite_data(0x30); lcdwrite_data(0x87); // LCD panel - hardware setup
lcdwrite_data(0x07); lcdwrite_data(0x27); lcdwrite_data(0x39); // Text area
lcdwrite_data(0xef); lcdwrite_data(0x28); lcdwrite_data(0);
lcdwrite_command(0x44); lcdwrite_data(0x00); lcdwrite_data(0x00); // Scroll
lcdwrite_data(0xef); lcdwrite_data(0xb0); lcdwrite_data(0x04);
lcdwrite_data(0xef); lcdwrite_data(0x00); lcdwrite_data(0x00);
lcdwrite_data(0x00); lcdwrite_data(0x00);
lcdwrite_command(0x5d); lcdwrite_data(0x04); lcdwrite_data(0x86); // Cursor form
lcdwrite_command(0x4c); // Cursor direction
lcdwrite_command(0x5a); lcdwrite_data(0x00); // Horizontal scroll rate
lcdwrite_command(0x5b); lcdwrite_data(0x01); // Text/Graphic XOR
lcdwrite_command(0x59); lcdwrite_data(0x16); // Display ON
clear_ram();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -