液晶显示字符代码

2019-08-14 02:07发布

今天根据字模软件生产数组的方式写了段显示字符的代码,试了一下居然成功了,以前学51的时候都是直接用别人,也算是看到了自己的成长,真开心。

void write_char(unsigned char *data,int x,int y)
{
        char i,j;
        lcd_wr_cmd(0x2c);
        for(i=0;i<8;i++)
        {
                for(j=0;j<16;j++)
                {
                        if(j<8)
                        {
                                if(data[2*i]&0x80)
                                {
                                        lcd_set_point(0xffff,x+i,y+j);//画点函数,lcd_set_point(颜 {MOD},横坐标,纵坐标)
                                }
                                data[2*i]<<=1;
                        }
                        else
                        {
                                if(data[2*i+1]&0x80)
                                {
                                        lcd_set_point(0xffff,x+i,y+j);
                                }
                                data[2*i+1]<<=1;
                        }
                }
        }
}

学习液晶这一块没有用现成的代码,都是一点点的琢磨出来的,遇到问题的时候就拿原子哥的代码一点点的去掉不用的函数,执行通过后对比自己的代码发现问题,感觉学到了很多东西。

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
1条回答
17854288608
1楼-- · 2019-08-14 03:47
发现bug了,这个函数将数据传入后无法显示第二遍,因为函数内将数组的数清零了,我在函数内定义了个数组,函数开始讲传上来的数组赋值给定义的新数组,这样就解决了。不知道大神们有什么好的算法解决这个问题。

一周热门 更多>