Var visst många som hade kommenterat bygget över natten
Blockschemat ser ungefär ut så här:
Blockschema.pdf
Om det är någon som tänker bygga något liknande så använd
i så fall antalet horisontella pixlar i multiplar om
två, typ 256, 512 eller kanske 1024
det sista kräver rätt
hög frekvens på pixelklockan.
Blir enklast då med minnesadresseringen, allt ligger "efter varandra" i minnet.
Väljer man något mer udda som t.ex 403 pixel så blir det "oanvända luckor"
i "adressrymden", räkna själva
I fallet med 512 horisontella pixlar, blir det då 512 / 8 = 64 bytes per rad.
Har man då 384 linjer vertikalt så blir det 64 x 384 = 24576 bytes totalt
ett 32kB statiskt RAM har 32768 bytes så det räcker mer än väl.
24kB för att visa en bild är överkomligt. Skulle man ta bort skiftregistret
och sätta en 8-bit (video) D/A så får man 256 gråtoner i stället men då måste
man höja klockfrekvensen 8ggr till räknarna + mer minne förstås
( typ 200kB RAM för 512 x 384 med 256 gråtoner ! )
Genom mindre modifieringar kan man köra grafikkortet på en TV i stället.
Serieporten plus några av RA-X ingångarna är lediga på PIC:en.
Kan ha ett seriellt interface mellan grafikkortet och resterande "mätinstrument"
som ger data som man vill visa på en datorskärm.
3 bytes bör räcka via serieporten om man ger horisontell koordinat ( X = 0-63 )
vertikalt (Y = 0-383 ) och 8-bitar data = 8-pixlar i rad om man packar datan
väl som sänds till PIC:en.
X: 0-63 = 7-bitar krävs
Y: 0-383 = 9-bitar
data: 8-bitar
så flyttar man över en bit från Y till X så blir det 8-bitar i varje "datapaket"
------------------------------------------------------------------------
Klockan är på 20,0MHz, division med 8 ger 2,5MHz till Horisontal-räknarna (Column)
2,5MHz delat med 80 ger 31,250kHz -> ger H-synk så småningom samt
klocksignal till Vertikal-räknarna (Row)
31,250kHz delat med 480 ger ~65.1Hz i V-synk vilket datorskärmen klarar av bra.
Båda räknarna nollställs m.h.a. några grindar. De ger samtidigt ut signal för
blanking så det "skräpet" som hamnar utanför de pixlar man vill visa, släcks ner
Synkpulserna kan man också ta fram genom att koda av räknarna med ett gäng logiska grindar
men jag valde en smidigare lösning genom att använda blanking-signalen
och fördröja den med två "MMV" typ 4528, den ena fördröjer och den andra ger synkpulsens
bredd. (allt detta gånger 2 för H och V )
Gav färre delar att använda MMV än koda av räknarna med logik.
Strömförbrukningen ligger på ca 260mA vid 5V. Byter man ut kretsarna mot 74HC/HCT
så drar den nog mindre med ström.
Hoppas detta gav några ideer för framtida byggen.......

Du har inte behörighet att öppna de filer som bifogats till detta inlägg.