|
This project is based on Microchip's PIC 18F258 microcontroller and was built using only conventional (THT) parts.
1. Main features :
        • static text display: 14 rows in 525-line systems / 16 rows in 625-line systems (max. 35 characters each)
        • smooth scrolling text display: 1 row of 40 characters
        • 8*16 pixel monospaced VGA fonts
        • over 200 selectable fonts (via PC)
        • 3 selectable speeds in the scrolling text mode
        • changeable vertical text position on the screen
|
TVO Project v.3
|
The circuit uses as input a composite/RGB video signal. The font and the scrolling text for displaying are sent by a small PC app. (tvo_v3.exe)
to the PIC and stored somewhere in its code memory area. This way there is no need to send data after every power-up of the circuit (last sent
data will be available). In the scrolling text mode up to 24KB of data can be sent (or equivalent of a maximum 1h 10min duration
can be displayed at default speed). Because the static text will be much more often changed than the scrolling one, it is
saved in PIC's RAM. If you want to keep the same text position
on the screen on every power-up or save the static text - do a master clear reset (reset on PIC pin 1).
2. Functional description
The microcontroller receives font and text data from the computer's COM port over the MAX232 at RB1 pin
at 4800 bps (asynchronous reception emulated in assembly code for this pin). The PIC must also be synchronized to the incoming video. This is done
over LM1881 - /VSYNC is needed to refresh some internal register values and
horizontal sync pulses (taken from /CSYNC) needed to know when to drive the 4052 analog switch over the PIC's internal synchronous serial port.
The PIC is driven by a 27 MHz crystal clock source (an exact multiple of PAL and NTSC line frequency).
Despite that, a jagged text on the video screen is displayed because this frequency is not fully synchronized to the incoming video
line frequency (there is no genlock). You can use a programmable clock IC to improve that, but such chips are manufactured only using SMD technology - my search on the internet yielded
dissapointing results, unfortunately. My idea was to build the entire project with conventional parts still available on the market (i hope !) and an easy design for a home purpose. Keep in mind that the PIC must work at 27 MHz in order to accomplish its tasks
properly. Some assembly routines are heavily dependent on this clock rate, and if your video source is not a standard or a good quality one, you may encounter problems. I have tested it on my satellite receiver with PAL and NTSC signals and it worked well.
 |
Instead of MAX232 you can use a simple RS232 to TTL level converter like
this one
instead of MAX232 (i've found it on the internet). I think using other common NPN transistor or diode should work. In my design i've used a 100k resistor instead of the 10k one (the transistor is less saturated when on).
The circuitry (in the main schematic) built around the 2 BC547B transistors act as low voltage regulators aimed to ensure constant
levels on variable output loads (the 4052 inputs on/off). The 4052 switch has to "see" also 75 Ohm impedances on its inputs when switching between
input video and inserted text and vice-versa. The output levels of the regulators must be adjusted in order to get proper video voltage levels,
otherwise problems with the video may occur.
There are also switches at PIC pins available to perform other functions :
BKGD on/off - switches the background stripe on and off
HIGH/LOW SPEED - speed adjustment available only in scrolling text mode. If both switches are off the text will
scroll at default speed
LINE UP/DOWN - changes the text position on the video screen
525/625 (or TV) syst. - important for the static text mode. If connected to GND 16 rows of text will be displayed (for 625-line systems), otherwise
14 when connected to Vcc (for 525-line systems). Don't let this pin unconnected !
If you live in Europe and have a SCART connection (or whatever connection where the R, G, B components are available as standalone signals), you can use the circuit to display color characters and background, but you have to
add some extra hardware to it. In principle, an extra switch and a voltage level regulator for every component (R, G, B) is needed. A part of the circuit is already used in the main schematic (the CVBS part). It should look like this:
 |
| Color extension to the main circuit |
The transistors are common NPNs (prefferably with a high DC gain factor, 200 or above). Instead of normal resistors, series and parallel R networks can be used. The transistors can be replaced by an integrated array (like CA3082).
Please consider that some equipments which output signals over the SCART do not provide video components (R, G, B), only the composite signal. Even if they do, the input/display device may not accept them.
3. Demo clips
Here are some demo videos of what the circuit can do: