求助oled显示图片,自己描点的。

2019-10-15 04:27发布

本帖最后由 aiyeba 于 2017-2-7 19:23 编辑

RBG是 2个字节描一个点


于是我这么想的  x=0,y=0;

               u16 x0=x;
               u16 y0=y;
                for(pos=0;pos<320;pos++)
                {
                        for(t=0;t<240*2;t++)
                        {
                           temp=gImage[pos*240+t]+gImage[pos*240+t+1]*256;        
                           t++;                                
                           LCD_Fast_DrawPoint(x,y,temp);
                          x++;
                        }
                        x=x0;
                        y++;
                }


但是图片出来差一点点。        

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
14条回答
aiyeba
1楼-- · 2019-10-16 01:26
Akatsuki_lim 发表于 2017-2-8 08:55
这样你的x坐标也会偏移两次

不会的,我for循环每次加2,所以最后x++只是执行 了240次
hgr211
2楼-- · 2019-10-16 05:39
这样子,写子程序,自己也不好看,过段时间,估计自己都要理解好久,才能看明白,基本的能不能<<8 啊,*256的,看的吐血。明白你的意思了,一行应该是480个字节,pos*240你一行是240个字节了,下一行,应该是480开始,但是你是240开始的,pos应该也要+2,不是t++
hgr211
3楼-- · 2019-10-16 10:46
不是pos++,是+2,与那个t一样的道理,
aiyeba
4楼-- · 2019-10-16 15:15
 精彩回答 2  元偷偷看……
hgr211
5楼-- · 2019-10-16 15:55
gImage的,一行应该是480个字节,所以pos你必须是+2,然后小于640,和t的那个参数一样的方式
hgr211
6楼-- · 2019-10-16 20:04
直接将240改为480,也可以

一周热门 更多>