Discuz! Board

标题: 我改的8位程序TFT写程序,不能显示 [打印本页]

作者: wxg20053310    时间: 2019-10-29 09:58
标题: 我改的8位程序TFT写程序,不能显示
本帖最后由 wxg20053310 于 2019-10-29 23:47 编辑

void LCD_WR_DATA(uint16_t val)
{  
       
        Set_Rs;//¿a¼Ä′æÆ÷Ñ¡Ôñ
        Clr_Cs;        //ƬѡÖÃμí
  //GPIOB->ODR &= 0xff00;
  GPIOC->ODR &= 0xff00;        //°&NtildeB,PCêy¾Y¶Ë¿úè«2¿ÖÃμí
        GPIOC->ODR|=((val)&(0x00ff));//D′èëμí8λ
        //GPIOC->ODR|=(val>>8);//D′èë¸ß°Ëλ
        Clr_nWr; //¿aD′ê1Äü
        Set_nWr; //1Øê1Äü
       
        GPIOC->ODR &= 0xff00;
        GPIOC->ODR|=(val>>8);//D′èë¸ß°Ëλ
        Clr_nWr; //¿aD′ê1Äü
        Set_nWr; //1Øê1Äü
  Set_Cs;        //1ØƬѡ
}

/****************************************************/
/* oˉêy1|Äü£o¸øILI9238μÄD′Ãüáî2ù×÷¶Ôó|¼Ä′æÆ÷         */
/* èë¿ú2Îêy£»D′Ãüáî                                 */
/* ËμÃ÷£o    ¼Ä′æÆ÷oÅêÇ16λêy£¬8λᬽó·½ê½DèòaD′á½′Î*/
/****************************************************/
void LCD_WR_REG(uint16_t cmd)
{
        Clr_Rs;
        Clr_Cs;
        //GPIOB->ODR &= 0xff00;
  GPIOC->ODR &= 0xff00;       
        GPIOC->ODR |=((cmd)&(0x00ff));
        //GPIOC->ODR|=(cmd>>8);
        Clr_nWr;
        Set_nWr;

        GPIOC->ODR &= 0xff00;
        GPIOC->ODR|=(cmd>>8);
        Clr_nWr;
        Set_nWr;
         Set_Cs;       
        }
是高低位反啦,已经解决

作者: cdlongbo    时间: 2020-10-9 08:52
16位转8位或者SPI等都需要注意先发送高字节还是低字节,对于LCD调试我个人的总结是务第一读取ID,只要是读取ID成功后,其余的事情都好处理!




欢迎光临 Discuz! Board (http://qfv8.com/) Powered by Discuz! X3