VGA-näytönohjaimesta hyötyä

Moni varmaan huomannut, että I2C väylä tulee myös monitorille ja sitä voi itse käyttää siinä missä monitorikin. Linuxissa alkuun pääsee asentamalla i2c-tools paketin. i2cdetect:llä näkee tuetut komennot eli mitä kernelissä on implementoitu ko. väylälle -F x parametrila, missä x on i2c väylän numero(/dev/i2c-x). -l parametri listaa väylät, joille on ajurit ladattuna. -r(read) parametrilla saa katsottua, mitkä i2c-osoitteet jo kättelee eli saa listan käytössä olevista osoitteista.
http://forum.6502.org/viewtopic.php?f=4&t=3647
Toinen ominaisuus, mikä VGA-analogiliittimestä löytyy on VSYNC/HSYNC pulssit. Eli jos laitteessa on dual-head tai toinen näytönohjain, on mahdollista säätää noista itselle kelpo taajuuksia: Normi on 60Hz/31kHz, noin. Mutta jos liittimessä ei ole monitoria, niin cvt-ohjelmalla voi generoida tällaisiakin:
cvt 70 4192 536
# 72x4192 535.80 Hz (CVT) hsync: 3187.50 kHz; pclk: 280.50 MHz
Modeline "72x4192_536.00" 280.50 72 80 80 88 4192 4195 4205 5949 -hsync vsync
-Ainakin ATI:n radeon:sta tulee kiltisti ulos 3.8MHz:iin asti taajuus - joskin tuolloiin on hyvä bufferoida signaali ja käyttää lyhyttä johtoa: Onnistuin polttamaan omastani video-driverin ja nyt swing ei ole 0-5V vaan 0-2.5V - monitorit toimii liittimessä silti niin kuin ennenkin, induktiivinen kuorma kuten johto on ikävä asia ;)
-ATTiny25:n kanssa, johon syöttää em. korkeamman taajuuden(CLKIN), saa sisäänrakennetun 8x PLL kertojan kanssa ihan mukavasti taajuuksia ulos(CLKOUT), jotka on vieläpä kiteen tarkkoja. Rakentelussa tämä on kätevää, kun jos on tarvis nostaa kellotaajuutta, niin sitten generoi vain erilaisen scan-linen VGA-kortilta. Valmiiseen voi sitten ostaa oikean kokoisen kiteen.
-Eli riippuu näytönohjaimen valmistajasta ja mallista, mikä todella onnistuu. Vanhasta VGA-kortista ei todellakaan saanut kuin tuota n. 35kHz taajuutta eli ohjain ei huolinut kuin speksin mukaisia VESA-moodeja. Nykyisin noissa taajuudet 200 MHz luokkaa, omassani 280MHz, ja tuo modeline yllä on vain jakaja em. taajuudelle eli 72:lla jaettuna tulee toisesta sync:sta ja tämä edelleen jaettuna 4192:lla, mitä tulee toisesta, framerate:ksi on tässä valittu todella silmiä hivelevä 536Hz!
7196
Äänestä

Muut lukivat myös

Vastaukset 7

Vanhimmat

Jäi edellisestä postauksesta pois kokonaan komennot, joilla em. tykityksen saa käyttöön:
# xrandr --newmode my_clk 280.50 72 80 80 88 4192 4195 4205 5949 -hsync vsync
# xrandr --addmode VGA-0 my_clk
# xrandr --output VGA-0 --mode my_clk

Pois em. saa(kunhan eivät ole käytössä):
# xrandr --delmode VGA-0 my_clk
# xrandr --rmmode my_clk

Juuri mietin, että kyllä on kälystä tehdä taajuusjakoa avr:llä, kun kellotaajuus on n. 8MHz - ei siitä oikein generoida korkeita taajuuksia, kun jako kahdella vie jo puolet pois, mutta nyt saa jo muutamia vaihtoehtojakin tällä VGA tiny:lla tuotettua!

Äänestä

Aha

Äänestä

I2C - väylää varten löytyy valmiita USB - väylän sovitinpiirejä. Esimerkiksi ftdi:n piireillä pääsee 3.4 Mbit/s vauhtiin asti.

Jos tuo sama temppu onnistuu koneeseen lisätyn ylimääräisen näytönsovittimen kautta niin sitten siitä voisi olla iloa. Sen varsinaisen näytönsovittimen piirejä ei viitsi riskeerata kun jossakin vaiheessa jotakin kuitenkin menee pieleen...

Äänestä
  • Juu, kannattaa laittaa väliin vaikka 4049, niin ei hajoa mitään. Eipä silti - VESAn standardin mukaan nuo 5V TTL:t tuossa on 2k terminoitavia jos en väärin muista eli kyllä siinä pitäs olla otettu huomioon tuo johto - eipä tietystikään irti otettavaksi tarkoitettu, mutta kyllähän VGA-johtoa aina välillä irrotellaan ja kiinnitellään eikä mitään yleensä rikki mene.
    Tuolla Tiny25:llä saa siis taajuuksia 8x kertomalla aina n. 30 MHz:iin asti, mikä on aika monesti riittävä. Ja jos tiny on vain kertojana taajuudelle ja perään rakentaa toisesta "varsinaisen" harrastuslaitteen, niin siinä on samalla erotettu nuo johdot. Taitaa olla n. 100kHz tuo VESA:n I2C-väylä. Toisekseen on mahdollista tehdä 16x PLL kertoja, eli taajuutta ei tarvita välttämättä kuin 2MHz/8 näytönohjaimelta ja silti päästään 32MHz:iin asti.
    Tuolla on lisäksi analogisena signaalina saatavilla kolme kpl (R,G,B) 0-0.7V lähtöä jotka on terminoitava 75 ohmiin: Eli piirtämällä oikealla värillä ruudulle esim. sinikäyrää pitäisi tuolta saada ulos ihan nättiä siniä - sitä tosin en tiedä, mitä joutuu kikkailemaan että saa signaalista jatkuvaa, nythän se katkeaa hsync/vsync kohdalla..
    Mitä tuosta i2c-käytöstä hyötyy, niin onhan se paljon monipuolisempi, kuin sarjaportti käyttää, eikä väliin välttämättä tarvitse mitään tasonmuuntimiakaan, jos on samat jännitteet.
    Tuo usb-hommeli on varmasti mukava, jos sellaisen sattuu omistamaan, mutta en itse viitsisi sitä kyllä lähteä ostelemaan turhaan, jos tarve on lähinnä satunnaista harrastelua..

    Äänestä

Annatko vaikka viisi tavallisen elämän käytännön esimerkkiä mihin tuota järjetöntä innovaatiotasi voisi käyttää?

Äänestä
  • Pään asennon edessä olevaan tietsikan ruutuun nähden saa selville I2C - kommunikoivalla gyroskooppimoduulilla MPU6050 joka asennetaan kuulokkeiden sankaan. Tieto pään asennosta luetaan VGA - väylän lävitse tietokoneelle. Tietsikassa säädetään ohjelmallisesti kuunneltavan musiikin ja muiden äänien suunta halutuksi eli luodaan virtuaaliset kaiuttimet. Kun käännät päätäsi niin äänen lähteiden suunta tuntuu pysyvän paikallaan ikäänkuin kuuntelisi musiikkia kuulokkeiden sijaan kaiuttimista.

    I2C osaa suoraan ohjata digitaalisia rinnakkaislähtöjä ja sisääntuloja tarkoitusta varten kaupasta saatavilla halvoilla mikropiireillä. Tuosta siis mihin tahansa VGA-liitännällä olevaan tietokoneeseen 8 tai vaikka 32 - kanavainen digitaalinen I/O - portti.

    I2C:tä käytetään yleisesti huokeiden LCD - näyttömoduulien ohjauksessa. Väylän avulla voit siis ohjata ulkoista näyttömoduulia.

    Äänestä

  • Käytännössä siis tuolla on mahdollista toteuttaa pelkällä avr:llä OSD-näyttö vaikka monitoriin, jolla saa tehtyä säädöt - vaikka monitorissa ei sellaista olisikaan. Tämä itselläni oli mielessä, eli vanha 21" monitori ei mene oletuksena oikeaan tilaan, mutta jos tuon i2c:n kautta syöttää EDID tunnistukseksi, että monitori pystyy "1920x1600", niin tämän jälkeen se tämän tekee. Eikä edes tarvita ulkoisia komponentteja, kun lainataan kellotkin vga-liittimeltä! Mukaan tietysti pari nappia, että saa eri asetuksia helposti kytkettyä. Tietystikin, saa sen tehtyä manuaalisesti, mutta eipä pitäisi tarvita enää koskaan tehdä säätöjä, kun rakentaa tuollaisen.
    Ja onhan se ihan täysiverinen i2c-väylä, eli mikä tahansa on mahdollista, jos kaista riittää tarkoitukseen - monitori ei sitä luultavasti käytä kuin kerran käynnistyessään.

    Äänestä

Kommentoi aloitusta


testaasvaa kirjoitti:

Moni varmaan huomannut, että I2C väylä tulee myös monitorille ja sitä voi itse käyttää siinä missä monitorikin. Linuxissa alkuun pääsee asentamalla i2c-tools paketin. i2cdetect:llä näkee tuetut komennot eli mitä kernelissä on implementoitu ko. väylälle -F x parametrila, missä x on i2c väylän numero(/dev/i2c-x). -l parametri listaa väylät, joille on ajurit ladattuna. -r(read) parametrilla saa katsottua, mitkä i2c-osoitteet jo kättelee eli saa listan käytössä olevista osoitteista.
http://forum.6502.org/viewtopic.php?f=4&t=3647
Toinen ominaisuus, mikä VGA-analogiliittimestä löytyy on VSYNC/HSYNC pulssit. Eli jos laitteessa on dual-head tai toinen näytönohjain, on mahdollista säätää noista itselle kelpo taajuuksia: Normi on 60Hz/31kHz, noin. Mutta jos liittimessä ei ole monitoria, niin cvt-ohjelmalla voi generoida tällaisiakin:
cvt 70 4192 536
# 72x4192 535.80 Hz (CVT) hsync: 3187.50 kHz; pclk: 280.50 MHz
Modeline "72x4192_536.00" 280.50 72 80 80 88 4192 4195 4205 5949 -hsync vsync
-Ainakin ATI:n radeon:sta tulee kiltisti ulos 3.8MHz:iin asti taajuus - joskin tuolloiin on hyvä bufferoida signaali ja käyttää lyhyttä johtoa: Onnistuin polttamaan omastani video-driverin ja nyt swing ei ole 0-5V vaan 0-2.5V - monitorit toimii liittimessä silti niin kuin ennenkin, induktiivinen kuorma kuten johto on ikävä asia ;)
-ATTiny25:n kanssa, johon syöttää em. korkeamman taajuuden(CLKIN), saa sisäänrakennetun 8x PLL kertojan kanssa ihan mukavasti taajuuksia ulos(CLKOUT), jotka on vieläpä kiteen tarkkoja. Rakentelussa tämä on kätevää, kun jos on tarvis nostaa kellotaajuutta, niin sitten generoi vain erilaisen scan-linen VGA-kortilta. Valmiiseen voi sitten ostaa oikean kokoisen kiteen.
-Eli riippuu näytönohjaimen valmistajasta ja mallista, mikä todella onnistuu. Vanhasta VGA-kortista ei todellakaan saanut kuin tuota n. 35kHz taajuutta eli ohjain ei huolinut kuin speksin mukaisia VESA-moodeja. Nykyisin noissa taajuudet 200 MHz luokkaa, omassani 280MHz, ja tuo modeline yllä on vain jakaja em. taajuudelle eli 72:lla jaettuna tulee toisesta sync:sta ja tämä edelleen jaettuna 4192:lla, mitä tulee toisesta, framerate:ksi on tässä valittu todella silmiä hivelevä 536Hz!

Anonyymi
5000

Ilmoita asiaton sisältö

  • Sisältää materiaalia, joka on loukkaavaa, herjaavaa, rasistista, uhkailevaa tai ahdistelevaa.

  • Materiaali sisältää nimiä, yhteystietoja tai muita henkilökohtaisia tietoja. Julkisuuden henkilöistä, julkisissa viroissa toimivista ihmisistä sekä yritysten vastuuhenkilöistä saa keskustella työhön liittyen. Myös yksityiselämään liittyvistä asioista voi keskustella siltä osin, kuin niistä on julkisesti kerrottu.

  • Sisältää lapsille haitallista tai heiltä kiellettyä materiaalia. Seksuaalinen sisältö on sallittua aiheeseen tarkoitetuilla palstoilla, joiden ikäraja on 18 vuotta.

  • Lainvastaista sisältöä voi olla mm. yksityiselämää loukkaavan tiedon levitys, kiihottaminen kansanryhmää vastaan, laiton uhkaaminen, alaikäisiin liittyvä seksuaalinen sisältö/grooming, petokset, identiteettivarkaudet, kunnianloukkaukset ja tekijänoikeusrikkomukset.

  • Sisältö ei liity palstan tai keskusteluketjun aiheeseen.

  • Viesti ei ole suomea tai ruotsia (pl. International Forums), se sisältää mainontaa, se sisältää tekijänoikeuksin suojattua materiaalia, se on massapostitus tai jokin muu syy.

Jaa keskustelu