4894|8

1977

帖子

0

TA的资源

五彩晶圆(初级)

楼主
 

继解决画直线问题,今晚再搞定12864画任意方框大小图片的问题 [复制链接]

上次画完直线后,白天就没有时间弄了,今天晚上又拿出来,想到上一次画图都是整屏画,如果要画一个小时钟界面,要怎么办呢,于是就想到搞个画任意大小的方框的图片就OK了。开始动手,写到将点数据一一对应显示的时候,突然发现真正的问题来了:如果这个框不是8bit对齐的怎么办,这就意味着由取模软件取得的8bit数据就无法一次性写完一个字节,而且如果从第一个设定的起点开始一个字节一个字节的画,那么剩下的不满8bit的那几位要怎么办,还有如何控制换行,想了好久好久,代码写到这就卡住了。于是满屋子来回走,一边思考,我想这个肯定是可以解决的,只是这个程序的流程要怎么走才能兼顾不破坏其他点数据的情况能画出正确的图,想啊想,我才猛然想到,一次写入数据必须是8bit啊,那我只需要确定一行有多少个8bit和多出来多少个bit,将多出的那部分的点跳过不操作就OK了?一下问题就迎刃而解,20几行代码就解决了。马上用电脑自带的画图工具随便画了两个图,显示正常,又让我激动了一会,嘿嘿~~上个图:

最新回复

楼主有时间吧源码传上来交流下吧  详情 回复 发表于 2015-9-11 16:35

点评

加油。:victory:  详情 回复 发表于 2013-12-18 12:49

赞赏

1

查看全部赞赏

 
点赞 关注

回复
举报

41

帖子

0

TA的资源

一粒金砂(中级)

沙发
 
顶楼主啊,,20几行代码就搞定了,能不能把代码贴上来看看啊

点评

这个函数是只有这么多代码,当然其中还有调用画点程序的,我先实现了功能,代码还没有来得及整理和添加注释什么的,先将就看吧,代码如下: LCD_DispPic_Any(uchar x,uchar y,uchar width,uchar height,const ucha  详情 回复 发表于 2013-12-18 12:16
 
 

回复

1977

帖子

0

TA的资源

五彩晶圆(初级)

板凳
 

回复 沙发el756 的帖子

这个函数是只有这么多代码,当然其中还有调用画点程序的,我先实现了功能,代码还没有来得及整理和添加注释什么的,先将就看吧,代码如下:
LCD_DispPic_Any(uchar x,uchar y,uchar width,uchar height,const uchar *s,uchar color)
{
        if((x > 127)||(y > 63))
                return;
        int i,j,m,n,k;
        uchar tmp = 7;
        m = ((width - 1) >> 3) + 1;
        for(i = 0;i < height;i++)
        {
                for(j = 0;j < m;j++)
                {
            if((m - j) == 1)
                    k = (width - 1) % 8 + 1;
            else k = 8;
                        for(n = 0;n < k;n++)
            {
                    tmp = ((1 << n) & (*s)) >> n;
                    if(tmp == 1)
                    {
                            LCD_Display_Dot(x + j*8 + n,y + i,1);
                    }
                    else LCD_Display_Dot(x + j*8 + n,y + i,0);
            }
            s++;
                }
        }
 
 
 

回复

396

帖子

5

TA的资源

纯净的硅(中级)

4
 

回复 楼主bobde163 的帖子

加油。

点评

:) 谢谢  详情 回复 发表于 2013-12-18 17:39
 
个人签名一别四五年,变化万千。https://home.eeworld.com.cn/static/image/smiley/comcom/5.gif[/img]
 
 

回复

1977

帖子

0

TA的资源

五彩晶圆(初级)

5
 

回复 4楼jqh_111 的帖子

谢谢
 
 
 

回复

17

帖子

0

TA的资源

一粒金砂(中级)

6
 
询问一下:你的液晶是 串行方式连接 还是 并行4线方式连接 的?
网上得到一个结论 ST7920带字库串行方式无法读数据……对这个问题我疑惑比较久了
 
 
 

回复

63

帖子

0

TA的资源

一粒金砂(中级)

7
 
我是把原来写入的数据读出来,然后对比下,只更新变化的,就可以画图了,楼主是怎么实现的?
 
 
 

回复

63

帖子

0

TA的资源

一粒金砂(中级)

8
 
楼主有时间吧源码传上来交流下吧
 
 
 

回复

1977

帖子

0

TA的资源

五彩晶圆(初级)

9
 
这是我自己写的12864的相关驱动在CCS下的测试工程,包含有画直线,显示图片等功能

12864_Driver.zip

78.96 KB, 下载次数: 10

 
 
 

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

查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条
【干货上新】电源解决方案和技术第二趴 | DigiKey 应用探索站
当月好物、电源技术资源、特色活动、DigiKey在线实用工具,干货多多~

查看 »

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

 
机器人开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网 14

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表