注册 登录
电子工程世界-论坛 返回首页 EEWORLD首页 频道 EE大学堂 下载中心 Datasheet 专题
lihang825的个人空间 https://home.eeworld.com.cn/space-uid-200159.html [收藏] [复制] [分享] [RSS]
日志

MSP430f149上LCD显示的程序

已有 1058 次阅读2010-2-27 22:21 |个人分类:msp430|

MSP430f149上LCD显示的程序【转载】#include<msp430x14x.h>

void Init_lcd(void);
void LCD_DataWrite(char Data);
void Lcd_InsWrite(char Instruction);
/******************显示时间*****************/
void main(void)
{
 char i;
 WDTCTL=WDTPW+WDTHOLD;
 Init_lcd();
 for(i=0;i<10;i++)
 {
 Lcd_InsWrite(0x84);         //第一行
 LCD_DataWrite(0xbb);        //  欢
 LCD_DataWrite(0xb6); 
 LCD_DataWrite(0xd3);       //迎
 LCD_DataWrite(0xad);        
 LCD_DataWrite(0xca);       //使
 LCD_DataWrite(0xb9);
 LCD_DataWrite(0xd3);       //用
 LCD_DataWrite(0xc3);
 
 Lcd_InsWrite(0x94);         //第2行
 LCD_DataWrite(0xce);        // 无
 LCD_DataWrite(0xde); 
 LCD_DataWrite(0xcf);       //线
 LCD_DataWrite(0xdf);        
 LCD_DataWrite(0xb3);       //抄
 LCD_DataWrite(0xad);
 LCD_DataWrite(0xb1);       //表
 LCD_DataWrite(0xed);        
 LCD_DataWrite(0xa3);       //!
 LCD_DataWrite(0xa1);
 Delay(5);
 }
Lcd_InsWrite(0x01);  //清除显示
Delay(100);
Lcd_InsWrite(0x01);  //清除显示
Delay(100); 
  Lcd_InsWrite(0x80);         //第一行
 LCD_DataWrite(0xb3);       //抄
 LCD_DataWrite(0xad);
 LCD_DataWrite(0xb1);       //表
 LCD_DataWrite(0xed);   
 LCD_DataWrite(0xc2);       //吗
 LCD_DataWrite(0xf0);
 LCD_DataWrite(0xa3);       //?
 LCD_DataWrite(0xbf);
 
 Lcd_InsWrite(0x90);         //第2行
 LCD_DataWrite(0xd0);        // 修
 LCD_DataWrite(0xde); 
 LCD_DataWrite(0xb8);       //改
 LCD_DataWrite(0xa6);        
 LCD_DataWrite(0xca);       //时
 LCD_DataWrite(0xb1);
 LCD_DataWrite(0xbc);       //间
 LCD_DataWrite(0xe4);        
 LCD_DataWrite(0xa3);       //?
 LCD_DataWrite(0xbf);
 } 
void Delay(int m)
{int i=0;
for(i=0;i<m;i++);
}
/************初始化LCD***********************/   
 void Init_lcd(void)
 {
   P4DIR =0XE0;          //P4.7,P4.6,P4.5 输出
   Lcd_InsWrite(0x30);
   Delay(400);
   Lcd_InsWrite(0x0f);  // 显示状态设定:整体显示,游标on,游标位置反白
   Delay(400);
   Lcd_InsWrite(0x01);  //清除显示
   Delay(400); 
       Lcd_InsWrite(0x06);  //游标向右移,AC自动加1
   Delay(400);
       Lcd_InsWrite(0x14);  //游标向右移
   Delay(400);
}
 /********************写指令****************************/
void Lcd_InsWrite(char Instruction)
{
  P5DIR=0XFF;
  P4OUT&=0x3f;        // RS=0  指令   // R/W=0  写
  P4OUT =BIT5;         //E=1   使能
  P5OUT=Instruction;   //功能设定
  Delay(3);
  P4OUT&=~BIT5;        //E=0:下降沿锁存数据
  P4OUT =BIT6+BIT7;   //RS=1,E/W=1
 
}
  
/****LCD_WRITE.C  显示文字*******************/
  
   void LCD_DataWrite(char Data)
  {
   P5DIR=0XFF;
   P4OUT =BIT7;   //RS=1  写数据
   P4OUT&=~BIT6;  //R/W=0   写
   P5OUT=Data;    //写数据
   P4OUT =BIT5;    //E=1  使能
   Delay(3);
   P4OUT&=~BIT5;  //E=0锁存
   P4OUT =BIT6+BIT7;   //RS=1,E/W=1
}

评论 (0 个评论)

facelist doodle 涂鸦板

您需要登录后才可以评论 登录 | 注册

热门文章