英文dtad什么意思

更新时间:2023-01-04 02:57:53 阅读: 评论:0


2023年1月4日发(作者:北京电脑维修培训)

#inc

#include

#include"12864.h"

#include"delay.h"

#defineuintunsignedint

#defineucharunsignedchar

#defineDataPortP0//8个数据口

sbitLCD12864RS=P2^4;//串行时为CS,串片选,每次数据操作时都要将CS拉高

sbitLCD12864RW=P2^5;//串行时为SID,串数据口,

sbitLCD12864EN=P2^6;//串行时为SCLK,同步时钟信号

sbitLCD12864PSB=P2^1;//并、串选择端,1为并行,0为串行

voidSendCom(ucharcom)//写一个指令

{

uchari;

uchardt;

dt=0xf8;

LCD12864RS=1;

LCD12864EN=0;

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

{

LCD12864RW=(bit)(dt&0x80);

LCD12864EN=0;

LCD12864EN=1;

dt=dt<<1;

}

dt=com;

dt&=0xf0;

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

{

LCD12864RW=(bit)(dt&0x80);

LCD12864EN=0;

LCD12864EN=1;

dt=dt<<1;

}

dt=com;

dt<<=4;

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

{

LCD12864RW=(bit)(dt&0x80);

LCD12864EN=0;

LCD12864EN=1;

dt=dt<<1;

}

LCD12864RS=0;

delayms(1);

}

voidSendData(uchardate)//写一个数据

{

uchari;

uchardt;

dt=0xfa;

LCD12864RS=1;

LCD12864EN=0;

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

{

LCD12864RW=(bit)(dt&0x80);

LCD12864EN=0;

LCD12864EN=1;

dt=dt<<1;

}

dt=date;

dt&=0xf0;

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

{

LCD12864RW=(bit)(dt&0x80);

LCD12864EN=0;

LCD12864EN=1;

dt=dt<<1;

}

dt=date;

dt<<=4;

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

{

LCD12864RW=(bit)(dt&0x80);

LCD12864EN=0;

LCD12864EN=1;

dt=dt<<1;

}

LCD12864RS=0;

delayms(1);

}

voidWriteString(uchari,ucharj,uchar*string)//在i行j列写一个字符串

{

uchark;

if(i>=1&&i<=4&&j>=1&&j<=8)

{

switch(i)

{

ca1:SendCom(0x80+j-1);break;

ca2:SendCom(0x90+j-1);break;

ca3:SendCom(0x88+j-1);break;

ca4:SendCom(0x98+j-1);break;

}

for(k=0;string[k]!='0';k++)

{

SendData(string[k]);

}

}

}

voidWriteNum(uchari,ucharj,uintnum)//在i行j列显示一个数据;

{

//ucharshi,ge;

//shi=num/10;

//ge=num%10;

if(i>=1&&i<=4&&j>=1&&j<=8)

{

switch(i)

{

ca1:SendCom(0x80+j-1);break;

ca2:SendCom(0x90+j-1);break;

ca3:SendCom(0x88+j-1);break;

ca4:SendCom(0x98+j-1);break;

}

SendData(num+0x30);

//SendData(ge+0x30);

}

}

voidInit12864()//初始化

{

LCD12864PSB=0;

LCD12864EN=0;

SendCom(0x30);//

SendCom(0x0c);//打开显示,无光标

SendCom(0x01);//清屏

}

#include"delay.h"

voiddelayms(uintxms)

{

uinti,j;

for(i=xms;i>0;i--)

for(j=110;j>0;j--);

}

#include

#include

#include"12864.h"

#include"delay.h"

#defineuintunsignedint

#defineucharunsignedchar

sbitcs=P3^5;

sbitrd=P3^6;

sbitwr=P3^7;

voiddisplay(uinttemp)

{

uchara,b,c,d;

temp=temp*18.6;

a=temp/1000;

b=temp%1000/100;

c=temp%1000%100/10;

d=temp%1000%100%10;

WriteNum(3,1,a);

WriteNum(3,2,b);

WriteNum(3,3,c);

WriteNum(3,4,d);

WriteString(3,5,"mV");

}

voidmain()

{

ucharm,temp;

Init12864();

P1=0x7f;

while(1)

{

cs=0;

wr=1;

_nop_();

wr=0;

_nop_();

wr=1;

for(m=10;m>0;m--)

{

display(temp);

}

P1=0xff;

WriteString(1,1,"直流稳压电源");

WriteString(2,1,"电压采集:");

rd=1;

_nop_();

rd=0;

_nop_();

temp=P1;

rd=1;

}

}

本文发布于:2023-01-04 02:57:53,感谢您对本站的认可!

本文链接:http://www.wtabcd.cn/fanwen/fan/90/88184.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

上一篇:荧光相关光谱
下一篇:连续生产
相关文章
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图