发 帖  
[讨论] 基于MSP430的1602显示程序
2018-7-9 20:56:16  275 MSP430单片机
收藏 0 收藏 推荐 0 推荐
分享
看了一些代码发现有些存在错误,然后自己写了一个

#include "MSP430x14x.h"


#define RS     P3OUT
#define RW     P3OUT
#define E      P3OUT
#define RS_DIR P3DIR
#define RW_DIR P3DIR
#define E_DIR  P3DIR
#define DATA   P4OUT
#define DATA_DIR P4DIR


char first[]="This is ourlab";
char second[]="It is the second";


void delay_ms(int x)//延时 x ms//延时只是随便写的,没有计算
  { int i,j;
    for(i=0;i<x;i++)
      for(j=0;j<340;j++)
        ;
  }
void writedata(cmd)//写数据
  {
    RS|=BIT0;
    RW&=~BIT1;
    DATA=cmd;
    E|=BIT2;
    E&=~BIT2;
        }
void writecom(cmd)//写指令
  {
    RS&=~BIT0;
    RW&=BIT1;
    DATA=cmd;
    E|=BIT2;
    E&=~BIT2;
        }
void  Init(void)//初始化
  {
    RS_DIR|=BIT0;
    RW_DIR|=BIT1;
    E_DIR|=BIT2;
    DATA_DIR=0XFF;//方向寄存器为输出
    writecom(0x38);
    writecom(0x0f);
    writecom(0x06);
    writecom(0x01);
        }
void main( void )
{
  // Stop watchdog timer to prevent time out reset
  WDTCTL = WDTPW + WDTHOLD;//开关门狗
int i;
Init();//初始化
writecom(0x80);
delay_ms(300);
for(i=0;i<14;i++)
  {
    writedata(first);
  }
writecom(0x80+0x40);
for(i=0;i<16;i++)
  {
    writedata(second);
  }
;
}


2018-7-9 20:56:16   评论
高级模式
您需要登录后才可以回帖 登录 | 注册

发表新帖
关闭

站长推荐 上一条 /9 下一条

快速回复 返回顶部 返回列表