liucheng 发表于 2012-8-5 20:43:56

谁用msp430驱动过tft 80/16bit啊,我修改了原子的程序,但不...

void LCD_WR_REG(u8 data)
{
        LCD_RS_0;//写地址
         
        LCD_CS_0;
      DATAOUT(data);
        LCD_WR_0;
      
        LCD_WR_1;
        LCD_CS_1;   
}        


//写寄存器
void LCD_WriteReg(u8 LCD_Reg, u16 LCD_RegValue)
{       
        LCD_WR_REG(LCD_Reg);
        LCD_WR_DATA(LCD_RegValue);                         
}          
//读寄存器
u16 LCD_ReadReg(u8 LCD_Reg)
{                                                                                  
        u16 t;
      uchar p4,p5;
        LCD_WR_REG(LCD_Reg);//写入要读的寄存器号
      P4DIR=0x00;
      P5DIR=0X00;
      P4OUT=0XFF;
      P5OUT=0XFF;

        LCD_RS_1;
        LCD_CS_0;
        //读取数据(读寄存器时,并不需要读2次)
        LCD_RD_0;                                          
        LCD_RD_1;
        //DATAIN;
      p4=P4IN; p5=P5IN; t=p4+p5<<8;
        LCD_CS_1;
      P4DIR=0XFF;
      P5DIR=0XFF;
      P4OUT=0XFF;
      P5OUT=0XFF;
      
        return t;
}

//初始化lcd
//该初始化函数可以初始化各种ILI93XX液晶,但是其他函数是基于ILI9320的!!!
//在其他型号的驱动芯片上没有测试!
void   LCD_Init(void)
{

      //P4,P5 USE AS DATA BUS
      P4DIR=0XFF;
      P4OUT=0XFF;
      P5DIR=0XFF;
      P5OUT=0XFF;
                                                 
        delay_ms(50); // delay 50 ms
      
        LCD_WriteReg(0x0000,0x0001);
        delay_ms(50); // delay 50 ms
       
        DeviceCode = LCD_ReadReg(0x0000);   
        lcd5110_number(1,1,DeviceCode); //打印LCD ID
}
页: [1]
查看完整版本: 谁用msp430驱动过tft 80/16bit啊,我修改了原子的程序,但不...