标题: 无字库lcd12864电子钟小问题的解决(单片机程序+仿真) [打印本页]

作者: gspt    时间: 2020-1-3 10:59
标题: 无字库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/查看


作者: 小号487560745    时间: 2020-4-26 16:20
很不错!
作者: SWEET1123    时间: 2020-6-1 20:54
你的显示屏是12641




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1