如何用12864液晶显示图片和绘制任意函数图象(打点)

本文介绍了如何使用12864液晶显示器显示图片和绘制函数图象,包括取模、液晶设置、地址概念解析及代码实现。通过横向取模和初始化设置,实现了图片的显示,并提供了显示任意图像的打点方法,以避免乱码问题。
摘要由CSDN通过智能技术生成

一. 显示图片

  显示图片的要点在于:1.取模 2.利用扩展指令设置液晶3.清楚液晶地址的概念

1.1取模

  取模软件用的是“字模221”下图是他的参数设置

          

 

   

  这里对参数设置先解释一下,所谓横向取模就是,一张图片从图片最左上角的8位开始取模,从左向右,每次取8位二进制数据转化为16进制保存,第一排取完之后,接着到第二排最左边8位开始取模,以此类推。为什么要这样取模呢?因为12864液晶的横纵坐标就是这个取模顺序,这点在之后还会详细提到。

1.2液晶的设置

  液晶显示图片必须用扩充指令集,初始化和显示字符的初始化不一样。我用的初始化函数如下:

 

void init_picture()//显示图片的初始化函数

{

   lcd_wcmd(0x36);//写指令函数,扩充指令集,绘图G=1打开

   lcd_wcmd(0x36);

   lcd_wcmd(0x3E);

   lcd_wcmd(0x01);//清屏

    Light= 0;//打开背光

}

1.3将取出的字模写进相应地址

  首先应该知道地址究竟是怎样的,结合下图讲清楚。12864液晶分为半屏和下半屏。当你想要点亮某个地方时,必须先写这个地方的垂直地址紧接着写入它的水平地址,水平地址液晶可以自动加1,而垂直地址不会。图中水平坐标从0x80+00到0x80+0F,一共16个,其中0x80+00到0x80+07是上半屏的坐标,其中0x80+08到0x80+0F是下半屏的坐标。水平坐标每个两字节,先写入的数据填充在高字节。垂直坐标只有0x80+00到0x80+1F,图中上半截0x80+00到0x80+1F是上半屏的垂直地址,另外的那部分一样的是下半屏垂直地址。每个垂直地址只确定一排,所以水平和垂直地址不能确定某个点的位置,只能确定某个两字节的位置,通过写进2字节数据确定点亮某个点或几个点。比如我们写入lcd_wcmd(0x81;(垂直地址)lcd_wcmd(0x80)(水平地址); 这就是说我们将在图中水平坐标00,垂直坐标01的位置(红圈处)输入数据。

                                   

                

 

                           

 

  • 8
    点赞
  • 42
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值