lcd1602液晶屏换行为什么是0xb0,而不是0xC0,写过1602的大虾帮...

2020-01-30 13:52发布


void writecode(uchar ins)                                    //向液晶控制模块写命令
     {
          uchar xdata t;
          uint xdata j;        
          for(j=0;j<500;j++);        
          virt_port|=ins&0xf0;                                        //取高字节向1602写数据
          writelcd(virt_port);                                        //先写高4位后再写低4位 这是在选择四个数据线的时候     
          virt_port|=0x08;                                                  
          writelcd(virt_port);                                        //使能E脚为高电平
          virt_port&=~0x08;                                       
          writelcd(virt_port);                                        //使能E脚为低电平
          t=ins<<4;            
          virt_port|=t&0xf0;                                  //取低字节向1602写数据
          writelcd(virt_port);
          virt_port|=0x08;                                                //使能E脚为高电平
          writelcd(virt_port);
          virt_port&=~0x08;                                            //使能E脚为低电平
          writelcd(virt_port);
          virt_port=0;
          writelcd(virt_port);
}
void lcdchar (void)
{   
     uint i,j,k;
      writedata(tab1[i]);
       for(j=0;j<1000;j++);
       for(k=0;k<1000;k++);
       for(k=0;k<5000;k++);
       for(k=0;k<1000;k++);
       writecode(0xb0);                       // 换行                  
      for(j=0;j<5000;j++);                                       
      for(k=0;k<5000;k++);
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。