云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > LCD1602和LCD12864程序-并行与串行

LCD1602和LCD12864程序-并行与串行

  • 62 次阅读
  • 3 次下载
  • 2025/5/7 5:10:24

x:显示列,取值范围0-7 y:显示行,取值范围0-3 */

void LCD12864_SZXS(signed long sj,unsigned char xsfs,x,y) {

unsigned long xc; //显示缓存 unsigned char d[13]; bit xsd,fs,bf=0; xsd=0; fs=0;

LCD12864_XZL(0x04);//设置光标左移

LCD12864_XZL(LCD12864_SZDZ(x,y));//写入显示地址 y=0;

if(xsfs>10)

{x=16; //输出十六进制 d[y]=0x48; //十六进制显示H y++; } // else

{if(sj<0) //十进制正负数判断 {sj=~sj+1;

fs=1;} //负号显示使能 if(xsfs!=0) xsd=1;//小数点显示使能 x=10; } //

xc=sj;

if(xc!=0) //显示数据不为0;则显示

{while(xsd) //判是否需要显示小数 {if(xc!=0) //是否还需要计算 {sj=xc%x;

if(bf|sj!=0) //小数部分为0不需要显示 {d[y]=ascll12864[xc%x];

y++; //取数的ascll码并显示

bf=1; //小数部分不为0标志,小数部分数字有效 }

xc/=x; //取剩下的数 } else if(bf)

{d[y]=0x30; //判是否需要补0 y++;}

else; //小数部分无效,不需要补0

xsfs--;

if(xsfs==0) //小数点位数减一 {xsd=0; //小数计算部分结束标志 if(bf)

{d[y]=0x2e; //小数部分存在有效数字则显示小数点 y++;} } } }

do

{d[y]=ascll12864[xc%x]; //取数的ascll码 y++; xc/=x; } while(xc!=0); if(fs)

{d[y]=0x2d; //取负号ascll码 y++;}

if(y&&0x01) //如果显示的位数为奇数 {d[y]=0x20; //显示一个空格 y++;} x=y; y=1;

///////////////显示数据////////////// do {

LCD12864_XSJ(d[y]);//显示一个地址的前一个字符 y--;

LCD12864_XSJ(d[y]);//显示一个地址的后一个字符 y+=3; //跳到下一个要显示的两个字符 }

while(y

LCD12864_XZL(0x06);//设置光标右移 }

/***************************************************** **********LCD12864字符显示函数************************ ****************************************************** *zfc:需要显示的字符串指针,字符数不得超过64个 x:显示列,取值范围0-7 y:显示行,取值范围0-3 */

void LCD12864_ZFXS(unsigned char *zfc,x,y) {

unsigned char k1,k2,k3; k3=x*2;

k1=16-k3; k2=32-k3; k3=48-k3;

switch(y) //设置显示地址x和换行标志y {case 0:x|=0x80;y=0;break; case 1:x|=0x90;y=16;break; case 2:x|=0x88;y=32;break; case 3:x|=0x98;y=48;break; default:;}

搜索更多关于: LCD1602和LCD12864程序-并行与串行 的文档
  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

x:显示列,取值范围0-7 y:显示行,取值范围0-3 */ void LCD12864_SZXS(signed long sj,unsigned char xsfs,x,y) { unsigned long xc; //显示缓存 unsigned char d[13]; bit xsd,fs,bf=0; xsd=0; fs=0; LCD12864_XZL(0x04);//设置光标左移 LCD12864_XZL(LCD12864_SZDZ(x,y));//写入显示地址 y=0; if(xsfs>10) {x=16; //输出十六进制 d[y]=0x48; //十六进制显示H y++; }

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com