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

📄 mainlcd.c

📁 MSP430F135与OCM12232c-2的串行显示测试程序。文字与图形分层显示。
💻 C
字号:
#include <msp430x13x.h>
#include "LCD.h"

#define uint  unsigned int
#define uchar unsigned char
const uchar no[]=
{
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
};

const uchar  num0[]=
{
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x06,0x00,0x00,0x1F,0x80,0x00,0x3F,0x80,0x00,0x31,0xC0,0x00,0x70,0xC0,0x00,0x70,0xA0,0x00,0x60,0x60,0x00,0x60,0x60,0x00,0x60,0x60,0x00,0x60,0x60,0x00,0xE0,0x60,0x00,0xE0,0x60,0x00,0x60,0x60,0x00,0x60,0x60,0x00,0x60,0x60,0x00,0x60,0x60,0x00,0x60,0xE0,0x00,0x70,0xC0,0x00,0x30,0xC0,0x00,0x39,0xC0,0x00,0x1F,0x80,0x00,0x0F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
};
const uchar num1[]=
{
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x02,0x00,0x00,0x02,0x00,0x00,0x06,0x00,0x00,0x3E,0x00,0x00,0x3E,0x00,0x00,0x3E,0x00,0x00,0x06,0x00,0x00,0x06,0x00,0x00,0x06,0x00,0x00,0x06,0x00,0x00,0x06,0x00,0x00,0x06,0x00,0x00,0x06,0x00,0x00,0x06,0x00,0x00,0x06,0x00,0x00,0x06,0x00,0x00,0x06,0x00,0x00,0x06,0x00,0x00,0x06,0x00,0x00,0x06,0x00,0x00,0x06,0x00,0x00,0x06,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
};
const uchar num2[]=
{
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x07,0x00,0x00,0x1F,0x80,0x00,0x3F,0xC0,0x00,0x38,0xC0,0x00,0x30,0xE0,0x00,0x30,0xE0,0x00,0x70,0xE0,0x00,0x70,0xE0,0x00,0x00,0xE0,0x00,0x00,0xC0,0x00,0x01,0xC0,0x00,0x03,0x80,0x00,0x07,0x00,0x00,0x0F,0x00,0x00,0x0E,0x00,0x00,0x1C,0x00,0x00,0x38,0x00,0x00,0x38,0x00,0x00,0x70,0x00,0x00,0x7F,0xE0,0x00,0x7F,0xE0,0x00,0x7F,0xE0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
};
const uchar num3[]=
{
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x06,0x00,0x00,0x1F,0x80,0x00,0x3F,0xC0,0x00,0x31,0xC0,0x00,0x70,0xC0,0x00,0x70,0xE0,0x00,0x70,0xC0,0x00,0x00,0xC0,0x00,0x00,0xC0,0x00,0x03,0x80,0x00,0x07,0x80,0x00,0x07,0x80,0x00,0x01,0xC0,0x00,0x00,0xE0,0x00,0x00,0xE0,0x00,0x60,0xE0,0x00,0x60,0xE0,0x00,0x60,0xE0,0x00,0x70,0xC0,0x00,0x39,0xC0,0x00,0x3F,0x80,0x00,0x1F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
};
const uchar num4[]=
{
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x80,0x00,0x03,0x80,0x00,0x03,0x80,0x00,0x07,0x80,0x00,0x07,0x80,0x00,0x0F,0x80,0x00,0x0D,0x80,0x00,0x0D,0x80,0x00,0x1D,0x80,0x00,0x19,0x80,0x00,0x31,0x80,0x00,0x31,0x80,0x00,0x71,0x80,0x00,0x61,0x80,0x00,0xFF,0xE0,0x00,0xFF,0xE0,0x00,0x7F,0xE0,0x00,0x01,0x80,0x00,0x01,0x80,0x00,0x01,0x80,0x00,0x01,0x80,0x00,0x01,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
};
const uchar num5[]=
{
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0xC0,0x00,0x3F,0xE0,0x00,0x3F,0xE0,0x00,0x30,0x00,0x00,0x30,0x00,0x00,0x30,0x00,0x00,0x30,0x00,0x00,0x7F,0x00,0x00,0x7F,0x80,0x00,0x79,0xC0,0x00,0x70,0xC0,0x00,0x60,0xE0,0x00,0x00,0xE0,0x00,0x00,0xE0,0x00,0x00,0xE0,0x00,0x60,0xE0,0x00,0x60,0xE0,0x00,0x60,0xE0,0x00,0x70,0xC0,0x00,0x39,0xC0,0x00,0x3F,0x80,0x00,0x1F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
};
const uchar num6[]=
{
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x07,0x00,0x00,0x0F,0x80,0x00,0x1F,0xC0,0x00,0x18,0xC0,0x00,0x30,0xE0,0x00,0x30,0xE0,0x00,0x30,0x00,0x00,0x72,0x00,0x00,0x7F,0x80,0x00,0x7F,0xC0,0x00,0x79,0xC0,0x00,0x70,0xE0,0x00,0x70,0xE0,0x00,0x70,0xE0,0x00,0x70,0xE0,0x00,0x70,0xE0,0x00,0x30,0xE0,0x00,0x30,0xE0,0x00,0x30,0xE0,0x00,0x39,0xC0,0x00,0x1F,0xC0,0x00,0x0F,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
};
const uchar num7[]=
{
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0xC0,0x00,0x7F,0xE0,0x00,0x7F,0xE0,0x00,0x00,0xE0,0x00,0x00,0xC0,0x00,0x00,0xC0,0x00,0x01,0xC0,0x00,0x01,0x80,0x00,0x01,0x80,0x00,0x01,0x80,0x00,0x03,0x80,0x00,0x03,0x80,0x00,0x03,0x00,0x00,0x03,0x00,0x00,0x07,0x00,0x00,0x07,0x00,0x00,0x06,0x00,0x00,0x06,0x00,0x00,0x0E,0x00,0x00,0x0E,0x00,0x00,0x0E,0x00,0x00,0x0C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
};
const uchar num8[]=
{
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x06,0x00,0x00,0x1F,0x80,0x00,0x3F,0x80,0x00,0x31,0xC0,0x00,0x70,0xC0,0x00,0x70,0xC0,0x00,0x70,0xE0,0x00,0x70,0xC0,0x00,0x30,0xC0,0x00,0x39,0x80,0x00,0x1F,0x80,0x00,0x1F,0x80,0x00,0x31,0xC0,0x00,0x70,0xE0,0x00,0x60,0xE0,0x00,0x60,0xE0,0x00,0x60,0xE0,0x00,0x60,0xE0,0x00,0x70,0xE0,0x00,0x39,0xC0,0x00,0x3F,0xC0,0x00,0x1F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
};
const uchar num9[]=
{
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0E,0x00,0x00,0x1F,0x80,0x00,0x3F,0x80,0x00,0x31,0xC0,0x00,0x70,0xC0,0x00,0x70,0xC0,0x00,0x70,0xE0,0x00,0x70,0xE0,0x00,0x70,0xE0,0x00,0x70,0xE0,0x00,0x70,0xE0,0x00,0x31,0xE0,0x00,0x3F,0xE0,0x00,0x1F,0xE0,0x00,0x04,0xE0,0x00,0x00,0xE0,0x00,0x60,0xC0,0x00,0x70,0xC0,0x00,0x71,0xC0,0x00,0x3B,0x80,0x00,0x3F,0x80,0x00,0x1F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
};


const uchar  tab1[]={
"内置二级字库可在"
"任意位置反白显示"
};

const uchar  tab3[]={
"金鹏科技有限公司"
"Golden Palm TECH"
};

const uchar tab5[]={
/*--  调入了一幅图像:F:\梁\画图\HOCO12832.bmp  --*/
/*--  宽度x高度=128x32  --*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x1E,0x00,0x00,0x00,0x00,0x00,0x07,0xF0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x7F,0x80,0x00,0x00,0x00,0x00,0x18,0x0C,0x00,0x00,0x01,0x00,0x00,0x00,0x00,
0x01,0xFF,0x80,0x00,0x00,0x00,0x00,0x20,0x00,0x00,0x00,0x13,0x10,0x03,0xFE,0x00,
0x03,0xFF,0xC0,0x00,0x00,0x00,0x00,0x58,0x00,0x00,0x00,0x3F,0x30,0x1F,0xFF,0xC0,
0x03,0xFF,0xE0,0x00,0x00,0x00,0x00,0x8C,0x03,0xF0,0x00,0x7F,0xE0,0x7C,0x01,0xE0,
0x03,0xFF,0xF0,0x00,0x00,0x00,0x01,0x36,0x06,0xC0,0x00,0x5F,0xC0,0xFF,0xFC,0x60,
0x01,0xFF,0xF0,0x00,0x00,0x00,0x02,0x1B,0x0F,0x80,0x00,0xFF,0x01,0xFE,0x0F,0x30,
0x00,0xEF,0xF0,0x00,0x00,0x00,0x02,0x6D,0x9F,0x00,0x00,0x3E,0x03,0xFF,0xF1,0x90,
0x00,0xFF,0xF8,0x00,0x00,0x00,0x04,0x36,0xFE,0x00,0x01,0xFF,0x07,0xFF,0xFC,0x90,
0x00,0xEF,0xFF,0xFF,0x80,0x00,0x04,0xDB,0x7E,0x00,0x03,0xFF,0x87,0xFF,0xFC,0xD0,
0x00,0x0F,0xFF,0xFF,0xC0,0x00,0x04,0x6D,0xFC,0x00,0x07,0xFF,0x8F,0xFF,0xFE,0x50,
0x00,0x0F,0xFF,0xFF,0xE0,0x00,0x04,0x36,0xFC,0x10,0x07,0xFF,0x8F,0xFF,0xFE,0x90,
0x00,0x0F,0xFF,0xFF,0xE0,0x00,0x04,0x1B,0xF8,0x10,0x07,0xFF,0xCF,0xFF,0xFE,0x80,
0x00,0x0F,0xFF,0xFF,0xF0,0x00,0x04,0x0F,0xF8,0x10,0x07,0xFF,0xFF,0xFF,0xFA,0x00,
0x00,0x07,0xFF,0xFF,0xF0,0x00,0x04,0x07,0xF0,0x10,0x07,0xFF,0xFF,0xFF,0xFA,0x00,
0x00,0xFF,0xFF,0xFF,0xF8,0x00,0x02,0x03,0xF0,0x20,0x07,0xFF,0xFF,0xFF,0xBA,0x00,
0x00,0xFD,0xFF,0xFF,0xFC,0x00,0x02,0x03,0xF0,0x20,0x03,0xFF,0xFF,0xDF,0xB8,0x00,
0x00,0xC1,0xC0,0x3F,0xFC,0x00,0x01,0x01,0xE0,0x40,0x00,0xFF,0xFF,0xDF,0xB0,0x00,
0x00,0x81,0xC0,0x3F,0xCE,0x00,0x00,0x81,0xE0,0x80,0x00,0x7F,0xFF,0xDF,0xA0,0x00,
0x00,0x81,0x80,0x1D,0xCF,0x00,0x00,0x41,0xE1,0x00,0x00,0x3F,0xFF,0x9B,0x00,0x00,
0x01,0x83,0x80,0x1F,0xC7,0x80,0x00,0x21,0xE2,0x00,0x00,0x1F,0xFD,0xB6,0x00,0x00,
0x01,0xC3,0x00,0x0E,0xE6,0x80,0x00,0x19,0xEC,0x00,0x00,0x07,0xFE,0x20,0x00,0x00,
0x00,0xC3,0x00,0x07,0x67,0x40,0x00,0x07,0xF0,0x00,0x00,0x03,0x3E,0x00,0x00,0x00,
0x00,0x02,0x00,0x03,0xE7,0xA0,0x00,0x00,0x00,0x00,0x00,0x02,0x8E,0x00,0x00,0x00,
0x00,0x06,0x00,0x03,0x83,0x00,0x00,0x00,0x00,0x00,0x00,0x02,0x03,0x00,0x00,0x00,
0x00,0x06,0x00,0x07,0x03,0x00,0x77,0x46,0x74,0x24,0x80,0x06,0x04,0x00,0x00,0x00,
0x00,0x1C,0x00,0x06,0x00,0x00,0x55,0x45,0x54,0x57,0x80,0x00,0x00,0x00,0x00,0x00,
0x00,0x1C,0x00,0x0E,0x00,0x00,0x45,0x45,0x74,0x57,0x80,0x08,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x1C,0x00,0x00,0x55,0x45,0x44,0x74,0x80,0xF0,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x38,0x00,0x00,0x77,0x76,0x47,0x54,0x80,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
};


/*------------------主程序--------------------*/
void InitSys();//系统初始化
void valveposition_disp(uint num);//显示阀门位置数字显示,图形方式,在右半屏幕显示0~99数字

#define comm  0
#define dat   1

int main (void)
{
	WDTCTL=WDTPW+WDTHOLD;
	InitSys();//系统初始化

	/*-----------填充代码------------------*/
	//SP=0x5f;
	
	while (1)
	{
		/*lat_disp (0x00,0x00);
		chn_disp (tab1);
		//con_disp (0xff,0xff,0x84,0x90,2,16);
		LCDdelay1 (2000);
		clrram();
		lat_disp (0xcc,0xcc);
		LCDdelay1 (2000);
		wr_lcd (comm,0x34);
		chn_disp (tab3);
		LCDdelay1 (2000);
		clrram();
		lat_disp (0xff,0x00);
		LCDdelay1 (2000);
		img_disp (tab5);
		LCDdelay1 (2000);*/
		clrram();
		clrgdram();
		lcd_disp ("本地操作",1,1,8);
		LCDdelay1 (2000);
		lcd_disp ("阀门开启",2,1,8);
		LCDdelay1 (2000);
		clrram();
		valveposition_disp(58);
		LCDdelay1 (2000);
		
		
	/*------------------------------------------*/

		//LPM3;//打开低功耗模式3
	}
}
void InitSys()
{
	//unsigned int iq0;
	//使用XT2振荡器
	/*
	BCSCTL1 &=~XT2OFF;
	do
	{
		IFG1 &=~OFIFG;
		for(iq0=0xFF;iq0>0;iq0--);
	}
	while((IFG1&OFIFG)!=0);
	BCSCTL2=SELM_2+SELS;
	*/
	/*-------------------模块、外围设备初始化---------*/
	init_lcd ();


	/*------------------------------------------*/


	_EINT();//打开全局中断控制

}
void valveposition_disp(uint num)//图形方式,在右半屏幕显示0~99数字
{
        
	uchar j;
	uint num_10,num_0;
	num_10=num/10;
	num_0=num%10;
	
	
  for(j=0;j<32;j++)
  {
 
      wr_lcd (comm,0x34);
      wr_lcd (comm,0x80+j);
      
      if(j<16)
            wr_lcd (comm,0x84);
      else
			wr_lcd (comm,0x94);
      wr_lcd (comm,0x30);
	  switch(num_10)
	  {
		  case 0:
			  wr_lcd (dat,num0[j*3]);
			  wr_lcd (dat,num0[j*3+1]);break;
		  case 1:
			  wr_lcd (dat,num1[j*3]);
			  wr_lcd (dat,num1[j*3+1]);break;
		  case 2:
			  wr_lcd (dat,num2[j*3]);
			  wr_lcd (dat,num2[j*3+1]);break;
		  case 3:
			  wr_lcd (dat,num3[j*3]);
			  wr_lcd (dat,num3[j*3+1]);break;
		  case 4:
			  wr_lcd (dat,num4[j*3]);
			  wr_lcd (dat,num4[j*3+1]);break;
		  case 5:
			  wr_lcd (dat,num5[j*3]);
			  wr_lcd (dat,num5[j*3+1]);break;
		  case 6:
			  wr_lcd (dat,num6[j*3]);
			  wr_lcd (dat,num6[j*3+1]);break;
		  case 7:
			  wr_lcd (dat,num7[j*3]);
			  wr_lcd (dat,num7[j*3+1]);break;
		  case 8:
			  wr_lcd (dat,num8[j*3]);
			  wr_lcd (dat,num8[j*3+1]);break;
		  case 9:
			  wr_lcd (dat,num9[j*3]);
			  wr_lcd (dat,num9[j*3+1]);break;

	  }
      wr_lcd (comm,0x34);
      wr_lcd (comm,0x80+j);
      
      if(j<16)
            wr_lcd (comm,0x85);
      else
	    wr_lcd (comm,0x95);
      wr_lcd (comm,0x30);
	  switch(num_10)
	  {
		  case 0:
			  wr_lcd (dat,num0[j*3+2]);break;
		  case 1:
			  wr_lcd (dat,num1[j*3+2]);break;
		  case 2:
			  wr_lcd (dat,num2[j*3+2]);break;
		  case 3:
			  wr_lcd (dat,num3[j*3+2]);break;
		  case 4:
			  wr_lcd (dat,num4[j*3+2]);break;
		  case 5:
			  wr_lcd (dat,num5[j*3+2]);break;
		  case 6:
			  wr_lcd (dat,num6[j*3+2]);break;
		  case 7:
			  wr_lcd (dat,num7[j*3+2]);break;
		  case 8:
			  wr_lcd (dat,num8[j*3+2]);break;
		  case 9:
			  wr_lcd (dat,num9[j*3+2]);break;
	  }
 	  switch(num_0)
	  {
		  case 0:
			  wr_lcd (dat,num0[j*3]);break;
		  case 1:
			  wr_lcd (dat,num1[j*3]);break;
		  case 2:
			  wr_lcd (dat,num2[j*3]);break;
		  case 3:
			  wr_lcd (dat,num3[j*3]);break;
		  case 4:
			  wr_lcd (dat,num4[j*3]);break;
		  case 5:
			  wr_lcd (dat,num5[j*3]);break;
		  case 6:
			  wr_lcd (dat,num6[j*3]);break;
		  case 7:
			  wr_lcd (dat,num7[j*3]);break;
		  case 8:
			  wr_lcd (dat,num8[j*3]);break;
		  case 9:
			  wr_lcd (dat,num9[j*3]);break;
	  }
      wr_lcd (comm,0x34);
      wr_lcd (comm,0x80+j);      
      if(j<16)
            wr_lcd (comm,0x86);
      else
	    wr_lcd (comm,0x96);
      wr_lcd (comm,0x30);
	  switch(num_0)
	  {
		  case 0:
			  wr_lcd (dat,num0[j*3+1]);
			  wr_lcd (dat,num0[j*3+2]);break;
		  case 1:
			  wr_lcd (dat,num1[j*3+1]);
			  wr_lcd (dat,num1[j*3+2]);break;
		  case 2:
			  wr_lcd (dat,num2[j*3+1]);
			  wr_lcd (dat,num2[j*3+2]);break;
		  case 3:
			  wr_lcd (dat,num3[j*3+1]);
			  wr_lcd (dat,num3[j*3+2]);break;
		  case 4:
			  wr_lcd (dat,num4[j*3+1]);
			  wr_lcd (dat,num4[j*3+2]);break;
		  case 5:
			  wr_lcd (dat,num5[j*3+1]);
			  wr_lcd (dat,num5[j*3+2]);break;
		  case 6:
			  wr_lcd (dat,num6[j*3+1]);
			  wr_lcd (dat,num6[j*3+2]);break;
		  case 7:
			  wr_lcd (dat,num7[j*3+1]);
			  wr_lcd (dat,num7[j*3+2]);break;
		  case 8:
			  wr_lcd (dat,num8[j*3+1]);
			  wr_lcd (dat,num8[j*3+2]);break;
		  case 9:
			  wr_lcd (dat,num9[j*3+1]);
			  wr_lcd (dat,num9[j*3+2]);break;

	  }
   
    
  }
  wr_lcd (comm,0x36);

}

⌨️ 快捷键说明

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