TI中文支持网
TI专业的中文技术问题搜集分享网站

我的LCD顯示亂碼

我用MSP430F5438的晶片及開發板上的LCD欲做顯示

但呈現亂碼是程式有錯嗎

程式如下能幫我解答嗎?

#include "msp430x54x.h"
#include "io430.h"
#include "fuck.h"
void LCD_CMD(int cmd);
void LCD_DATA(char data1);
void LCD_init();

void Set_Register(void)
{
P10DIR|=0xFF;
P11DIR|=0xc0;
/* CLK*/
P11DIR|=0x07;
P11SEL|=0x07;
/*USC*/
P7SEL|=0x03;
UCSCTL6 &=~XT1DRIVE_3;
UCSCTL6 |=XCAP_3;
UCSCTL1 = DCORSEL_2;
UCSCTL2 =FLLD_0+60;
}
void delaymsec(int msec)
{
for(int i=0;i<500;i++)
for(int j=0;j<=msec;j++);
}
void main( void )
{
WDTCTL = WDTPW + WDTHOLD;
Set_Register();
delaymsec(100);
__bis_SR_register(GIE);
LCD_init();
LCD_CMD(0x80);
LCD_DATA('1');
LCD_DATA('2');
LCD_DATA('S');
LCD_DATA('T');
/*LCD_CMD(0xC0);
LCD_DATA('R');
LCD_DATA('C');
LCD_DATA('T');
LCD_DATA('1');
LCD_DATA('2');*/
while(1){}
}
void LCD_CMD(int cmd)
{
int a;
P11OUT=0x00;
for(a=0;a<50;a++);
P11OUT=0x80;
P10OUT=cmd;
for(a=0;a<50;a++);
P11OUT=0x00;
delaymsec(20);
}
void LCD_DATA(char data1)
{
int a;
P11OUT=0x40;
for(a=0;a<50;a++);
P11OUT=0xC0;
P10OUT=data1;
P11OUT=0x40;
for(a=0;a<50;a++);
}
void LCD_init()
{
LCD_CMD(0x38);
LCD_CMD(0x0C);
LCD_CMD(0x01);
LCD_CMD(0x06);
}

灰小子:

你用的什么型号的开发板和液晶?

Ling Zhu2:

 建議先瞭解LCD的數據手冊,瞭解LCD控制基本原理,你這樣抛出一堆程式是沒有辦法解決問題的,況且程式還不完全。

赞(0)
未经允许不得转载:TI中文支持网 » 我的LCD顯示亂碼
分享到: 更多 (0)