Elektronika.lt
 2019 m. spalio 19 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
Spalio 18 d. 21:09
„Volvo“ pristatė pirmą savo elektromobilį
Spalio 18 d. 20:44
5 telefoniniai žaidimai, kurie įėjo į istoriją: nuo linijos ir taško iki papildytos realybės
Spalio 18 d. 15:41
„Telia“ ruošią tiesioginį atsaką „Netflix“: televizija bus visuose ekranuose
Spalio 18 d. 13:26
„Samsung Galaxy Note 10“ apžvalga: privalumai ir trūkumai
Spalio 18 d. 12:25
Pasitikrinkite savo saugumą: 10 ženklų, kad kažkas seka jūsų kompiuterį
Spalio 18 d. 10:15
VDU mokslininkų inovacijos klimato kaitai stabdyti: augalininkystė be dirvožemio, biodujos iš atliekų ir blokų grandinės technologija (1)
Spalio 18 d. 08:45
Spręs neatidėliotiną ES uodegoje esančios Lietuvos galvosūkį – kur investuoti nuo 2021 metų?
Spalio 17 d. 20:12
Paspirtukų vairuotojai šią vasarą sukėlė dvigubai daugiau incidentų
Spalio 17 d. 16:28
NASA pristatė naujos kartos skafandrus išsilaipinimui Mėnulyje
Spalio 17 d. 12:32
Paneigė mitus apie telefonus: tie, kurie bando apsisaugoti nuo elektromagnetinių bangų, gyvena lyg šiltnamyje (1)
FS 19 Tractor mods
Farming Simulator 19 Mods, FS 19 Maps, How to install
ATS mods
ATS trailer mods, ATS truck mods, ATS map mods
FS 19 Tractors
Farming Simulator 19 Mods, FS 19 Maps, FS 19 Trucks
FS19 Maps, FS19 Trucks
Farming Simulator 2019 Mods, FS19 Tractors
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
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

www.matuok.lt - Interneto spartos matavimo sistema

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.rrt.lt – Lietuvos Respublikos ryšių reguliavimo tarnyba

PriedaiMobiliems.lt – telefonų priedai ir aksesuarai

MRO Supply


Reklama
‡ 1999–2019 © 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
Buhalterijos kursai, apskaitos kursai, vadovų apskaitos kursai
www.apskaitakiekvienam.lt
Svarstyklės – čia, matuokliai, laboratorinė įranga
www.moris.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/
FS 2019 Mods, FS 2017 Mods, FS 2015 Mods
www.farming2015mods.com
Mokslo populiarinimo projektas „Mokslas verslui ir visuomenei“
www.mokslasplius.lt
Reklama


Reklama