Elektronika.lt
 2020 m. sausio 28 d. Projektas | Reklama | Žinokite | Klausimai | Prisidėkite | Atsiliepimai | Kontaktai
Paieška portale
EN Facebook RSS

 Kas naujo  Katalogas  Parduotuvės  Forumas  Tinklaraščiai
 Pirmas puslapisSąrašas
 NaujienosSąrašas
 StraipsniaiSąrašas
 Vaizdo siužetaiSąrašas
 Nuolaidos, akcijosSąrašas
 Produktų apžvalgosSąrašas
 Naudingi patarimaiSąrašas
 Vykdomi projektaiSąrašas
 Schemų archyvasSąrašas
 - Garso technika
 - Automobilių elektronika
 - Buitinė elektronika
 - Kompiuterių elektronika
 - Maitinimo šaltiniai
 - Mikrovaldikliai
 - Radiotechnika
 - Šviesos efektai
 - Įvairi elektronika
 Teorija, žinynaiSąrašas
 Nuorodų katalogai
 Įvairūs siuntiniai
 Bendravimas
 Skelbimai ir pasiūlymai
 Elektronikos remontas
 Robotų kūrėjų klubas
 RTN žurnalo archyvas






 Verta paskaityti
Sausio 28 d. 08:29
Antroji žiema su dūmų detektoriais: ar jie padeda Lietuvos žmonėms? (1)
Sausio 27 d. 20:39
Projekto „Išmanusis miestas“ kūrybinės dirbtuvės kvies diskutuoti apie naujausias išmaniųjų miestų koncepcijas
Sausio 27 d. 20:10
Atvirų duomenų hakatone technologijų kūrėjai išvystė 7 inovatyvius produktus
Sausio 27 d. 16:12
Kraujo grupė, alergijos ir buvimo vieta – net ir užrakintas telefonas gali išgelbėti gyvybę
Sausio 27 d. 14:13
Lietuvių mokslininkų komanda sukūrė unikalų taršą matuojantį droną
Sausio 27 d. 12:37
„Terminatoriaus juosta“ pasiteisino kosminių šiukšlių bandyme — kaip tai veikia ir kada grįš
Sausio 27 d. 09:23
Kaip apsaugoti audio žinutes nuo savaiminio susinaikinimo
Sausio 27 d. 08:24
Slapta veido atpažinimo technologijų istorija: kur dingo informacija apie šį išradimą
Sausio 26 d. 11:45
Lietuvoje ketinama padidinti elektromagnetinės taršos normas: ką tai reiškia? (5)
Sausio 25 d. 20:07
„Garmin“ naujoji „Dash Cam Tandem“ kamera leidžia vienu metu įrašyti tai, kas vyksta tiek automobilyje, tiek ir lauke
FS19 Mods
FS19 Map mods, FS19 Courseplay, FS19 GPS mod
SnowRunner Mods
SnowRunner maps, SnowRunner trucks, How to install mods
FS 19 Tractors
Farming Simulator 19 Mods, FS 19 Maps, FS 19 Trucks
ETS2 Mods
ETS2 Trucks, ETS2 Bus, Euro Truck Simulator 2 Mods
Install MC Mods
Minecraft Dungeons Mods, Minecraft Dungeons Skins, Minecraft Dungeons Maps
FS19 Combines
Farming Simulator 19 Mods, FS19 Trucks, FS 19 Mods
How to Install Mods
Minecraft Dungeons Mod, Minecraft Dungeons Maps, Minecraft Dungeons Skins
Mobilieji telefonai
Mobilieji telefonai internetu, telefonų dėklai, telefonų priedai
Renginiai Vilniuje
Renginiai Kaune, renginiai Klaipėdoje, renginiai Palangoje
Šlagbaumas
Fontanai, lauko židinys, supynės
LS19 Mods
Fs19 modhub, fs19 maps, FS19 Seasons
Reklama
 Schemų archyvas » Kompiuterių elektronika Dalintis | Spausdinti

VGA signalo modeliavimas

Publikuota: 2007-02-20 10:16
Tematika: Kompiuterių elektronika
Tipas: Paprasta
Autorius: Šarūnas Dakanis
Aut. teisės: el. paštas ©Elektronika.lt

Pateikiame VGA signalo modeliavimą kompiuterio ekrane, tam naudojant AVR mikrovaldiklį „Atmega 16“. Čia pateikiami programų kodai, leidžiantys suprasti, kaip vyksta VGA signalų formavimas. Principinė elektrinė schema yra labai paprasta, tam tereikia kelių 1K varžų, poros kondensatorių, kvarcinio rezonatoriaus bei VGA jungties kompiuterio displėjui prijungti.

 Rodyti komentarus (4)
Įvertinimas:  1 2 3 4 5 

Pateikiame VGA signalo modeliavimą kompiuterio ekrane, tam naudojant AVR mikrovaldiklį „Atmega 16“. Čia pateikiami programų kodai, leidžiantys suprasti, kaip vyksta VGA signalų formavimas.

Principinė elektrinė schema yra labai paprasta, tam tereikia kelių 1K varžų, poros kondensatorių, kvarcinio rezonatoriaus bei VGA jungties kompiuterio ekranui prijungti (1 pav.). Vietoj naudojamo „Atmega 16“ galima naudoti ir kitokio tipo mikrovaldiklį (pvz.: „Atiny2313“).


1 pav. Principinė VGA signalo modeliavimo schema

VGA signalas modeliuojamas 640 x 480 raiškai. Todėl būtina žinoti horizontalaus ir vertikalaus sinchronizavimo laikus bei kitus parametrus, kuriuos galite rasti www.epanorama.net/documents/pc/vga_timing.html puslapyje. Tačiau pagrindiniai yra šie:
Taktų dažnis: 25,175 MHz
Eilutės keitimo dažnis: 31469 Hz
Kadro keitimo dažnis: 59,94 Hz arba 525 eilutės
Vertikalus sinchronizavimas: 63 us
Horizontalus sinchronizavimas: 3,81 us

2 pav. „Piešimo“ ekrane pavyzdžiai

Programos kodas yra rašytas „AVR Studio“ programa, GCC kalba (paveiksliukas.c).

Kaip matome, taktų dažnis yra 25,175 MHz, tai yra apie 39,72 ns, tačiau naudojant 16 MHz, instrukcijos atlikimo trukmė 62,5 ns. Įrašant i PORTB reikšmę 0 arba didesnį skaičių, skiriasi asemblerio kodo ilgis, todėl norint suvienodinti, papildomai reikalingas kodo vykdymo vėlinimas. Tam naudojama „nop“ instrukcija, kurią mikrovaldiklis vykdo kaip tuščią komandą. Taigi norint nuspalvinti arba palikti juodą ekrano elementą (tašką), sugaištama 2 ciklus t. y. 125 ns. Taigi, nuspalviname ~3 vaizdo elementus.

Naudojant mažesnio ar didesnio dažnio kvarcinį rezonatorių teks pakeisti TCNT0 reikšmes, arba tiesiog #define laikas < taimerio pradinė reikšmė> taimerio pradinę reikšmę. Taipogi teks suderinti (pakeisti) sinchronizavimo laikus, kad jie išliktų tokie, kokie yra nurodyti 640 x 480 raiškai.

Norint suvienodinti laikus „spalvinant“ pikselius, naudojome papildomą „nop“ instrukciją:


PORTB=0
nop; 

Asemblerio kalba būtų:


STS     0x0038,R1
NOP

Tuo tarpu:


PORTB=1

Asemblerio kalba būtų:


LDI     R24,0x01         
STS     0x0038,R24 

Norint suformuoti ekrane norimą paveiksliuką, galima jį tiesiogiai formuoti rankiniu būdu aprašant kiekvieną vaizdo elementą. Kad to nereikėtų daryti kiekvienu metu keičiant paveiksliuką, galima pasinaudoti sudaryta programa (VGA.exe), kuri pagal nupieštą paveiksliuką sugeneruoja paveiksliuką atitinantį kodą


3 pav. Programos formuojančios piešinio kodą pagrindinis langas

Patalpinus programa gautą kodą tarp žymių „//paveiksliuko kodas“ ir „//paveiksliuko kodo pabaiga“ bei perkompiliavus programą ir įrašius į mikrovaldiklį, displėjaus ekrane pamatysite savo suformuotą vaizdą.

Žemiau pateikta kodo iškarpa su nurodyta automatiškai sugeneruoto kodo įterpimo vieta:


while (1) //begalinis ciklas, kuriame paišomas paveiksliukas
      {
sleep_mode(); //laukiame taimerio pertraukties
if(linecount>45) 	//paliekame tuščias eilutes: top border, bottom border
{
sleep_mode(); //paliekame kelias tuščias eilutes
sleep_mode(); //
sleep_mode();
sleep_mode();	

//paveiksliuko piešimas, čia parodyta 20-ties „taškų“,
//„taškas“ – tai keli įjungti vaizdo elementai 
//PORTB=0 juoda
//PORTB=1 raudona
//PORTB=2 žalia
//PORTB=4 mėlyna
//PORTB=7 balta

//kitokie skaičiai iki 7, kitokia ir spalva

//paveiksliuko kodas


//paveiksliuko kodo pabaiga

while(linecount!=44){};  //laukiame tol kol nepasieksime 44 eilutės
}	

};	//amžino ciklo pabaiga
      
}	//pagrindinio ciklo (main) pabaiga

VGA signalas yra analoginis ir kinta nuo 0 iki 0,7 V (monitoriaus įėjimo varža 75 Ω). Taigi, norint gauti didesne spalvų gamą, galima daryti paprastą įtampos daliklį, pajungiant varžas į kitas mikrovaldiklio kojas.


4pav. Įtampos daliklis, naudojamas norint gauti didesnę spalvų gamą

Kitoje versijoje bus naudojamas masyvas, kurio turinį bus galima keisti mikrovaldiklio veikimo eigoje. Toks metodas yra daug racionalesnis nei aprašytasis.

Redagavo Darius Grigaitis




Draudžiama platinti, skelbti, kopijuoti
informaciją su nurodyta autoriaus teisių žyma be redakcijos sutikimo.

Global electronic components distributor – Allicdata Electronics

TMS ELECTRONICS
TMS ELECTRONICS

www.rslietuva.com – nemokamas elektronikos komponentų pristatymas

ENEBA's game store

Lietuvos mokinių neformaliojo švietimo centras

LOKMITA – įvairi matavimo, testavimo, analizės ir litavimo produkcija

Technologijos.lt

Mokslo festivalis „Erdvėlaivis Žemė

www.esaugumas.lt – apsaugok savo kompiuterį!

LTV.LT - lietuviškų tinklalapių vitrina

www.matuok.lt - Interneto spartos matavimo sistema

PriedaiMobiliems.lt – telefonų priedai ir aksesuarai

MRO Supply


Reklama
‡ 1999–2020 © Elektronika.lt | Autoriaus teisės | Privatumo politika | Atsakomybės ribojimas | Reklama | Turinys | Kontaktai LTV.LT - lietuviškų tinklalapių vitrina Valid XHTML 1.0!
Farming Simulator 2017 Mods, FS 17 Mods
ls2017.com
„TV programa“ – tiksli
televizijos programa

www.tvprograma.lt
Lietuvos mokinių neformaliojo švietimo centras
www.lmnsc.lt
Ilgalaikiai kreditai, paskola už automobilį, kreditų skaičiuoklė
www.mokilizingas.lt
Lietuvių kalba informacinėse technologijose
www.likit.lt
Lyderystės mokymai, mokymai vadovams, vadovų mokymai
www.tripleo.lt
Mokslo ir technologijų pasaulis – naujienos ir straipsniai
www.technologijos.lt
Farming Simulator 2019 Mods, FS19 Tractors, FS19 Maps
farmingsimulator19mods.fr
Optical filters, UV optics, electro optical crystals
www.eksmaoptics.com
LTV.LT – geriausių lietuviškų tinklalapių katalogas
www.ltv.lt/technologijos/
FS19 Mods, FS17 Mods, FS15 Mods
www.farming2015mods.com
Mokslo populiarinimo projektas „Mokslas verslui ir visuomenei“
www.mokslasplius.lt
Reklama


Reklama