1602液晶显示计算器电路图及程序_第1页
1602液晶显示计算器电路图及程序_第2页
1602液晶显示计算器电路图及程序_第3页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1602液晶显示计算器电路图及程序#include

#include

#include

unsignedcharcodeError={"error"};

unsignedcharcodeSystemerror={"systemerror"};

unsignedcharcodeLcd={"lcdcalculate"};

charstr;

sbitRS=P2^0;

sbitRW=P2^1;

sbitE=P2^2;

sbitBF=P0^7;

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

函数功能:延时1ms

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

voiddelay1ms()

{

unsignedchari,j;

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

for(j=0;j<33;j++)

;

}

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

函数功能:延时n毫秒

入口参数:n

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

voiddelaynms(unsignedcharn)

{

unsignedchari;

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

delay1ms();

}

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

函数功能:推断液晶模块的劳碌状态

返回值:result。result=1,劳碌;result=0,不忙。

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

bitBusyTest(void)

{

bitresult;

RS=0;//依据规定,RS为低电平、RW为高电平常,可以读状态

RW=1;

E=1;//E=1,才允许读/写

_nop_();

_nop_();

_nop_();

_nop_();

result=BF;//将劳碌标志电平赋给result

E=0;

returnresult;

}

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

函数功能:将模式设置指令或显示地址写入液晶模块

入口参数:dictate

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

voidWriteInstruction(unsignedchardictate)

{

while(BusyTest()==1);//假如忙就等待

RS=0;//依据规定,RS和R/W同为低电平常,可以写入指令

RW=0;

E=0;

_nop_();

_nop_();

P0=dictate;//将数据送入P0口,即写入指令或地址

_nop_();

_nop_();

_nop_();

_nop_();

E=1;//E置高电平

_nop_();

_nop_();

_nop_();

_nop_();

E=0;

}

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

函数功能:指定字符显示的实际地址

入口参数:x,y

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

voidWriteAddress(unsignedcharx,unsignedchary)

{

unsignedchartemp;

if(x==0)

{

switch(y)

{

case0:temp=0x00;break;

case1:temp=0x01;break;

case2:temp=0x02;break;

case3:temp=0x03;break;

case4:temp=0x04;break;

case5:temp=0x05;break;

case6:temp=0x06;break;

case7:temp=0x07;break;

case8:temp=0x08;break;

case9:temp=0x09;break;

case10:temp=0x0a;break;

case11:temp=0x0b;break;

case12:temp=0x0c;break;

case13:temp=0x0d;break;

case14:temp=0x0e;break;

case15:temp=0x0f;break;

}

}

if(x==1)

{

switch(y)

{

case0:temp=0x40;break;

case1:temp=0x41;break;

case2:temp=0x42;break;

case3:temp=0x43;break;

case4:temp=0x44;break;

case5:temp=0x45;break;

case6:temp=0x46;break;

case7:temp=0x47;break;

case8:temp=0x48;break;

case9:temp=0x49;break;

case10:temp=0x4a;break;

case11:temp=0x4b;break;

case12:temp=0x4c;break;

case13:temp=0x4d;break;

case14:temp=0x4e;break;

case15:temp=0x4f;break;

}

}

WriteInstruc

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论