单片机c51的1602显示

/*输入参数:要写入的数据

LCM_E = 0; //若晶振速喥太高可以在这后加小的延时

/*输入参数:要写入的指令

/*输出参数:1602A返回的数据

/*输出参数:1602A返回的状态

/*函数功能:1602A按指定位置显示一个字符

/*输入参数:X唑标 Y坐标 要显示的字符

/*函数功能:1602A按指定位置显示一个字符

/*输入参数:X坐标 Y坐标 要显示字符串的首地址

JB 我们将在第一时间进行核实处理。

}

  工业字符型液晶1602是指LCD显示嘚内容为16X2,即可以显示两行每行16个字符。

  RS:寄存器选择输入端

  RS=1:指向数据寄存器

  RS=0:指向指令寄存器

  RW:读写控制输入端

  RW=0:写操作 RW=1:读操作

  E:使能信号输入端

  读操作时高电平有效;

  写操作时,下降沿有效;

  /*对于延时很短的要求在us级嘚,采用“_nop_”函数这个函数相当汇编NOP指令,延时几微秒NOP指令为单周期指令,可由晶振频率算出延时时间对于12M晶振,延时1uS*/

  //注意:具体为哪一个IO口由你自己的接线来定,并不是一定要这样写!

  //为什么要判忙

  /*因为LCD1602控制芯片也是一个CPU,它在处理上位机发来的某些指令的时候耗时较长。如复位命令全屏清除命令等。另外LCD1602的CPU速度较慢,上位机较快时LCD1602CPU来不及完成上条命令,会对后续命令不予理睬这样就造成了命令序列不能正确完整地到达LCD1602CPU,以至于显示不正常*/

  /*状态字为temp(8位2进制数)的最高位,最高位为1表示禁止读写为0表示允许读写,即temp&0x80得1表示忙得0表示不忙*/

  /*在lcd1602的资料中,读写操作都有对应的时序图想要理解lcd1602的具体工作流程还得认真研究时序圖!*/

  E=1; //由时序图知,使能端为高电平时才允许数据交换

  E=0; //由时序图知使能端在完成数据交换后要拉低

  其实,LCD1602还有很多很好玩的指令比如让字符左移右移,大家可以好好看一看lcd1602资料中的相关指令自己动手去实践一下,才会有更深刻的体会

}

我要回帖

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信