TV output at less than 80MHz !!NOW WORKING!!
photomankc
Posts: 943
Hey all.· I was looking at using the TV text object to give some of my projects a plug-in display that could be added when needed via headers.· One issue is however my main project right now runs at 40Mhz to conserve power.· Reading the TV.spin object it looked like it supported various clock frequencies as long as they are over the threshold but when I compile and load it with a 40Mhz clock all I get is bursts of snow and garbage.· When I load it with 80Mhz then everything works wonderfully.· Is this one of those cases where the code has to be altered to run at a slower clock speed?· I'm a complete assembly moron so that would be an unpleasant undertaking.
Update:
After adjusting the output columns and using the following in the DAT section:
It is now working.· I can just barely get 24 columns but you can tell it's on the edge.· 23 columns gives me a strong picture and no jitter.· Still more real-estate than the serial LCD would give me and I only need 1 pin extra to get it.· It's also function-call compatible with the PC_Text object so if I want to go back to my serial display then a couple of comment/uncomment lines and everything just works.· Perfect!
Here's a photo of it all put together. (minus the polish of course).· Thanks to everyone for taking a look at this and helping me out!
Post Edited (photomankc) : 9/10/2009 2:50:45 AM GMT
Update:
After adjusting the output columns and using the following in the DAT section:
long 7 'hx
It is now working.· I can just barely get 24 columns but you can tell it's on the edge.· 23 columns gives me a strong picture and no jitter.· Still more real-estate than the serial LCD would give me and I only need 1 pin extra to get it.· It's also function-call compatible with the PC_Text object so if I want to go back to my serial display then a couple of comment/uncomment lines and everything just works.· Perfect!
Here's a photo of it all put together. (minus the polish of course).· Thanks to everyone for taking a look at this and helping me out!
Post Edited (photomankc) : 9/10/2009 2:50:45 AM GMT
Comments
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Composite NTSC sprite driver: Forum
NTSC & PAL driver templates: ObEx Forum
OnePinTVText driver: ObEx Forum
This gets me TV output:
This gets me snow and garbage:
-Phil
-Phil
Update: Looking at the scope, I see that the vertical and horizontal frequencies are way off.
Update 2: I tried forcing TV.spin's frqa to a value which yields the correct horizontal frequency, but the vertical frequency is still way off. I have a feeling that there are some critical code timings that just aren't happening fast enough at 40 MHz.
Post Edited (Phil Pilgrim (PhiPi)) : 9/8/2009 10:16:11 PM GMT
Glad to see it's getting looked at.
I wonder if anyone's tried 100MHz (with a 6.25MHz crystal), and if that works, at
50MHz? I agree with Phil; I think it was intended to work, but somewhere along the
way, part of it broke.
-Phil
The problem appears to be tasks computed during the blanking periods.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Propeller Wiki: Share the coolness!
Chat in real time with other Propellerheads on IRC #propeller @ freenode.net
Safety Tip: Life is as good as YOU think it is!
Edit: Well, it works at 40 but I'm not up for manually poking data into the screen array byte by byte so that's not going to work either.· TV_Terminal works but it uses half the chips memory for something.· Might be my only option though.· I have a serial LCD on the way, might be easier to just use it.
Post Edited (photomankc) : 9/9/2009 5:00:15 AM GMT
What you need to do, is copy TV_Text.spin to another file, TV_Slow_Text.spin, then change ( near the top )
cols = 40
to something like
cols = 24
and change ( near the bottom )
long 4 'hx
to something like
long 7 'hx
I'm not sure of the exact figures as I'm on 6Mhz crystal, but I can get
cols = 28
long 6 'hx
before the display doesn't work properly.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
http://www.propgfx.co.uk/forum/·home of the PropGFX Lite
·
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Propeller Wiki: Share the coolness!
Chat in real time with other Propellerheads on IRC #propeller @ freenode.net
Safety Tip: Life is as good as YOU think it is!
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
http://www.propgfx.co.uk/forum/·home of the PropGFX Lite
·
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
http://www.propgfx.co.uk/forum/·home of the PropGFX Lite
·