找回密码
 立即注册

QQ登录

只需一步,快速开始

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

STM32 TFTLCD显示BMP图像

[复制链接]
跳转到指定楼层
楼主
ID:489652 发表于 2020-1-3 07:52 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
10黑币
弱弱地问一句,TFTLCD显示BMP图像时,假设图像是100*100像素,设定的宽度和高度是50*25,是怎么打点的,省略一些点不打吗


正点原子的这行代码有坛友研究吗,还望赐教
                                if(rgb==color_byte) //水平方向读取到1像素数数据后显示
                                {            
                                        if(x<picinfo.ImgWidth)                                                                             
                                        {        
                                                realx=(x*picinfo.Div_Fac)>>13;//x轴实际值
                                                if(is_element_ok(realx,realy,1)&&yok)//符合条件
                                                {                                                                                                           
                                                        pic_phy.draw_point(realx+picinfo.S_XOFF,realy+picinfo.S_YOFF-1,color);//显示图片         
                                                }                                                                              
                                        }
                                        x++;//x轴增加一个像素
                                        color=0x00;
                                        rgb=0;                    
                                }
                                countpix++;//像素累加
                                if(countpix>=rowlen)//水平方向像素值到了.换行
                                {                  
                                        y--; //从下到上
                                        if(y==0)        break;                        
                                        realy=(y*picinfo.Div_Fac)>>13;//实际y值改变         
                                        if(is_element_ok(realx,realy,0))yok=1;//此处不改变picinfo.staticx,y的值         
                                        else yok=0;
                                        x=0;
                                        countpix=0;
                                        color=0x00;
                                        rgb=0;
                                }         
                        }                 
                        res=f_read(f_bmp,databuf,readlen,(UINT *)&br);//读出readlen个字节
                        if(br!=readlen)readlen=br;        //最后一批数据                  
                        if(res||br==0)break;                //读取出错
                        bmpbuf=databuf;
                          count=0;
                }  

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

使用道具 举报

沙发
ID:489652 发表于 2020-1-5 10:40 | 只看该作者
对,省略一些点不打,按比例决定多少点打一个
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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