When you say resonator I think of a three pin thing with built in caps, HS works for that.
If you are using a crystal then you may want to check the caps.
Forget the LCD for a bit and figure out the timing problem by blinking an LED once per second.
When you say resonator I think of a three pin thing with built in caps, HS works for that.
If you are using a crystal then you may want to check the caps.
Forget the LCD for a bit and figure out the timing problem by blinking an LED once per second.
Dave
Always wear safety glasses while programming.
Thanks Malc-C for the reply but I am not exactly trying to make it work...
Well yes I am trying to make it work but first I am trying to understand what is happening and what is my issue.
Mackrackit,
I am using a resonator (3 pins with caps incorporated) and double checked the datasheet and it does suggest _XT_OSC for a 4 MHz resonator.
I followed your suggestion and I put a LED with puse 1000 and also it is taking 2 secs to blink. Now, I set DEFINE OSC 4 instead of 8 which brought down to 1 sec as I expected so I know that if i am using a 4 MHz crystal, I should be having DEFINE OSC 4. I could be wrong but I think this part is clear to me.
So my questions are changing a bit and now I end up with:
1 - Why does LCD_AnyPin only works with DEFINE OSC 8 although I have a 4 MHz crystal ?
2 - Why the standard way for LCD is not working whisle LCD_AnyPin did even at 8 ?
When I find out, I will never forget it!
Mike
after reading over the thread I just saw this:
I took out my resonator and used the chips' internal oscillator but I get the same results so this rules out the resonator I was using.Using DEFINE OSC 20 I had erroneous results on the LCD, so it's obviously a timing issue with your 4MHz resonator
When using LCD_AnyPin it works with 8 MHz but the timing is doubled, if I set to 4 MHz the timing is is ok and LCD is blank.
Furthermore using standard settings for LCD does not work at all settings for OSC.
Help!
The only suggestion I have now is to play with these lines.
Use the 4 MHZ OSCCode:DEFINE LCD_COMMANDUS 2000 ' Command delay time in us DEFINE LCD_DATAUS 50 ' Data delay time in us
DEFINE OSC 4
Dave
Always wear safety glasses while programming.
Mike,
That's why I included the statement. With a 20Mhz xtal and setting the define to 20 I got random parts of the text displayed. When I set the define to 48 it worked - why I don't know (I'm still a newb to a degreeMy guess is that the value is divided internally somewhere to set the timing, which is why in your case setting it to 8 works with a 4Mhz xtal
Bookmarks