lcd.c

来自「msp430常用C语言模块,包括串行通信等.」· C语言 代码 · 共 75 行

C
75
字号
/****************************************************************************
文件名:lcd.c
编写者:czhang
描述:LCD例子程序。用于4xx系列。
      MCLK:8MHz
版本:2005-4 V1.0
*****************************************************************************/
#include  <msp430x42x.h>
#include "lcd.h"
/*****************************************************************************
初始化
*****************************************************************************/
void LcdInit()
{
	LCDCTL = LCDSG0_5+LCDSTATIC; //选择段端口S0-S31,静态显示
}

/*****************************************************************************
打开或关闭液晶
0:打开  100:关闭
*****************************************************************************/
void LcdGo(unsigned char doit)
{
	if(doit==0)
	{
		//打开液晶显示
		LCDCTL |= LCDON;
	}
	else if(doit==100)
	{
		//关闭液晶显示
		LCDCTL &= ~LCDON;
	}
}

/*****************************************************************************
向显存中写数据
pshow:要写入数据的起始地址
adr:数据在显存中写入的起始位置  0~20
nchar:写入的字节数
mod:0:覆盖写入    1:与     2:或
*****************************************************************************/
void LcdWrite(unsigned char *pshow,unsigned char adr,unsigned char nchar,unsigned char mod)
{
	unsigned char *pmem= LCDMEM;
	pmem += adr;			//计算偏移写入地址
	for(;nchar!=0;nchar--)
	{
		if(mod==0)
			*pmem= *pshow;  //覆盖写入显存
		else if(mod==1)
			*pmem &= *pshow;	//‘与’写入显存
		else
			*pmem |= *pshow;	//‘或’写入显存
		pmem++;
		pshow++;
	}
}

/***************************************************************************
显示或者消隐显示内容
doit:0:消隐   1:显示
****************************************************************************/
void LcdBlink(unsigned char doit)
{
	if(doit==0)
	{
		LCDCTL &= ~LCDSON;
	}
	else if(doit==1)
	{
		LCDCTL |= LCDSON;
	}
}

⌨️ 快捷键说明

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