标题:
STM8L单片机LCD配置问题
[打印本页]
作者:
daocaoren110
时间:
2019-4-16 14:50
标题:
STM8L单片机LCD配置问题
时钟在外面配置了,在写RAM的时候对不上号,看文档说S对应com的SEG,但是无济于事。
TIM截图20190416144928.png
(262.78 KB, 下载次数: 45)
下载附件
2019-4-16 14:49 上传
//SEG GPIO Init
GPIO_Init(GPIOE, GPIO_Pin_0|GPIO_Pin_1,GPIO_Mode_Out_PP_Low_Fast);//SEG1,2
GPIO_Init(GPIOE, GPIO_Pin_2|GPIO_Pin_3,GPIO_Mode_Out_PP_Low_Fast);//SEG3,4
GPIO_Init(GPIOE, GPIO_Pin_4|GPIO_Pin_5,GPIO_Mode_Out_PP_Low_Fast);//SEG5,6
GPIO_Init(GPIOD, GPIO_Pin_0|GPIO_Pin_2,GPIO_Mode_Out_PP_Low_Fast);//SEG7,8
GPIO_Init(GPIOD, GPIO_Pin_3,GPIO_Mode_Out_PP_Low_Fast);//SEG9
GPIO_Init(GPIOB, GPIO_Pin_0|GPIO_Pin_1,GPIO_Mode_Out_PP_Low_Fast);//SEG10,11
//COM GPIO Init
GPIO_Init(GPIOF, GPIO_Pin_4|GPIO_Pin_5,GPIO_Mode_Out_PP_Low_Fast);//COM4,5
GPIO_Init(GPIOF, GPIO_Pin_6|GPIO_Pin_7,GPIO_Mode_Out_PP_Low_Fast);//COM6,7
//------打开LCD时钟------
CLK->PCKENR2 |= (1<<3);
// CLK_PCKENR2_PCKEN23=1;//打开LCD时钟,读写LCD寄存器用到此时钟
//----设置LCD预分频值----
LCD_FRQ_PS0=0;// 2^PS[3:0]
LCD_FRQ_PS1=0;//分频值为1
LCD_FRQ_PS2=0;
LCD_FRQ_PS3=0;
//----设置LCD分频值----
LCD_FRQ_DIV0=0;//DIV[3:0]+16
LCD_FRQ_DIV1=0;//分频值为15+16=31
LCD_FRQ_DIV2=0;
LCD_FRQ_DIV3=0;
//以上分频值的设置,最为了得到适合的LCD的刷新频率,如果增大分频值,会导致
//LCD刷新频率变低,会看到LCD显示出现闪烁
//比如,我们将PS[3:0]设置为0011,会看到液晶闪烁
//----1/4 duty----
LCD_CR1_DUTY0=0;//1/4 duty
LCD_CR1_DUTY1=1;
/* Duty ratio selection
00: Static duty
01: 1/2 duty
10: 1/3 duty
11: 1/4 duty */
//----1/3 bias----
LCD_CR1_B2=0;//1/3 bias
/* 0: 1/3 bias
1: 1/2 bias */
//----内部电压源----
LCD_CR2_VSEL=0;
//----打开引脚的SEG功能----
//配置正确
LCD->PM[0]|= 0xfe;//启用seg0-7
LCD->PM[1]|= 0x0F;//启用seg8-10
//----To set contrast to mean value----
LCD_CR2_CC0=1;//对比度
LCD_CR2_CC1=1;
LCD_CR2_CC2=1;
/* 000: VLCD0 2.6V
001: VLCD1 2.7V
010: VLCD2 2.8V
011: VLCD3 2.9V
100: VLCD4 3.0V
101: VLCD5 3.1V
110: VLCD6 3.2V
111: VLCD7 */
//----Dead time 0----
LCD_CR3_DEAD0=0;//no dead time
LCD_CR3_DEAD1=0;
LCD_CR3_DEAD2=0;
//----LCD_PulseOnDuration_1----
LCD_CR2_PON0=1;
LCD_CR2_PON1=0;
LCD_CR2_PON2=0;
/* 000: 0 CLKps pulses
001: 1 CLKps pulses
010: 2 CLKps pulses
011: 3 CLKps pulses
100: 4 CLKps pulses
101: 5 CLKps pulses
110: 6 CLKps pulses
111: 7 CLKps pulses */
//----Enable LCD peripheral----
//LCD_CR3_LCDEN=1;
// LCD->CR4 &=0x00;
LCD->CR3 |= (0x01<<6);
复制代码
作者:
yzwzfyz
时间:
2019-4-17 12:55
实做还是仿真?
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1