当前位置:首页 > 单片机 > 单片机
[导读]程序要写出自己的风格********************************************************这是学习 msp430g2553 单片机时写的 1602 的程序****时间精确到us,基本不出乱码****P1为数据输出端口****rs 接 p2.1****rw 接地****

程序要写出自己的风格

******************************************************

**这是学习 msp430g2553 单片机时写的 1602 的程序**

**时间精确到us,基本不出乱码**

**P1为数据输出端口**
**rs 接 p2.1**

**rw 接地**
**en 接 p2.0**

******************************************************

#include
#include

#define rs_0 P2OUT&=~BIT1
#define rs_1 P2OUT|=BIT1

#define en_0 P2OUT&=~BIT0
#define en_1 P2OUT|=BIT0
char table_1[]={"SHOU BU NIAO L !"};
char table_2[]={"2012.8.02"};
unsigned int num;
unsigned int con_1,con_2;

void LCD1602_write_command(unsigned int com)
{
rs_0;
P1OUT=com;
__delay_cycles(500);
en_1;
__delay_cycles(500);
en_0;
}

void LCD1602_write_data(unsigned int dat)
{
rs_1;
P1OUT=dat;
__delay_cycles(500);
en_1;
__delay_cycles(500);
en_0;
}

void LCD1602_init()
{
LCD1602_write_command(0x38);//5*7点阵,双行显示
LCD1602_write_command(0x0c);//0x0f 有光标,
LCD1602_write_command(0x01);//清屏
LCD1602_write_command(0x06);//写入数据后,光标右移,显示屏不动
LCD1602_write_command(0x80);
}

void main ()
{
con_1=strlen(table_1);
con_2=strlen(table_2);

WDTCTL=WDTPW+WDTHOLD;

P1DIR =0XFF;
P2DIR=0XFF;

LCD1602_init();

for(num=0;num{
LCD1602_write_data(table_1[num]);
__delay_cycles(1000);
}


LCD1602_write_command(0x80+0x40);
for(num=0;num{
LCD1602_write_data(table_2[num]);
__delay_cycles(1000);
}


while(1);
}


本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除( 邮箱:macysun@21ic.com )。
换一批
延伸阅读
关闭