st7920.txt

来自「这是一个ST7920液晶的串行数据发送程序如果需要发送地址的话就改动RS位为1。」· 文本 代码 · 共 84 行

TXT
84
字号
/*********************************************************************  
* 函 数 名: void lcdsend(uchar a)
* 功能描述: 将a数据送到LCD液晶
* 函数说明: 
* 调用函数: 无 
* 全局变量: 
* 局部变量: uchar i 
* 输    入: a
* 返    回: 无
* 设 计 者:yxd                        日期:2005-8-1
* 修 改 者:yxd                        日期:2005-8-1
* 版    本:v1.0
***********************************************************************/
void lcdsend(uchar a)  //lcd的发送程序//
   {
     uchar i,b;
	 b=a;

     sclk=0;
     sid=0;

     sid=1;       //起始信号 SID置高电位//
      sclk=1;     //连续5个高电位 
     sclk=0;
      sclk=1;
     sclk=0;
      sclk=1;
     sclk=0;
      sclk=1;
     sclk=0;
      sclk=1;
	 sclk=0;     //时钟清零

     sid=0;      //传RW位
	  sclk=1;    //时钟高
	 sclk=0;     //时钟低
 
     sid=0;      //传RS位
      sclk=1;    //时钟高
	 sclk=0;     //时钟低
     
	  sclk=1;    //时钟高
	 sclk=0;     //时钟低


     for(i=0;i<4;i++)      //发送高4位
	   {
	     sid=(a&0x80)?1:0;
		 sclk=1;
		 sclk=0;
         a=a<<1;
	   }

	   sid=0;       //发送4个零
	    sclk=1;
       sclk=0;
	    sclk=1;
       sclk=0;
	    sclk=1;
       sclk=0;
	    sclk=1;
       sclk=0;

    for(i=0;i<4;i++)   //发送低4位
       {
         sid=(b&0x08)?1:0;
         sclk=1;
         sclk=0;
         b=b<<1;
       }
  
    sid=0;        //发送4个零         
      sclk=1;
    sclk=0;
      sclk=1;
    sclk=0;
      sclk=1;
    sclk=0;
      sclk=1;
    sclk=0;

    delaya();  //延时
  }

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?