1952|0

30

帖子

0

TA的资源

一粒金砂(中级)

楼主
 

关于MSP430F5438的液晶操作,求指导 [复制链接]


#include "msp430X54X.h"

#define  RS_H P9OUT |=BIT0    //数据
#define  RS_L P9OUT &=~BIT0    //命令
#define  RW_H P9OUT |=BIT1  //读
#define  RW_L P9OUT &=~BIT1    //写
#define  EN_H P9OUT |=BIT2
#define  EN_L P9OUT&=~BIT2

#define  PSB_H P9OUT |=BIT3//并行
#define  PBS_L P9OUT &=~BIT3//串行
#define  RST_H P9OUT |=BIT4
#define  RST_L P9OUT &=~BIT4
#define  P8_DIR  P8DIR   //方向寄存器
#define  LCD_DATE_IN  P8IN//数据输入
#define  LCD_DATE_OUT  P8OUT
#define  uint unsigned int
#define  uchar unsigned char
unsigned char i,flage,date;
/**************************
               忙检测  
RS=0  命令
R/W=1  读取
E=0
忙检测,检测内部是否忙,所以是命令,读取
*/
void mangjiance(void)//忙检测
{
char flage;
   RS_L;
   RW_H;
   EN_L;
   flage =LCD_DATE_IN;
   while(flage&0x80);//判断是否忙检测,若果为1 忙,否则不忙,跳出
   P8DIR=0Xff;//设置P8为输出
}
/*************************
        写指令
RS=0  命令
R/W=0 写命令
E=0
E=1  是靠脉冲来发的
****************************/
void write_command(uchar date)
{
  mangjiance();
  RS_L;
  RW_L;
  EN_L;
LCD_DATE_OUT =date;
  EN_H;
  EN_L;
}
/*************************
        写数据
RS=1  数据
R/W=0 写数据
E=0
E=1  是靠脉冲来发送数据的
****************************/
void write_data(uchar date)
{
  mangjiance();
  RS_H;
  RW_L;
  EN_L;
  LCD_DATE_OUT =date;
  EN_H;
  EN_L;
}
/*************************
        初始化


****************************/
void LCD_init(void)
{
  PSB_H;            //并行
  RS_L;
  RW_L;
  EN_L;
  
write_command(0x30);//基本指令操作
write_command(0x01);//清零
write_command(0x0c);//显示开,关光标
}
void write_zifu(uchar *s)
{
  uchar zhi;
  zhi=*s;
  while(*s!='0')
  {
  
   write_data(zhi);
    zhi=*(++s);
  
  }
   
}
void disply()
{

  write_zifu("yes i do");
  
}
void main( void )
{
  // Stop watchdog timer to prevent time out reset
  WDTCTL = WDTPW + WDTHOLD;
  void LCD_init();
  P9DIR=0X0F;
  P8DIR=0XFF;
  while(1)
  {
  
  write_command(0x80);  
void disply();
  }



}求教,为什么没有显示呢
此帖出自单片机论坛
点赞 关注
 

回复
举报
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条
【回帖赢京东卡】说说无线技术那些事儿
即日起—2月28日,参与回帖讨论都有机会赢取【30元京东卡】

查看 »

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

 
机器人开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表