1显示数据

typedef struct
{
unsigned long int mL_data;
unsigned long int L_data;
unsigned long int M3_data;
}water_date;
extern water_date water_data1;

2数据处理函数

/**---------------------------------------------------------------------------------
* @brief 数据处理函数
* @param 无
* @arg 需处理数据结构体起始地址
* @retval 数据起始地址
---------------------------------------------------------------------------------*/
unsigned char* DATA_DEAL(water_date t)
{
unsigned char DIS_DATA[] = {"000mL;000L;000M3"};
if(t.mL_data || t.L_data || t.M3_data)
{
DIS_DATA[] = (t.mL_data * /)%/ + 0x30;
DIS_DATA[] = (t.mL_data * /)%/ + 0x30;
DIS_DATA[] = (t.mL_data * /)% + 0x30; DIS_DATA[] = t.L_data%/ + 0x30;
DIS_DATA[] = t.L_data%/ + 0x30;
DIS_DATA[] = t.L_data% + 0x30; DIS_DATA[] = t.M3_data%/ + 0x30;
DIS_DATA[] = t.M3_data%/ + 0x30;
DIS_DATA[] = t.M3_data% + 0x30; return DIS_DATA;
}
else return ; }

3显示函数

/**---------------------------------------------------------------------------------
* @brief 对应位置显示函数
* @param y:1,2(从第几行开始写)
x:0-15(从改行的第几位开始写)
* @arg NULL
* @retval null
---------------------------------------------------------------------------------*/
unsigned char LCD1602_WRITE(unsigned char y,unsigned char x,unsigned char *write_data)
{
unsigned char i;
lcd_wcmd(0x06); //向右移动光标
if(y == )
{
lcd_pos(x); //设置显示位置为第一行的第1个字符
i = ;
while(*(write_data + i) != '\0')
{ //显示字符"WLCOME TO"
lcd_wdat(*(write_data + i));
i++;
// delay(200); //控制两字之间显示速度
if(i > )
{
LCE1602_STATUS = WRITE_NO;
return LCE1602_STATUS;
}
}
LCE1602_STATUS = WRITE_OK;
return LCE1602_STATUS;
}
else
{
lcd_pos(0x40 + x); //设置显示位置为第一行的第1个字符
i = ;
while(*(write_data + i) != '\0')
{ //显示字符"WLCOME TO"
lcd_wdat(*(write_data + i));
i++;
// delay(200); //控制两字之间显示速度
if(i > )
{
LCE1602_STATUS = WRITE_NO;
return LCE1602_STATUS;
}
}
LCE1602_STATUS = WRITE_OK;
return LCE1602_STATUS;
}
}

LCD1602小程序的更多相关文章

  1. 【小程序分享篇 一 】开发了个JAVA小程序, 用于清除内存卡或者U盘里的垃圾文件非常有用

    有一种场景, 手机内存卡空间被用光了,但又不知道哪个文件占用了太大,一个个文件夹去找又太麻烦,所以我开发了个小程序把手机所有文件(包括路径下所有层次子文件夹下的文件)进行一个排序,这样你就可以找出哪个 ...

  2. 微信小程序开发心得

    微信小程序也已出来有一段时间了,最近写了几款微信小程序项目,今天来说说感受. 首先开发一款微信小程序,最主要的就是针对于公司来运营的,因为,在申请appid(微信小程序ID号)时候,需要填写相关的公司 ...

  3. 微信应用号(小程序)开发IDE配置(第一篇)

    2016年9月22日凌晨,微信宣布“小程序”问世,当然只是开始内测了,微信公众平台对200个服务号发送了小程序内测邀请.那么什么是“小程序”呢,来看微信之父怎么说 看完之后,相信大家大概都有些明白了吧 ...

  4. TODO:小程序开发过程之体验者

    TODO:小程序开发过程之体验者 1. 小程序开发过程,先下载开发者并安装开发者工具,现在腾讯开放测试了,普通用户也可以登录开发者工具,如图普通用户登录为调试类型,但是只能建立无AppID的项目 如果 ...

  5. TODO:即将开发的第一个小程序

    TODO:即将开发的第一个小程序 微信小程序是一种全新的连接用户与服务的方式,它可以在微信内被便捷地获取和传播,同时具有出色的使用体验.个人理解小程序是寄宿在微信平台上的一个前端框架,具有跨平台功能, ...

  6. 微信小程序体验(2):驴妈妈景区门票即买即游

    驴妈妈因为出色的运营能力,被腾讯选为首批小程序内测单位.驴妈妈的技术开发团队在很短的时间内完成了开发任务,并积极参与到张小龙团队的内测问题反馈.驴妈妈认为,移动互联网时代,微信是巨大的流量入口,也是旅 ...

  7. 微信小程序中利用时间选择器和js无计算实现定时器(将字符串或秒数转换成倒计时)

    转载注明出处 改成了一个单独的js文件,并修改代码增加了通用性,点击这里查看 今天写小程序,有一个需求就是用户选择时间,然后我这边就要开始倒计时. 因为小程序的限制,所以直接选用时间选择器作为选择定时 ...

  8. 微信小程序(微信应用号)组件讲解

    这篇文章主要讲解微信小程序的组件. 首先,讲解新建项目.现在有句话:招聘三天以上微信小程序开发,这个估计只能去挖微信的工程师了.技术新,既然讲解,那我们就从开始建项目讲解. 打开微信web开发者工具, ...

  9. 神技!微信小程序(应用号)抢先入门教程(附最新案例DEMO-豆瓣电影)持续更新

    微信小程序 Demo(豆瓣电影) 由于时间的关系,没有办法写一个完整的说明,后续配合一些视频资料,请持续关注 官方文档:https://mp.weixin.qq.com/debug/wxadoc/de ...

随机推荐

  1. Python subprocess shell 编程规范

    使用subprocess通过shell调用另一个模块组件时,需要对返回的code进行判断.判断结果为执行失败时需要raise Exception,不然调用树过于复杂时,我们很难跟踪到异常发生的位置.s ...

  2. 【BZOJ1713】[Usaco2007 China]The Bovine Accordion and Banjo Orchestra 音乐会 斜率优化

    [BZOJ1713][Usaco2007 China]The Bovine Accordion and Banjo Orchestra 音乐会 Description Input 第1行输入N,之后N ...

  3. MUI事件管理

    模块:事件管理 http://dev.dcloud.net.cn/mui/event/ 事件绑定: 除了可以使用addEventListener()方法监听某个特定元素上的事件外, 也可以使用.on( ...

  4. 170620、springboot编程之页面版Hello World

    书接上回,把Hello World 在页面上显示! 1.在pom文件中加入web支持 <dependency> <groupId>org.springframework.boo ...

  5. SaltStack配置管理-jinja模板

    上一篇:SaltStack配置管理-状态间关系 需求:需要apache配置文件里面监听的端口是每个minion本地的地址 saltstack默认的模板是jinjia模板 参考文档:http://doc ...

  6. codeforces#505--B Weakened Common Divisor

    B. Weakened Common Divisor time limit per test 1.5 seconds memory limit per test 256 megabytes input ...

  7. VS2012/2013引用对话框的糟糕设计

    先看两张图: 1. 首次打开引用对话框(Reference Manager),Name显示不全: (图1) 2. 然后双击或拖动splitter,让Name显示全: (图2) 3. 下次再打开引用对话 ...

  8. 设计模式之——Composite模式

    composite模式又叫做组合模式/复合模式. 它是一种能够使容器与内容具有一致性,创造出递归结构的模式. 示例程序是列出文件夹以及其内部文件与文件夹一览的功能: 可以由示例图看出,有一个电影文件夹 ...

  9. vue - 计算属性、表单输入绑定

    计算属性 computed:{} <!DOCTYPE html> <html> <head> <title></title> </he ...

  10. Flex 布局:实例篇

    上一篇文章介绍了Flex布局的语法,今天介绍常见布局的Flex写法.你会看到,不管是什么布局,Flex往往都可以几行命令搞定. ​ 我只列出代码,详细的语法解释请查阅<Flex布局教程:语法篇& ...