附上一小段代码:
void LCD_init(void)
{ // 产生一个让LCD复位的低电平脉冲 //LCD_RST = 0; GPIO_WriteLow(LCD_PORTG, LCD_RST); delay_1us();//LCD_RST = 1;
GPIO_WriteHigh(LCD_PORTG, LCD_RST); // 关闭LCD //LCD_CE = 0; GPIO_WriteLow(LCD_PORTG, LCD_CE); delay_1us(); // 使能LCD // LCD_CE = 1; GPIO_WriteHigh(LCD_PORTG, LCD_CE); delay_1us();LCD_write_byte(0x21, 0); // 使用扩展命令设置LCD模式
LCD_write_byte(0xc8, 0); // 设置偏置电压 LCD_write_byte(0x06, 0); // 温度校正 LCD_write_byte(0x13, 0); // 1:48 LCD_write_byte(0x20, 0); // 使用基本命令 LCD_clear(); // 清屏 LCD_write_byte(0x0c, 0); // 设定显示模式,正常显示 // 关闭LCD //LCD_CE = 0; GPIO_WriteLow(LCD_PORTG, LCD_CE); }LCD_write_byte(0xc8, 0); // 设置偏置电压 设置对比度。加上面那段代码显示终于正常了。
STM8库操作比起寄存器要方便很多。
代码移植也很方便,例程参考风驰STM8。
这次点亮5110有以下收获。
1,在中文取字软件中最好用“PCtoLCD2002” ,请看:https://wenku.baidu.com/view/8552cf48fe4733687e21aa51.html
字宽与字高要设置12*12,否则显示不正常
2,static const char write_chinese[][24]={} 数组的定义要用“static const char”来表示。否则编译不能通过。
下一步用I2C总线做个收音机,继续学习