LCM128645液晶范例(ST7920) - 深圳led背光源生产厂家,lcd显示屏,lcm液晶显示模块|模组厂-宝莱雅

 深圳市宝莱雅产品分类列表

联系我们

公司名称:深圳市宝莱雅光电有限公司
厂址:中国.广东省.深圳市宝安西乡臣田工业区

营销专线
吴先生 手机:13538278608
胡先生 手机:13823360976
固定电话:86-0755-28246146/
28246906/28246536/28247229
电话传真:86-0755-89715671
投诉与售后咨询 黄小姐:13823217679
胡先生:13928021976

Email:bly@blyled.com

公司网址:http://www.blyled.com/

LCM128645液晶范例(ST7920)

LCM128645液晶范例(ST7920)

液晶使用ST7920控制器,串并行模式(本范例使用串行)

/* M16驱动LCM128645,液晶芯片ST7920

*/

#include “j.h”

#include

#define light_on cbi(PORTB, 2);

#define light_off sbi(PORTB, 2);

void clear_all(void);

// 显示用指针变量

char *line1;

char *line2;

char *line3;

char *line4;

void cpu_init(void)

{

//———– IO端口初始化 START —————–

PORTA = 0×0;

DDRA = 0×0;

PORTB = 0xff;

DDRB = 0xff;

PORTC = 0×0;

DDRC = 0×0;

DDRD = 0×0; // D口配置为输入

PORTD = 0xff; // 使能上拉电阻

//———– IO端口初始化 END —————–

wdt_enable(1); // 看门狗使能 30MS

ACSR = 0×80;

}

/*****************************************

液晶发送子程序(串行)

输入数据:要发送的8位数据

输出:无

作者:

修改时间:2004-08-11

*****************************************/

void lcm_out(char a)

{

char i,d;

for(i=0;i<8;i++)

{

cbi(PORTB,1);

d=a&0×80;

if(d)

sbi(PORTB,0);

else

cbi(PORTB,0);

a<<=1;

sbi(PORTB,1);

}

}

/*****************************************

液晶写控制字程序

输入数据:要写入的8位数据

输出:无

作者:

修改时间:2004-08-11

*****************************************/

void wr_com(uchar a)

{

uchar s,i;

s=a&0xf0;

lcm_out(0xf8);

lcm_out(s);

s=a&0x0f;

s<<=4;

lcm_out(s);

for( i=0;i<254;i++ ) // 延时

{

asm(“nop”);

}

}

/*****************************************

液晶写数据字程序

输入数据:要写入的8位数据

输出:无

作者:

修改时间:2004-08-11

*****************************************/

void wr_date(uchar a)

{

uchar s,i;

s=a&0xf0;

lcm_out(0xfa);

lcm_out(s);

s=a&0x0f;

s<<=4;

lcm_out(s);

for( i=0;i<254;i++ ) // 延时

{

asm(“nop”);

}

}

/*****************************************

液晶初始化程序

输入数据:无

输出:无

作者:

修改时间:2004-08-11

*****************************************/

void lcm_init(void)

{

wr_com(0×30);

delay(1,8000);

wr_com(0×30);

delay(1,8000);

wr_com(0x0c);

delay(1,8000);

wr_com(0×01); // 清屏

delay(10,8000); // 清屏

wr_com(0×60);

delay(1,8000);

}

void clear_all(void)

{

wr_com(0×01); // 清屏

delay(1,8000); // 清屏

}

//———– 整行显示函数 START —————–

void display(void)

{

wr_com(0×80);

while( *line1!=0×00 )

{

wr_date(*line1);

line1++;

}

wr_com(0×90);

while( *line2!=0×00 )

{

wr_date(*line2);

line2++;

}

wr_com(0×88);

while( *line3!=0×00 )

{

wr_date(*line3);

line3++;

}

wr_com(0×98);

while( *line4!=0×00 )

{

wr_date(*line4);

line4++;

}

line1 = “”;

line2 = “”;

line3 = “”;

line4 = “”;

}

//———– 整行显示函数 END —————–

//———– 系统初始化函数 START —————–

void system_init(void)

{

line1 = “”;

line2 = “”;

line3 = “”;

line4 = “”;

light_on

lcm_init();

}

//———– 系统初始化函数 END —————–

int main(void)

{

delay(200,8000);

cpu_init();

system_init();

while(1)

{

line1 = ” 欢迎光临 “;

line2 = “”;

line3 = ” 东创科技 “;

line4 = ” www.dycxin.com.cn “;

display();

delay(800,8000);

}

}

«
»

首 页 | 公司简介 | 企业荣誉 | 产品中心 | 新闻中心 | 联系我们 | 集团首页

版权所有 深圳市宝莱雅光电有限公司     粤ICP备08129267号-1