LCD1602清屏指令导致光标左移 指令失效,光标右移指令不受影响。所以如果想光标左移,把命令写到清屏指令后面

void LcdInitiate(void)
{
   delay(15);             //延时15ms,首次写指令时应给LCD一段较长的反应时间
   WriteInstruction(0x38);  //显示模式设置:16×2显示,5×7点阵,8位数据接口
    delay(5);   //延时5ms 
    WriteInstruction(0x38);
    delay(5);
    WriteInstruction(0x38);
    delay(5);
    WriteInstruction(0x0c);  //0f显示模式设置:显示开,有光标,光标闪烁      //0c显示开,无光标,光标无闪烁 2020.3.31
    delay(5);
    WriteInstruction(0x0e);
//    WriteInstruction(0x06);  //显示模式设置:光标右移,字符不移
    WriteInstruction(0x04);  //显示模式设置:光标左移,字符不移    //测试用2020.3.31 效果好像没有左移还是右移

    delay(5);
    WriteInstruction(0x01);  //清屏幕指令,将以前的显示内容清除      //这条指令导致光标左移 指令失效,注释掉,光标左移就能实现。光标右移指令不受影响2020.4.3
    delay(5);
//    WriteInstruction(0x04); //写到这个位置就可以实现光标左移的命令2020.4.3
//    WriteInstruction(0x0e);
//    WriteInstruction(0x04);      //写到这个位置就可以实现光标左移的命令2020.4.3
 }

发布了110 篇原创文章 · 获赞 119 · 访问量 12万+

猜你喜欢

转载自blog.csdn.net/qq_25814297/article/details/105294412