⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 st7920.c

📁 这是关于msp430各个模块的程序源代码
💻 C
字号:
#include "..\st7920.h"

void init_lcd (void)
{
  wr_lcd (0,0x30);  /*30---基本指令动作*/   
  wr_lcd (0,0x01);  /*清屏,地址指针指向00H*/
  LCDDelay (100);
  wr_lcd (0,0x06);  /*光标的移动方向*/
  wr_lcd (0,0x0c);  /*开显示,关游标*/
}

/*--------------清DDRAM------------------*/
void clrram (void)
{
  wr_lcd (0,0x30);
  wr_lcd (0,0x01);
  LCDDelay (180);
}
void wr_lcd (uchar flag,uchar content)
{
  uchar  dat,i;
  
  dat=content;
  
  CS_H;
  SCLK_H;
  SID_H;  
   
  for(i = 0;i < 5;i ++)
	  {
	   SCLK_L;
	   SCLK_H;  
	  }
	  
  SID_L; 
  SCLK_L;  
  SCLK_H;
   
  if(flag)
    SID_H;   
  else
    SID_L; 
      
  SCLK_L;    
  SCLK_H;    
  SID_L;    
  SCLK_L;    
  SCLK_H;     //sclk变高
  
  for (i=8; i>4; i--)
   {
     uchar temp = 1 << (i-1); 
         
      if (dat & temp) 
       SID_H;
      else                                             
       SID_L;
		  SCLK_L;      
		  SCLK_H;
   }
    SID_L;
    for(i=0;i<4;i++)
    {
     SCLK_L;
     SCLK_H;      
    }
    for (i=4; i>0; i--)
    {
      uchar temp = 1<< (i-1);   
      if (dat&temp) 
        SID_H;
      else                                             
        SID_L;
        SCLK_L;      
        SCLK_H;
    }
    SID_L;
    for(i=0;i<4;i++)
    {
      SCLK_L;
      SCLK_H;      
    }
    CS_L;
}

void LCDDelay (uint us)   //delay time
{
  while(us--);
}


/*---------------显示汉字或字符----------------*/
void chn_disp (uchar first ,uchar lie,uchar *chn)
{
    wr_lcd (0,0x30);
	
	if (lie<3)
	{
	  wr_lcd (0, 0x70+first+lie*16);
	}
	else 
	{
	  wr_lcd (0, 0x58+first+lie*16);
	} 						 
  
    while(*chn != '\0')
   {
     wr_lcd (1,*chn++);
   }
  
}

⌨️ 快捷键说明

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