找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2706|回复: 2
打印 上一主题 下一主题
收起左侧

无字库lcd12864电子钟小问题的解决(单片机程序+仿真)

[复制链接]
跳转到指定楼层
楼主
前几天看到了这个电子钟的帖子  原帖:单片机+ds1302+dht11+无字库12864带温湿度的电子钟(程序+仿真)
仿真后发现有点小问题,正想问怎么解决,才看到帖子的作者已经把存在问题提出了。。。于是自己尝试了一下@ ai58520



最终效果


原有的问题的解决,最主要的两点
1.字符显示的小错乱


首先我的解决思路是:既然是显是的问题,那么就是有显示的代码错了,
我通过将其注释掉的方法,想定位到出错的地方,结果失败
我通过多次尝试发现,错乱的地方会根据代码的不同而改变
最终确定是定时器中断的问题
  1. void LCD_Show(uchar P,uchar L,uchar W,uchar *r) reentrant
  2. {  
  3.     uchar i;
  4.         [color=#9932cc]TR0=0;[/color]
  5.         if(L<64)
  6.                   {
  7.                     CS1=1;
  8.                 CS2=0;
  9.                         Write_Byte_To_LCD(LCD_PAGE+P);
  10.                         Write_Byte_To_LCD(LCD_COL+L);
  11.                         if(L+W<64)
  12.                           {
  13.                             for(i=0;i<W;i++)
  14.                                    Write_Data_To_LCD(r[i]);
  15.                           }
  16.                         else
  17.                           {
  18.                             for(i=0;i<64-L;i++)
  19.                                           Write_Data_To_LCD(r[i]);
  20.                                 CS1=0;
  21.                     CS2=1;
  22.                                 Write_Byte_To_LCD(LCD_PAGE+P);
  23.                             Write_Byte_To_LCD(LCD_COL);
  24.                                 for(i=64-L;i<W;i++)
  25.                                           Write_Data_To_LCD(r[i]);
  26.                           }
  27.                    }
  28.         else
  29.         {
  30.                     CS1=0;
  31.             CS2=1;
  32.                         Write_Byte_To_LCD(LCD_PAGE+P);
  33.                     Write_Byte_To_LCD(LCD_COL+L-64);
  34.                         for(i=0;i<W;i++)
  35.                                   Write_Data_To_LCD(r[i]);
  36.         }
  37.         TR0=1;
  38. }//添加代码
复制代码
2.秒时间变换的不准确
因为中断中代码放多了,恰巧lcd屏幕显示的运算量不小,


我在中断中只留下了秒,其他转移到main()中

按键部分DTH11温度还没还得及研究

最后用了我喜欢的喜欢的字体,布局显示界面
无字库12864 ds1302_小清新版.7z (120.89 KB, 下载次数: 50)



动态效果可以在https://www.bilibili.com/video/av81812478/查看

评分

参与人数 2黑币 +80 收起 理由
星星x + 30 赞一个!
admin + 50 共享资料的黑币奖励!

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:400245 发表于 2020-4-26 16:20 | 只看该作者
很不错!
回复

使用道具 举报

板凳
ID:661407 发表于 2020-6-1 20:54 来自手机 | 只看该作者
你的显示屏是12641
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表