极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11140|回复: 5

为什么我用画点程序在12864上画点出现花屏呢?大神快救我,着急啊

[复制链接]
发表于 2015-4-26 23:50:57 | 显示全部楼层 |阅读模式
void main()
{
        int i;
        init();        
        while(1)
        {        
                for(i=0;i<10;i++)        
                {
                        put_point(i,1);
                        delay10ms(20);        
                }
                while(1);
        }
}
void put_point(uchar x,uchar y)
{
    uint bt=0,read=0;
    uchar x_adr,y_adr,h_bit,l_bit;
    y_adr=0x80+y%32;            //计算Y轴的地址,应为纵坐标有64个,所有对32求余,当Y大于31时,Y的坐标是下半屏的。
    if(y>31) //计算X轴的地址当Y大于31时X的地址在下半屏,从0X88开始,小于31时X的地址是在上半屏,从0X80开始
        x_adr=0x88+x/16;        
    else
        x_adr=0x80+x/16;
    bt=0x8000>>(x%16); //求这个点到底是在哪个点
    write_cmd(0x34);
    write_cmd(0x34);
    write_cmd(y_adr);     //读取数据的时候要先写入所取数据的地址
    write_cmd(x_adr);
    read_data();         //读取的第一个字节不要,
    read=read_data();     //从第二个字节开始接收。
    read<<=8;
    read|=read_data();
    bt=bt|read;
    h_bit=bt>>8;
    l_bit=bt;
    write_cmd(y_adr);     //写入点的时候,重新写入地址,因为地址已经改变。
    write_cmd(x_adr);
    write_data(h_bit);
    write_data(l_bit);
    write_cmd(0x36);         //开显示
    write_cmd(0x30);     //转回基本指令集        
}
回复

使用道具 举报

发表于 2015-4-27 14:12:36 | 显示全部楼层
看一下     有图片吗?
回复 支持 反对

使用道具 举报

发表于 2015-4-27 14:12:59 | 显示全部楼层
你的12864是带字库的吗?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-4-28 15:48:42 | 显示全部楼层
suoma 发表于 2015-4-27 14:12
看一下     有图片吗?

图片发不上去,,明明才2m,说超过限制
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-4-28 15:49:05 | 显示全部楼层
suoma 发表于 2015-4-27 14:12
看一下     有图片吗?

图片发不上去,,明明才2m,说超过限制
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-4-28 15:53:54 | 显示全部楼层
suoma 发表于 2015-4-27 14:12
你的12864是带字库的吗?

是的是的,有带字库。
回复 支持 反对

使用道具 举报

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

本版积分规则 需要先绑定手机号

Archiver|联系我们|极客工坊

GMT+8, 2024-4-24 00:14 , Processed in 0.044224 second(s), 18 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2021, Tencent Cloud.

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