pasini
Joined: 12 Dec 2005 Posts: 50 Location: Curitiba - Brazil
|
PIC16F913 / LCD pins |
Posted: Wed Sep 24, 2008 8:24 am |
|
|
Hi,
I am using PIC16F913 as a LCD driver, with 3 commons and 15 segments. Some segments are working fine and I can see them on the LCD, but others are not working. Watching the oscilloscope, I noticed that pins 5=SEG15, 27=SEG14, 28=SEG13, 15=SEG11, 16=SEG10, 17=SEG9, 18=SEG8 and 24=SEG3 are not being output. Other segments are correct.
My configuration is:
Code: | void main()
{
int32 number;
setup_lcd(LCD_MUX13 | LCD_BIAS_PINS | USE_TIMER_1 | LCD_HALF_BIAS, 15);
number = 99999;
while(1)
{
lcd_putc('\f');
lcd_putc('0');
lcd_putc('0');
lcd_putc('0');
lcd_putc('0');
lcd_putc('0');
lcd_putc('0');
//printf(lcd_putc,"\f%6lu",number); // Always send 6 digits
// number++;
} |
Do I need to change the setup ? How do I correctly set the pins to output LCD signals ?
I also use lcd_symbol(segments, DIGIT1); inside lcd_putc to display the numbers (this function is working fine).
The problem is really that the pins are not driving the LCD. Do I need to change CMCON0, ANSEL and other registers ? How do I do this ?
Thanks in advance,
Luiz |
|