新用了一个液晶显示器,和以前的接线不一样,这个显示是反向的,在不改变显示字体的情况下,有可以配置寄存器让显示反转吗?
附上ST7567的初使化显示代码和液晶datasheet~
QQ图片20170527104057.jpg (138.6 KB, 下载次数: 0)
下载附件
2017-5-27 10:41 上传
void LCD_Init(void)
{
RCC->APB2ENR|=1<<2;//使能PORTA时钟
// RCC->APB2ENR|=1<<4;//使能PORTC时钟
// RCC->APB2ENR|=1<<0; //??????
// JTAG_Set(SWD_ENABLE); //??SWD
//PORTa3~7
GPIOA->CRL&=0X000000FF;
GPIOA->CRL|=0X33333300;
GPIOA->ODR|=0X00F8;
LCD_RESB = 1;
delay_us(100); //
LCD_RESB = 0;
delay_us(100);
LCD_RESB = 1;
delay_us(100);
write_byte(LCD_CMD,0xe2); // (14) Soft Reset
write_byte(LCD_CMD,0xa1); // Set seg direct
write_byte(LCD_CMD,0xcf); // Set com direct
// write_byte(LCD_CMD,0xB0); //
write_byte(LCD_CMD,0xf8); // Set Booster
write_byte(LCD_CMD,0x00); // 5x
// write_byte(LCD_CMD,0xA2); // set lcd bias = 1/9
write_byte(LCD_CMD,0xA3); // set lcd bias = 1/7
write_byte(LCD_CMD,0x24); // set internal rb/ra=5.0
// write_byte(LCD_CMD,0x24); // set internal rb/ra=5.0
v_LCD_Write_Windows(SEG_ORG_OFFSET,131,0,8,0x00);
write_byte(LCD_CMD,0x2f); // all built-in power circuits on
write_byte(LCD_CMD,0x81); // set contrast
write_byte(LCD_CMD,0x1c); //vop
write_byte(LCD_CMD,0xaf); // dispaly on
}
我这个代码我自己用过 真的是可以的
你这个PDF 里面也有这个提到 命令 一模一样 你不能用 你再找找你程序的问题吧
aa.png (179.93 KB, 下载次数: 0)
下载附件
2017-5-27 12:47 上传
我这边用过了,不用反转 ~
估计屏有问题,我调过3种类似的屏,我试下其他屏用这个行不行。
用 事实说话 看图
zz.png (459.62 KB, 下载次数: 0)
下载附件
2017-5-27 12:55 上传
w_cmd(0xA0); //ADC selection(SEG0->SEG128) 左右镜像 0XA0 0XA1//ADC select,REVERSE 127-->0(a0,a1)//左右镜像
w_cmd(0xC8); //SHL selection(COM0->COM64) //com select,NORMAL 0-->63(c8,c0)//上下镜像
QQ图片20170527130638.jpg (122.07 KB, 下载次数: 2)
下载附件
2017-5-27 13:06 上传
一周热门 更多>