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

📄 msp430f14912232lcd.txt

📁 MSP430F149单片机控制122*32液晶C程序
💻 TXT
字号:
# include <msp430x14x.h>
#define SID 0x08 //串行数据输入端
#define SCK 0x04 //同步时钟输入端
#define DDRAM_0 0x80 //显示回位
#define off_cursor 0x0c //关闭光标
#define on_cursor 0x0e //开光标
#define off_cursor_filsh 0x0e //光标关闪烁
#define on_cursor_filsh 0x0f //光标开闪烁
//**************************************************
void delay(void)
{ char i;
for (i = 0;i != 0xff;i++);
}
//**************************************************
void sendBYTE(char dat) //串行传送一字节数据
{
char i;
P1DIR|=SID; //设P1.3 SID 为输出
for (i=0;i<8;i++)
{
P1OUT&=~SCK; //SCK=0
if((dat & 0x80)!=0)
P1OUT|=SID; //SID=1
else
P1OUT&=~SID; //SID=0
P1OUT|=SCK; //SCK=1;

dat = dat<<1;
}
}
//****************************************************
void sendCMD(char dat) //写控制指令
{
sendBYTE(0xf8);
sendBYTE(dat & 0xf0);
sendBYTE((dat<<4)&0xf0);
}
//****************************************************
void sendDAT(char dat) //写显示数据;也可以写一个单字节字符
{
sendBYTE(0xfa);
sendBYTE(dat & 0xf0);
sendBYTE((dat<<4)&0xf0);
}
//****************************************************
void display(char x_add,char dat,char dat1)
//写汉字到LCD屏指定位置
//x_add 显示RAM 地址
//dat/dat1显示汉字编码
{
sendCMD(x_add);
sendDAT(dat);
sendDAT(dat1);
}
//*****************************************************
void initlcm(void) //初始化LCM
{
delay();
sendCMD(0x30); //功能设置:一次送8 位数据,基本指令集
sendCMD(0x04); //点设定 :显示字符/ 光标从左到右移位,DDRAM 地址加一
sendCMD(0x0f); //显示设定:开显示 ,显示光标,当前显示位反白闪动
sendCMD(0x0f); //显示设定:开显示,显示光 标,当前显示位反白 闪动
sendCMD(0x01); //清DDRAM
sendCMD(0x02); //*DDRAM 地址归位
}
//****************************************************
void mcu_init(void) //单片机初始化
{ WDTCTL=WDTPW+WDTHOLD; //停止WDT
P1DIR|=SCK; //SCK设为输出
}
//****************************************************

void send_title() //标题显示
{ sendCMD(DDRAM_0); //DDRAM
sendCMD(off_cursor); //关光标
display(0x80,0xb1,0xbe); //本
display(0x81,0xb3,0xcc); //程
display(0x82,0xd0,0xf2); //序
display(0x83,0xd3,0xc9); //由
sendDAT('D'); //’D’
sendDAT('C'); //’C’
display(0x85,0xcc,0xe1); //提
display(0x86,0xb9,0xa9); //供
display(0x87,0xa3,0xa1); //!
}
//*****************************************************
void main(void) //主程序
{ mcu_init(); //单片机初始化
initlcm(); // LCD初始化
send_title(); //LCD显示
while(1)
{LPM3;}
}
//*****************************************************

⌨️ 快捷键说明

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