您的位置 首页 系统

根据C8051F的金鹏LCD19264(带字库)程序

————————————————————————-*文件名:LCDh(LCD头文件)*———

//————————————————————————-*

//文件名: LCD.h (LCD头文件) *
//————————————————————————-*
#include “C8051F340.h”
#include
#define uint unsigned int
#define uchar unsigned char

sbit rw = P2^1; //H=read; L=write;
//sbit e1 = P2^2; //up input enable;
sbit e2 = P2^2; //down input enable;
sbit rs = P2^0; //H=data; L=command;
//sbit rst= P3^0; //Reset Signal 低电平有用
void init_lcd ();
void clrram ();
void string_disp (uchar up,uchar down,uchar addr,uchar length,uchar code *pp); //显现字符串
void number_disp (uchar up,uchar down,uchar addr,uchar length,uchar number1,uchar number2); //显现数字

//up:上半屏 down:下半屏
//up为1,操控上半屏,down为1,操控下半屏
uchar Math_Subwith(uchar dat) //线序回转
{
uchar i,temp;
temp = 0x00;
for(i=0;i<8;i++)
{
temp >>= 1;
if((dat< {
temp |= 0x80;
}
else
{
temp &= 0x7F;
}
}
return temp;
}
//*******************************
//判忙
//*******************************
void chk_busy (uchar up,uchar down)
{
if(up==1)
{
P1 = Math_Subwith(0xff);
rs=0;
rw=1;
//e1=1;
P4 = P4|0x01;
while(P1 & 0x01);
//e1=0;
_nop_();_nop_();_nop_();_nop_();
P4 = P4&0xfe;
}
if(down==1)
{
P1 =Math_Subwith(0xff);
rs=0;
rw=1;
e2=1;
while(P1& 0x01);
_nop_();_nop_();_nop_();_nop_();
e2=0;
}
}
//********************************************
//写指令
//********************************************
void send_c (uchar up,uchar down,uchar comm)
{
chk_busy (up,down);
rs=0; //command
rw=0; //write
if(up==1)
{
P1 = Math_Subwith(comm); //output comm
//e1=1;
P4 = P4|0x01;
_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();
//e1=0;
P4 = P4&0xfe;
}
if(down==1)
{
P1 = Math_Subwith(comm); //output comm
e2=1;
_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();
e2=0;
}
}

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/qianrushi/xitong/255193.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部