微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > MCU和单片机设计讨论 > 为什么12864上下不能连着写数据?

为什么12864上下不能连着写数据?

时间:10-02 整理:3721RD 点击:
void display_picture(uchar *bmp)
{
uchar i,j;
   write_command(0x34);        //写数据时,关闭图形显示
   for(i=0;i<32;i++)
   {
     write_command(0x80+i);    //先写入水平坐标值
     write_command(0x80);      //写入垂直坐标值
     for(j=0;j<16;j++)   //再写入两个8位元的数据
     write_data(*bmp++);   
     delays(1);
   }
  for(i=0;i<32;i++)
  {
    write_command(0x80+i);
    write_command(0x88);
    for(j=0;j<16;j++)
write_data(*bmp++);
delays(1);
  }
  write_command(0x36);
}
上下地址不是连续的吗,应该可以这样一起写吧
void display_picture(uchar *bmp)
{
uchar i,j;
   write_command(0x34);        //写数据时,关闭图形显示
   for(i=0;i<32;i++)
   {
     write_command(0x80+i);    //先写入水平坐标值
     write_command(0x80);      //写入垂直坐标值
     for(j=0;j<32;j++)   //再写入两个8位元的数据
     write_data(*bmp++);   
     delays(1);
  write_command(0x36);
}
但是结果不对,这是为什么,求解释?

你是用它做示波器么

可能两次写入数据之间处理需要时间

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top