液晶的ID读取不正确

2019-08-11 18:51发布

由于最小底板板的PB口未全部引出,因此我将液晶的数据口和功能口修改如下
#define LCD_CS_SET  GPIOB->BSRR=1<<7    //片选端口       PB7 #define LCD_RS_SET GPIOB->BSRR=1<<5    //数据/命令          B5    #define LCD_WR_SET GPIOB->BSRR=1<<8   //写数据 PB8 #define LCD_RD_SET GPIOB->BSRR=1<<6    //读数据 PB6 //GPIOx->BRR一个16位复位寄存器     #define LCD_CS_CLR  GPIOB->BRR=1<<7     //片选端口       PB7 #define LCD_RS_CLR GPIOB->BRR=1<<5     //数据/命令          B5    #define LCD_WR_CLR GPIOB->BRR=1<<8     //写数据 PB8 #define LCD_RD_CLR GPIOB->BRR=1<<6     //读数据 PB6     //PC0~15,作为数据线 #define DATAOUT(x) GPIOC->ODR=x; //数据输出 #define DATAIN     GPIOC->IDR;   //数据输入 初始化当中对应的管口也已经修改了。出现的问题如题所说,ID读取不正确。读出的ID为:LCD ID:f7b7,小弟整了快一天了,实在想不出问题出的哪
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
15条回答
双星伴月
2019-08-11 21:55
回复【2楼】正点原子:
---------------------------------
PC口我都测了的,没问题的,主要是经过这三句后
                LCD_RD_DATA(); //dummy read   LCD_RD_DATA();      //读回0X00   DeviceCode=LCD_RD_DATA()&0XBF;//这里读回0XD3,实际是0X93才对.强制去掉第6位
DeviceCode就变为0X00BF了。不知道是什么原因。
      

一周热门 更多>