原创 51单片机12864打点程序

2009-8-31 14:41 2998 8 8 分类: MCU/ 嵌入式

 


void curve(unsigned char xlable,unsigned char ylable,bit dot)
{
 unsigned char H[1]={0};//读RAM寄存
 unsigned char L[1]={0};
 unsigned char xbuf;


 w_com(0x01);
 w_com(0x34);
 w_com(0x36); //功能设置:一次送8位数据,扩展指令集


 xlable=xlable+xoffset;//求相对零点
 ylable=ylable+yoffset;


 if(xlable<0)xlable=-1;//超出边界处理
 if(ylable<0)ylable=0;
 if(ylable>64)ylable=65;
 
 xbuf=xlable%16;
 xlable=xlable/16;
 if(ylable>32)//上半屏
 {
  ylable=64-ylable;//切换上下屏
  xbuf=15-xbuf;//x坐标归位
  w_com(0x80|ylable); //输入垂直地址
  w_com(0x80|xlable); //输入水平地址
  read_RAM();//屏蔽
  if(xbuf>7)
  {
   if(dot==0)
    H[0]=read_RAM()&(~(1<<xbuf-8));//擦点
   else
    H[0]=read_RAM()|1<<xbuf-8;//插点,需要打的点
    L[0]=read_RAM();
  }
  else
  {
   H[0]=read_RAM();//插点,需要打的点
   if(dot==0)
    L[0]=read_RAM()&(~(1<<xbuf));//擦点
   else
    L[0]=read_RAM()|1<<xbuf;
  }
  w_com(0x80|ylable); //输入垂直地址
  w_com(0x80|xlable); //输入水平地址
  w_byte(H[0]);
  w_byte(L[0]);
 }
 else //下半屏
 {
  ylable=32-ylable;
  xbuf=15-xbuf;//x坐标归位
  w_com(0x80|ylable); //输入垂直地址
  w_com(0x88|xlable); //输入水平地址
  read_RAM();//屏蔽
  if(xbuf>7)
  {
   if(dot==0)
    H[0]=read_RAM()&(~(1<<xbuf-8));//擦点
   else
    H[0]=read_RAM()|1<<xbuf-8;//插点,需要打的点
   L[0]=read_RAM();
  }
  else
  {
   H[0]=read_RAM();//插点,需要打的点
   if(dot==0)
    L[0]=read_RAM()&(~(1<<xbuf));//擦点
   else
   L[0]=read_RAM()|1<<xbuf;
  }
  w_com(0x80|ylable); //输入垂直地址
  w_com(0x88|xlable); //输入水平地址
  w_byte(H[0]);
  w_byte(L[0]);
 }
}


//清除屏幕
void BMP_clear( void )
{
     unsigned char i,j;unsigned char L[1]={0};
     w_com(0x34);      //8Bit扩充指令集,即使是36H也要写两次
     w_com(0x36);      //绘图ON,基本指令集里面36H不能开绘图
     for(i=0;i<32;i++)            //12864实际为256x32
     {
   
           w_com(0x80|i);   //行位置
           w_com(0x80);      //列位置
           for(j=0;j<32;j++)            //256/8=32 byte
              w_byte(L[0]);
 }
}


 


我的淘宝店


http://item.taobao.com/auction/item_detail.jhtml?item_id=a14f4b1dd0cc7a156ffb12c84491f3b7&x_id=0db2


QQ:297008211

PARTNER CONTENT

文章评论0条评论)

登录后参与讨论
EE直播间
更多
我要评论
0
8
关闭 站长推荐上一条 /3 下一条