Thuis ProductenLED Display Module

SparkFun of van Adafruit 32x32 signalen Van een privé-leraar van RGB LEIDENE Comité Bestuurders die verbinden de 16 gegevens + 5VDC wordt verfrist om een beeld te tonen

SparkFun of van Adafruit 32x32 signalen Van een privé-leraar van RGB LEIDENE Comité Bestuurders die verbinden de 16 gegevens + 5VDC wordt verfrist om een beeld te tonen

    • SparkFun or Adafruit 32x32 RGB LED Panel Driver Tutorial 16 data signals connect + 5VDC refreshed to display an image
    • SparkFun or Adafruit 32x32 RGB LED Panel Driver Tutorial 16 data signals connect + 5VDC refreshed to display an image
    • SparkFun or Adafruit 32x32 RGB LED Panel Driver Tutorial 16 data signals connect + 5VDC refreshed to display an image
    • SparkFun or Adafruit 32x32 RGB LED Panel Driver Tutorial 16 data signals connect + 5VDC refreshed to display an image
    • SparkFun or Adafruit 32x32 RGB LED Panel Driver Tutorial 16 data signals connect + 5VDC refreshed to display an image
    • SparkFun or Adafruit 32x32 RGB LED Panel Driver Tutorial 16 data signals connect + 5VDC refreshed to display an image
  • SparkFun or Adafruit 32x32 RGB LED Panel Driver Tutorial 16 data signals connect + 5VDC refreshed to display an image

    Productdetails:

    Plaats van herkomst: China
    Merknaam: Leeman
    Certificering: UL CE ROHS ISO2000 ETL SGS SAA Fcc EMC
    Modelnummer: PH5 RGB LEIDEN Comité

    Betalen & Verzenden Algemene voorwaarden:

    Min. bestelaantal: 1 eenheid of PCs 1
    Prijs: Negotiation (Good price)
    Verpakking Details: kartondoos of houten geval
    Levertijd: 1-3 werkdagen
    Betalingscondities: L/C, T/T, Western Union, Paypal, Creditcard, MoneyGram, VISUM, Mastercard, Contant geld
    Levering vermogen: 50,000 eenheden per Maand
    Contact nu
    Gedetailleerde productomschrijving
    module grootte: 160x160 of 320x160 of 256x256 of 192x192 of 256x128 Resolutie: 32x32 pixel64x32 pixel
    Helderheid: Meer dan 2500nits Ingangsspanning: DC5V
    Aftastentype: 1/2 of 1/4 of 1/8 of 1/16 of 1/32Scan vers Tarief: ≥ 2400Hz
    LED-Type: SMD2121 SMD3528 SMD3535 SMD2727 SMD5050 MTTF: >100.000 uren

    SparkFun of van Adafruit 32x32 signalen Van een privé-leraar van RGB LEIDENE Comité Bestuurders verbinden de 16 gegevens + 5VDC die wordt verfrist om een beeld te tonen

    Inleiding

    In dit project, zetten wij een RGB LEIDEN van SparkFun of van Adafruit 32x32 paneel aan een Zwarte raad van BeagleBone om gebruikend Xilinx Spartaanse 6 LX9 FPGA op de raad van LogiBone FPGA. De hardware voor dit project is vrij gemakkelijk aan concept-juiste 16 gegevenssignalen verbindt het LEIDENE paneel met de raad van LogiBone FPGA. De ingewikkeldheid van dit project ligt meestal in RTL en de software.

     

    SparkFun of van Adafruit 32x32 signalen Van een privé-leraar van RGB LEIDENE Comité Bestuurders die verbinden de 16 gegevens + 5VDC wordt verfrist om een beeld te tonen

    Figuur 1. RGB LEIDENE paneel met een willekeurig fonkelend patroon verbond met de raad van LogiBone FPGA en een andere beelden van het steekproefpaneel.

    Vereiste Hardware

    De volgende hardwarepunten worden vereist:

    • SparkFun of van Adafruit 32x32 RGB LEIDEN paneel
      Dit paneel bevat 1024 RGB LEDs die in een 32x32-matrijs wordt geschikt. De kolommen worden gedreven gebruikend veelvoudige reeksen verschuivingsregisters en de rijen worden gedreven, twee rijen tegelijkertijd, gebruikend een decoder van het 4 beetjeadres. Het paneel wordt gedreven bij 1/16ste plichtscyclus en moet onophoudelijk worden verfrist om een beeld te tonen.

    • BeagleBone Zwarte cpu raad w USB of +5VDC-voeding
      U zult een Zwarte cpu raad van BeagleBone en een +5VDC-voeding voor het nodig hebben. U kunt of een USB-kabel gebruiken om de raad van uw computer of een USB-machtsadapter aan te drijven of een afzonderlijke +5VDC, 2.1mm I.D., centrum-positieve AC adapter te gebruiken.

    • De raad van LogiBonefpga
      De FPGA-raad bevat een Xilinx Spartaanse 6 LX9 FPGA. FPGA bevat 32 18kbit-blokrammen. Wij zullen twee van de blokrammen als kaderbuffers gebruiken om de RGB pixelwaarden te houden die op het paneel moeten worden getoond. De twee PMOD-Compatibele schakelaars van Digilent zullen worden gebruikt om met het LEIDENE paneel te verbinden.

    • De verbindingsdraaddraden of de PMOD-aan-Vertoning adapter schepen in om FPGA met de vertoning te verbinden
      Aanvankelijk, gebruikte ik mannelijk-aan-vrouwelijke verbindingsdraaddraden om het paneel te verbinden. Dit stond me toe om de raad van LogiBone FPGA met het LEIDENE vertoningspaneel rechtstreeks te verbinden zonder de lintkabel te gebruiken inbegrepen met de vertoning. Als u slechts mannelijk-aan-mannelijke verbindingsdraaddraden hebt, zult u de kabel moeten gebruiken van het 16 positielint inbegrepen met de vertoning als adapter om met de mannelijke spelden op het vertoningseind van de verbindingsdraaddraden te verbinden.
      Een veel schonere, op lange termijn oplossing is deze raad en kabel te gebruiken van het 16 positielint inbegrepen met het LEIDENE paneel om de verbinding van de raad van LogiBone FPGA aan de de inputschakelaar van de vertoning te maken. Ik gebruikte ook precrimped einddraden en huisvesting om FPGA en het paneel samen te verbinden. Ik hield niet van deze oplossing omdat einddraden precrimped, wanneer geïnstalleerd in een 2x8-huisvestingsschakelaar, teveel kracht om op uit de de gegevensschakelaar van de vertoning vereiste op te nemen en te verwijderen.

    • +3.3V voeding, nominale 2.0A, 4.0A-piek
      Tijdens normale bedrijfsvoering, zal de vertoning hoogstens over 2A van stroom trekken. Als u „blokkeert“ verfris me met een alle-wit getoond patroon, de twee rijen die zullen trekken over 3.8A worden aangestoken. Een kleine 3.3V, 3.0A-Desktopvoeding zoals dit van Muizenvanger zal tijdens normale bedrijfsvoering volstaan. U zult uw de machtskoord van ownIEC60320 moeten leveren C13 met deze adapter te gebruiken.
      Deze panelen kunnen ook van +5V in plaats van 3.3V worden geleid. U zult helderdere greens, helderdere blauw krijgen, en minder-rood wit indien gedreven door +5V in plaats van +3.3V. U zult over 15% ook meer stroom en gebruik over 65% meer macht bij +5V in plaats van +3.3V trekken. Als u een +5V-levering gebruikt, ben extra zorgvuldig de raad van LogiBone FPGA met de de outputschakelaar van de vertoning toevallig om niet te verbinden.

    • De vrouwelijke gelijkstroom-(facultatieve) adapter van de vathefboom
      Een vrouwelijke gelijkstroom-adapter van de vathefboom zal het verbinden van het paneel met de veel gemakkelijkere voeding maken. Als u geen adapter hebt, kunt u altijd snijden, verbinden, solderen, en de hitte krimpt de verbindingen tussen de voeding en het geleide paneel.

    Vereiste Software

    • De voorraad ValentFX LogiBone Ubuntu bouwt w de de pitmodule van LogiBone logibone__dm.ko en logi_loader
      Download en volg hier de instructies om het beeld standaard van LogiBone Ubuntu op een SD-geheugenkaart te installeren.
    • Xilinxise WebPack Software
      Als u het FPGA-beetjedossier wilt bouwen zelf of Verilog aanpassen om meer panelen te drijven of andere douanefunctionaliteit (zoals een co-processor helpen moeilijke pixelpatronen gegevens verwerken) toe te voegen, zult u de software van Xilinx downloaden en moeten installeren ISE WebPack. De instructies zijn hier. Als u slechts het beetjedossier het standaard van FPGA wilt gebruiken, kunt u het installeren van de software van Xilinx overslaan ISE WebPack.
    • Van LEIDEN van de nauwe vallei de bewaarplaats paneelgit
      Tot slot zult u mijn GIT-bewaarplaats in http://github.com/bikerglen/beagle aan uw BeagleBone-Zwarte moeten klonen. Deze bewaarplaats bevat de Verilog-broncode voor FPGA, een dossier van het prebuiltbeetje, en C++-broncode voor het tonen van sommige demonstratiepatronen op het paneel. De instructies voor het downloaden van of het klonen van en het gebruiken van de bewaarplaats worden later voorgesteld.

    Theorie van Verrichting

    Dit systeem heeft drie belangrijke componenten: het LEIDENE paneel, de FPGA-code, en de C++-code. Onderzoek in detail elk van deze drie belangrijke componenten.

    Het LEIDENE Comité

    LEIDENE Comité Hardware

    Het LEIDENE paneel bevat 1024 RGB LEDs die in een matrijs van 32 rijen en 32 kolommen wordt geschikt. Elk bevat RGB leiden afzonderlijke rode, groene, en blauwe LEIDENE spaanders die samen in één enkel pakket worden geassembleerd. De vertoning wordt onderverdeeld horizontaal in de twee helften. De hoogste helft bestaat uit 32 kolommen en 16 rijen. De bodemhelft bestaat ook uit 32 kolommen en 16 rijen.

    De kolommen van de vertoning worden gedreven door één reeks bestuurders en de rijen van de vertoning worden gedreven door een andere reeks bestuurders. Om een leiden te verlichten, moeten de bestuurders voor zowel de kolom als de rij voor dat leiden worden aangezet. Om de kleur van een leiden te veranderen, wordt rood, groen, en de prima aandelen in elk LEIDEN pakket gecontroleerd individueel en heeft hun eigen kolombestuurders. Figuur 2 hieronder is een schematische vertegenwoordiging van de de kolom en de rijbestuurdersorganisatie van de vertoning.

     

    SparkFun of van Adafruit 32x32 signalen Van een privé-leraar van RGB LEIDENE Comité Bestuurders die verbinden de 16 gegevens + 5VDC wordt verfrist om een beeld te tonen

    Figuur 2. RGB LEIDENE paneelkolom en de organisatie van de rijbestuurder.

    Het paneel bevat zes reeksen kolombestuurders; drie voor de hoogste helft van de vertoning en drie voor de bodem. Elke bestuurder heeft 32 output. De drie bestuurders voor de bovenkant van de vertoning drijven rood, groen, en prima aandelen in elk van de 32 kolommen van LEDs in rijen 0 tot 15 van het paneel. De drie bestuurders voor de bodem van de vertoning drijven rood, groen, en prima aandelen in elk van de 32 kolommen van LEDs in rijen 16 tot 31 van het paneel.

    Elk van de bestuurders heeft een periodieke gegevensinvoer, een blanking input, een verschuivingsregister, en een parallel outputregister zoals die hieronder in Figuur 3 wordt getoond. Het aanwezige gegeven over de periodieke gegevensinvoer wordt verplaatst in het verschuivingsregister gebruikend het SCLK-signaal. Nadat een volledige rij van gegevens binnen naar het verschuivingsregister is verplaatst, wordt het KLINKsignaal gebruikt om de rij van pixelgegevens van het verschuivingsregister in het parallelle outputregister over te brengen. Als een beetje in het outputregister een ‚1‘ is en de blanking input deasserted is, zal de bestuurder voor die kolom worden toegelaten; anders, zal de bestuurder worden uitgezet. Het gegeven wordt verplaatst van de juiste rand van de vertoning aan de linkerrand van de vertoning. Met andere woorden, zal het eerste binnen verplaatste beetje op de linkerrand van de vertoning worden getoond en het laatste binnen verplaatste beetje zal op het recht worden getoond.

    SparkFun of van Adafruit 32x32 signalen Van een privé-leraar van RGB LEIDENE Comité Bestuurders die verbinden de 16 gegevens + 5VDC wordt verfrist om een beeld te tonen

    Figuur 3. De verrichting van de kolombestuurder voor de R0-gegevensinvoer en de hoogste-halve rode kolommenoutput. Er zijn twee meer van deze verschuivingsregisters bij de bovenkant van de vertoning voor de hoogste-halve groene en blauwe kolommen en drie meer bij de bodem voor de bodem half rode, groene, en blauwe kolommen.

    De rode, groene, en blauwe kolombestuurders voor de hoogste helft van de vertoning zijn verbonden respectievelijk aan de gegevensinvoeren van R0, van G0, en B0-. De rode, groene, en blauwe kolombestuurders voor de bodemhelft van de vertoning zijn verbonden respectievelijk aan de gegevensinvoeren van R1, van G1, en B1-. Alle zes van de bestuurders met 32 bits delen gemeenschappelijke SCLK, KLINK, en LEGE signalen.

    De rijen worden gedreven gebruikend vier adresbeetjes en een adresdecoder. De vier-beetje adresinput aan de rijbestuurders wordt gedecodeerd en de twee rijbestuurders die aan dat adres beantwoorden zullen worden aangezet. Wanneer A [3:0] 0 is, worden rijen 0 en 16 van de vertoning aangezet. Wanneer A [3:0] 1 is, worden rijen 1 en 17 van de vertoning aangezet. Dit patroon gaat tot A [3:0] is 15 verder en rijen 15 en 31 worden aangezet.

    Naast de rij en de kolomlogica en bestuurders, heeft de vertoning een blanking input. Deze input wordt zeer waarschijnlijk verbonden met de kolombestuurders. Wanneer het blanking signaal wordt beweerd, worden alle pixel uitgezet en de vertoning zal zwart zijn. Wanneer het blanking signaal deasserted is, zullen de gerichte rijen en de kolommen worden gedreven en de overeenkomstige pixel verlicht. Om een beeld te tonen zonder het trillen en het ghosting, moeten elk van deze signalen worden gebruikt en behoorlijk worden gerangschikt wanneer het drijven van het paneel.

    Het drijven van het Comité

    De vertoning wordt simultaan overgeseind en heeft a1/16th-plichtscyclus. Dit betekent dat neen meer dan één rij uit 16 in de hoogste helft van de vertoning en één rij uit 16 in de bodemhelft van de vertoning in een keer ooit verlicht zijn. Voorts kunnen leiden slechts of weg zijn. Als zowel de rij als de kolom voor leiden worden aangezet, verlicht is de LEIDENE wil; anders, weg is de LEIDENE wil.

    Om een beeld te tonen, moet het volledige LEIDENE paneel worden afgetast snel genoeg zodat het schijnt om een ononderbroken beeld te tonen zonder het trillen. Om verschillende kleuren en verschillende helderheidsniveaus te tonen, moet de helderheid van de rode, groene, en blauwe LEIDENE spaanders binnen elk LEIDEN pakket worden aangepast door de hoeveelheid tijd dat te variëren elke LEIDENE spaander is of weg binnen enig cyclus verfris.

    Het basisdieproces wordt gebruikt om de vertoning te verfrissen wanneer het gebruiken van drie bits per pixelkleur (men beet voor rood; men beet voor groen; en men beet voor blauw) is volgend:

    1. Verplaats de pixelgegevens voor rij 0 in de hoogste kolombestuurders en de pixelgegevens voor rij 16 in de bestuurders van de bodemkolom gebruikend R0, G0, B0, R1, G1, en B1-gegevensinvoeren en het SCLK-signaal van de verschuivingsklok.
    2. Beweer het blanking signaal aan spatie de vertoning.
    3. Plaats het ingevoerde adres aan 0.
    4. Sluit de inhoud van de de verschuivingsregisters van de kolombestuurders in de de outputregisters van de kolombestuurders gebruikend het KLINKsignaal.
    5. Deassert het blanking signaal aan vertoningsrijen 0 en 16.
    6. Wacht één of andere vaste hoeveelheid tijd.
    7. Herhaal het proces voor elk van de paren rijen in de vertoning.
    8. Herhaal het volledige proces minstens 100 tot 200 keer per seconde om trilling te verhinderen.

    Het bovengenoemde proces gebruikt beet per LEIDENE kleur. Dit zal u acht mogelijke kleuren geven: zwart; de primaire rood, groene kleuren, en blauw; de secundaire cyaan, magenta, en gele kleuren; en wit.

    Om meer kleuren en helderheidsniveaus te tonen wordt de bovengenoemde techniek gewijzigd om binair gecodeerde modulatie te gebruiken. In binair gecodeerde modulatie, is elk pixel het gecontroleerde gebruiken meer dan één enkel beetje per kleur per pixel. De hoeveelheid tijd elke rode, groene, en blauwe LEIDENE spaander is op is proportioneel dan gevarieerd aan de rode, groene, en blauwe waarden van het pixel.

    In binair gecodeerde modulatie, wordt het volgende proces uitgevoerd om de vertoning te verfrissen:

    1. De verschuiving beet nul van de rode, groene, en blauwe waarden van elk pixel voor rijen 0 en 16 in de kolombestuurders.
    2. Beweer het blanking signaal aan spatie de vertoning.
    3. Plaats het ingevoerde adres aan 0.
    4. Sluit de inhoud van de de verschuivingsregisters van de kolombestuurders in de de outputregisters van de kolombestuurders gebruikend het KLINKsignaal.
    5. Deassert het blanking signaal aan vertoningsrijen 0 en 16.
    6. Wacht één of andere hoeveelheid tijd, N.
    7. Herhaal het bovengenoemde proces voor het volgende hogere ordebeetje kleurengegevens in dezelfde rij. In stap 6, wacht twee keer de vorige vertragingstijd. Herhaal dit proces voor elk beetje kleurengegevens, die de vertragingstijd na het tonen van elk opeenvolgend beetje verdubbelen.
    8. Herhaal het bovengenoemde proces voor elk van de paren rijen in de vertoning.
    9. Herhaal het volledige proces minstens 100 tot 200 keer per seconde om trilling te verhinderen.

    Merk op dat in effectieve toepassingen, het proces om de pixelgegevens in de verschuivingsregisters in Stap 1 te verplaatsen gewoonlijk tijdens de wachttijdtijd in Stap 6 wordt gedaan.

    Het globale vertoning verduisteren kan worden uitgevoerd door de hoeveelheid tijd te variëren het blanking signaal beweerd=wordt= of deasserted binnen de wachttijdtijdspanne N. Bijvoorbeeld, zal het beweren van het blanking signaal 25% vroeg in een vertoning met een helderheid van 75% in plaats van 100% resulteren. Merk op dat tijdens het globale verduisteren, de wachttijdtijd zelf niet wordt verkort of verlengd; slechts wordt het blanking signaal gewijzigd om vroeger worden beweerd dan het normaal zou zijn.

    FPGA

    FPGA zet de C++-software die van de patroongeneratie op BeagleBone Zwarte cpu aan het LEIDENE paneel lopen om. FPGA doet het zware opheffen vereist om het volledige LEIDENE paneel te verfrissen over 200 keer per seconde. Dit verlaat BeagleBone Zwarte cpu vrij om de patronen te produceren en andere taken uit te voeren.

    SparkFun of van Adafruit 32x32 signalen Van een privé-leraar van RGB LEIDENE Comité Bestuurders die verbinden de 16 gegevens + 5VDC wordt verfrist om een beeld te tonen

    Figuur 4. Blokdiagramvanhetsysteemmet inbegrip vaneenblokdiagramvandebelangrijkstefunctioneleblokkenvanFPGA.

    Zoals aangetoond in Figuur 4 hierboven, produceert de software die op de BeagleBone-Zwarte lopen patronen. Deze patronen worden gevoed aan FPGA op de LogiBone-raad gebruikend de Ti-bus van GPMC van Soc. Deze patronen worden geschreven aan een dubbel-havengeheugen dat als vertoningsbuffer dient. Tot slot leest een vertoningscontrolemechanisme de patronen uit het dubbele havengeheugen, verplaatst de gegevens in de vertoning, en laat de rijbestuurders toe zoals nodig om het beeld te tonen. Het volledige proces wordt herhaald over 200 keer per seconde en produceert RGB beeld 32 x 32 met 12 beetjekleur zonder enige interactie van BeagleBone-cpu van de Zwarten.

    GPMC-Interface

    Ti-Soc heeft een programmeerbare geheugeninterface genoemd het geheugencontrolemechanisme voor algemeen gebruik (GPMC). Deze interface is uiterst flexibel. Het kan op zowel synchrone als asynchrone wijzen werken en de bustiming is programmeerbaar in 10ns-toename. De GPMC-bus zal worden gebruikt om pixelgegevens van de software over te brengen over de BeagleBone-Zwarte aan FPGA op de LogiBone-raad.

    In ons systeem, wordt GPMC gevormd om op zijn asynchrone, gemultiplexte adres/gegevenswijze te werken. Op deze wijze, zowel zijn het adres als de gegevensbussen 16 beetjes breed. Dit laat dat een volledig 12 beetjepixel toe wordt overgebracht van cpu op BBB aan FPGA op de LogiBone-raad in enig schrijft verrichting. Voor meer informatie over de asynchrone, gemultiplexte wijze van GPMC van verrichting, zie secties 7.1.3.3 .10.1.1 van het de Microprocessors Technische Referentiehandboek van AM335x ARM® cortex™-A8.

    Ik gebruik een lichtjes verschillende kring in FPGA om aan de GPMC-bus om te zetten dan de projecten van voorraadlogibone. Het is een beetje langzamer dan de voorraadvhdl kring, maar waarborgt dat elk van cpu over de GPMC-bus creeert één schrijft precies stroboscoopimpuls aan de registerinterface binnen FPGA schrijft. Omdat het lichtjes langzamer is dan de voorraadkring, vereist het gewijzigde bustiming en zo een de opstellingsdossier van de aangepast apparaatboom. Figuur 5 toont hieronder de bustiming die de gewijzigde GPMC-interface gebruiken om uit te voeren aan FPGA schrijft. Figuur 6 toont hieronder de bustiming gebruikend de gewijzigde GPMC-interface om gelezen van FPGA uit te voeren.

    SparkFun of van Adafruit 32x32 signalen Van een privé-leraar van RGB LEIDENE Comité Bestuurders die verbinden de 16 gegevens + 5VDC wordt verfrist om een beeld te tonen

    Figuur 5. De simulatie van schrijft aan het GPMC-doel gebruikend de gewijzigde bustiming.

    SparkFun of van Adafruit 32x32 signalen Van een privé-leraar van RGB LEIDENE Comité Bestuurders die verbinden de 16 gegevens + 5VDC wordt verfrist om een beeld te tonen

    Figuur 6. Simulatie van gelezen van het GPMC-doel die de gewijzigde bustiming gebruiken.

    Gelezen of schrijft het adres in een tijdelijk bedrijfsregister op de toenemende rand van het GPMC_ADVN-signaal gesloten is en schrijf de gegevens latached in zijn eigen tijdelijk bedrijfsregister op de dalende rand van het GPMC_WEN-signaal zijn. Dit vereist gebruikend GPMC_ADVN en een omgekeerde versie van de GPMC_WEN-gegevenssignalen als klokken. Technisch, is gebruiken van gegevenssignalen als klokken bruto. Het is eigenlijk zo bruto, zullen de Xilinx-hulpmiddelen een fout voor deze voorwaarde produceren. Maar u kunt een uitzondering in het UCF-dossier voor de beïnvloede netten en de krachtsynthese plaatsen om verder te gaan. Het zou veel beter zijn om GPMC op zijn synchrone wijze te gebruiken, maar deze techniek is goed genoeg voor FPGA tot ik tijd heb om een synchrone versie van de interface, een synchroon GPMC-busmodel voor simulatie te bouwen, en te leren hoe te om de apparatenboom verder te wijzigen.

    Naast het sluiten van het adres en schrijf gegevenswaarden in bedrijfsregisters, GPMC_CSN, GPMC_WEN, en GPMC_OEN-de controlessignalen worden geregistreerd en in het de klokdomein van 100MHz van FPGA gebracht. Eens in het de klokdomein dat van FPGA, zijn WEN en OEN-de signalen met poorten met het CSN-signaal en de rand wordt ontdekt om te ontdekken schrijft aan het GPCM-doel en leest van het GPMC-doel. Wanneer gelezen of schrijf, de inhoud van het adres wordt ontdekt en schrijf de gegevensbedrijfsregisters in registers in het de klokdomein van 100MHz van FPGA worden gevangen.

    De primaire reden om de GPMC-bus tegenover het dossier van de de boomopstelling van het voorraadapparaat te vertragen was de tijd dat uit te rekken elk van deze controlesignalen aan minstens 30ns laag of hoog is om te waarborgen dat de randen van de signalen in het de klokdomein van 100MHz van FPGA zouden kunnen worden ontdekt. Dit waarborgde ook dat het adres en de gegevens in hun eigen bedrijfsregisters alvorens de inhoud van die registers in de adres en gegevensregisters stabiel zouden zijn te bewegen die in het de klokdomein van 100MHz van FPGA worden geklokt.

    De output van het GPMC-doel is een bus dat ik de langzame bus roep. De langzame bus verbindt het GPMC-doel met de het registerinterface van FPGA. Figuur 7 toont een voorbeeld de langzame bus verrichting schrijft. Figuur 8 toont een voorbeeld langzame bus gelezen verrichting.

    SparkFun of van Adafruit 32x32 signalen Van een privé-leraar van RGB LEIDENE Comité Bestuurders die verbinden de 16 gegevens + 5VDC wordt verfrist om een beeld te tonen

    Figuur 7. De simulatie van een langzame bus schrijft.

    sb_addr, sb_wr, en sb_wr_data voor precies één enkele 100MHz-klokimpuls geldig zal zijn telkens als voorkomt op de GPMC-bus schrijf. Wanneer de registerinterface beweerde sb_wr ziet, schrijft het sb_wr_data in het register bij sb_addr.

    SparkFun of van Adafruit 32x32 signalen Van een privé-leraar van RGB LEIDENE Comité Bestuurders die verbinden de 16 gegevens + 5VDC wordt verfrist om een beeld te tonen

    Figuur 8. Simulatie van een langzame gelezen bus.

    sb_addr en sb_rd voor precies één enkele 100MHz-klokimpuls geldig zal zijn telkens als gelezen op de GPMC-bus voorkomt. De registerinterface ziet dan beweerde sb_rd de waarde van het register op het adres sb_addr op de sb_rd_databus op de zeer volgende klokcyclus moet terugkeren.

    Registerinterface

    De registerinterface wordt uitgevoerd in het hoogste niveau van FPGA Verilog. De registerinterface bepaalt de mening de software van FPGA heeft. Lijst 1 onderstaande lijsten de registers in FPGA.

    FPGA-Adres BBB-het Adres van Soc Naam Beschrijving
    0x0000 0x0000 R/W testreg. 1 Lees-schrijftestregister. Schrijf om het even welke waarde aan dit register. Leest terugkeer eerder geschreven waarde.
    0x0001 0x0002 R/W testreg. 2 Lees-schrijftestregister. Schrijf om het even welke waarde aan dit register. Leest terugkeer eerder geschreven waarde.
    0x0002 0x0004 R/W testreg. 3 Lees-schrijftestregister. Schrijf om het even welke waarde aan dit register. Leest terugkeer eerder geschreven waarde.
    0x0003 0x0006 R/W testreg. 4 Lees-schrijftestregister. Schrijf om het even welke waarde aan dit register. Leest terugkeer eerder geschreven waarde.
    0x0004 0x0008 Alleen-lezen Testreg. 1 Alleen-lezen testregisters. Leest terugkeer in code vastgelegde waarden. Zie RTL voor teruggekeerde waarden.
    0x0005 0x000a Test alleen-lezen Reg. 2 Test alleen-lezen registers. Leest terugkeer in code vastgelegde waarden. Zie RTL voor teruggekeerde waarden.
    0x0006 0x000c Test alleen-lezen Reg. 3 Test alleen-lezen registers. Leest terugkeer in code vastgelegde waarden. Zie RTL voor teruggekeerde waarden.
    0x0007 0x000e Test alleen-lezen Reg. 4 Test alleen-lezen registers. Leest terugkeer in code vastgelegde waarden. Zie RTL voor teruggekeerde waarden.
    0x0008 0x0010 Toon het Register van het Bufferadres Schrijft aan dit geplaatste register de het adreswijzer van de vertoningsbuffer. De het adreswijzer van de vertoningsbuffer richt aan de plaats in het geheugen van de vertoningsbuffer dat zal worden gewijzigd wanneer een pixelwaarde aan het de gegevensregister van de vertoningsbuffer wordt geschreven. Zie de vertoningsbufferzone van dit document voor de regeling van pixel in geheugen.
    0x0009 0x0012 Toon het Register van Buffergegevens Het schrijven van een pixelwaarde aan dit register schrijft de pixelwaarde aan de vertoningsbuffer op het adres aan door de het adreswijzer van de vertoningsbuffer wordt gericht. Nadat elk schrijft, wordt de het adreswijzer van de vertoningsbuffer verhoogd door men om op het volgende pixel in de vertoningsbuffer te richten.
    0x000a 0x0014 Het Uitgezochte Register van de vertoningsbuffer 0 selecteren buffer 0 voor vertoning; 1 selecteert buffer 1 voor vertoning; Leest terugkeer die de buffer momenteel wordt getoond.

    Lijst 1. FPGA-registers.

    Vertoningsbuffers

    De vertoningsbuffers zijn uitgevoerde die usinx Xilinx-Blokrammen als dubbel-havengeheugen worden gevormd met asynchrone gelezen en schrijven havens. Eerste RAM bevat vertoningsbuffers 0 en 1 voor de hoogste helft van de vertoning. Tweede RAM bevat vertoningsbuffers 0 en 1 voor de bodemhelft van de vertoning. Het structureren van het geheugen om de helft van te bevatten de vertoning elk laat dat de pixel in rijen 0 tot 15 toe worden gelezen van geheugen op de nauwkeurige zelfde klok dat de pixel in rijen 16 tot 31 van geheugen worden gelezen.

    Vertoningsbuffer 0 wordt gevestigd op adres 0x0000. Vertoningsbuffer 1 wordt gevestigd op adres 0x0400. Elke vertoningsbuffer bevat 1024 12 die beetjesrgb-waarden als 32 rijen van 32 kolommen worden geschikt. Binnen elke vertoningsbuffer, wordt het hoogste-linkerpixel opgeslagen bij compensatie 0, wordt het onderst-juiste pixel opgeslagen bij compensatie 0x3ff. Beetjes 4 tot 0 van de pixelcompensatie zijn 0x00 voor pixel in de uiterst linkse kolom op de vertoning; beetjes 4 tot 0 van de pixelcompensatie zijn 0x1F voor pixel in de meest rechtse kolom.

    De pixel worden opgeslagen in het geheugen als 12 beetjesrgb-waarden. Deze waarden worden opgeslagen juist-justiified. Beetjes 11 tot 8 zijn het rode pixelniveau, zijn beetjes 7 tot 4 het groene niveau, en beetjes 3 tot 0 zijn het blauwe niveau.

    Vertoningsbestuurder

    De vertoningsbestuurder leest pixelwaarden van geheugen, verplaatst die waarden naar de vertoning, en cycli zonodig door de rijen van de vertoning om binair gecodeerde modulatie uit te voeren zoals die in de theorie van verrichtingshoofdstuk wordt beschreven van dit document. De vertoningsbestuurder wordt uitgevoerd als toestandsmachine. Elke staat voert een stap in uit verfrist proces. Wanneer die stap volledig is, beweegt de toestandsmachine zich aan de volgende stap in het proces.

    Figuur 9 toont hieronder simulatiegolfvormen voor de controle en gegevensoutput voor drie rijenwaarde van vertoningsgegevens. Het basisproces is aan spatie de vertoning, klink in de eerder verplaatste gegevens, de rij selecteert, unblank de vertoning, verschuiving in de volgende reeks pixelgegevens, en dan wacht op een updatetijdopnemer bijwerkt te verlopen. Dit wordt herhaald vier keer voor elke rij. Als u de blanking output onderzoekt, zult u opmerken dat zijn lage periode drie keer binnen de outputperiode voor elke vertoningsrij verdubbelt. Dit is het resultaat van het gebruiken van binair gecodeerde modulatie om de intensiteit van elk pixel te variëren.

    SparkFun of van Adafruit 32x32 signalen Van een privé-leraar van RGB LEIDENE Comité Bestuurders die verbinden de 16 gegevens + 5VDC wordt verfrist om een beeld te tonen

    Figuur 9. Simulatiegolfvormen voor de de outputverbindingen van vertoningsgegevens.

    De software

    De demonstratiesoftware gebruikt het /dev/logibone_mem-apparaat om met FPGA te communiceren. De bestuurder voor dit apparaat maakt deel uit van het beeld van voorraadlogibone Ubuntu en zijn loadable pitmodule wordt geïnstalleerd door het gewijzigde de opstellingsshell van de apparatenboom manuscript dat in de GitHub-bewaarplaats voor het LEIDENE paneel inbegrepen is. (Meer over dit onderwerp in een recentere sectie.) Deze bestuurder brengt de registers in FPGA aan een gedeelte van de het adresruimte van BBB cpu's gebruikend in kaart GPMC. GPMC brengt normaal geheugen in de het adresruimte van cpu in kaart. Omdat ons FPGA als een geheugen aan de GPMC-bus kijkt, kunnen zijn registers in de cpu-adresruimte ook worden in kaart gebracht. Vrij koel. Geen SPI, I2C, enz. enkel snel parallelle toegangen tussen cpu en FPGA. Deze geheugen-in kaart gebrachte ruimte kan dan worden betreden door het /dev/logbone_mem-apparaat te openen gebruikend de c-vraag van de bibliotheek open functie en leest en schrijft aan een register in FPGA kan worden uitgevoerd gebruikend de pread en pwrite c-vraag van de bibliotheekfunctie.

    Figuur 10 hieronder is een blokdiagram van de stapel van de demonstratiesoftware. In de demonstratiesoftware, opent de leiding het /dev/logibone_mem-apparaat, vult het globale buffergeheugen, gLevels, met al zwarte, en roept dan WriteLevels om de globale buffer te schrijven aan de vertoning en de vertoning te ontruimen. Zodra de vertoning wordt ontruimd, concretiseert de belangrijkste functie een patroon/animatiesubklasse zoals een uitstralende cirkel, een perlinlawaai, of colorwash een subklasse. Deze subklasse wordt afgeleid uit een generische klasse van de patroonbasis.

    De generische klasse van de patroonbasis gebruikt een aannemer om de hoogte en de breedte van het te produceren patroon te plaatsen. De afgeleide klassen kunnen hun eigen argumenten aan hun eigen aannemers toevoegen. De basisklasse heeft ook twee zuivere virtuele lidfuncties, init en volgende, die om het even welke afgeleide klassen moeten uitvoeren. De initfunctie bereidt een patroon voor voor het eerst te tonen. Het stelt typisch om het even welke informatie van de staat terug naar het begin van het patroon terug. De volgende functie berekent het volgende kader van het patroon en schrijft dat het kader aan globale gLevels als buffer optreedt voor.

    Nadat de leiding de patroonsubklasse heeft geconcretiseerd, roept het de subklasse init funciton. De leiding installeert dan een tijdopnemer die bij 50Hz uitvoert en naar slaap gaat. Wanneer de tijdopnemer verloopt, wordt een functie van de tijdopnemermanager geroepen. De functie van de tijdopnemermanager roept WriteLevels om het eerder gegevens verwerkte kader in gLevels aan de volgende beschikbare vertoningsbuffer in FPGA te schrijven en maakt die vertoningsbuffer actief. Schrijft aan de FPGA-vertoningsbuffers worden gepresteerd gebruikend de registers in het Register Interfacesection van dit document worden gedocumenteerd dat.

    Nadat WriteLevels heeft voltooid, roept de functie van de tijdopnemermanager de volgende het lidfunctie van het patroon. De volgende functie produceert het volgende kader in de animatie, schrijft dat kader aan gLevels, en terugkeer-zonder het roepen van WriteLevels. De slaap van de tijdopnemermanager dan tot de volgende keer de tijdopnemer verloopt. Door WriteLevels vóór callingnext te roepen, zal de hoeveelheid tijd tussen getoonde kaders niet variëren zelfs als de hoeveelheid tijd die volgende om vergt uit te voeren tussen kaders varieert.

    Opdat de animatie regelmatig lopen, moet de functie van de tijdopnemermanager uitvoering voltooien alvorens de tijdopnemer daarna verloopt. Dit betekent dat elk kader in de animatie 20ms moet minder dan ruwweg nemen om gegevens te verwerken.

    SparkFun of van Adafruit 32x32 signalen Van een privé-leraar van RGB LEIDENE Comité Bestuurders die verbinden de 16 gegevens + 5VDC wordt verfrist om een beeld te tonen

    Figuur 10. Blokdiagram van de stapel van de demonstratiesoftware.

    Het verbinden van de Hardware

    De vertoning vereist slechts een dataverbinding aan de raad van LogiBone FPGA en een machtsverbinding aan een +3.3V-voeding om te werken. Deze verbindingen zijn gedetailleerd in de hieronder secties.

    Vertoningsdataverbindingen

    Figuur 11 onderstaande lijsten de verbindingen tussen de PMOD-schakelaars en de de gegevensinvoerschakelaar van de vertoning. U zult 16 verbindingentotaal tussen de LogiBone-raad en het vertoningspaneel moeten maken. Dertien hiervan zijn dataverbindingen; drie hiervan zijn gronden. U kunt of verbindingsdraaddraden of de PMOD-aan-Vertoning adapterraad gebruiken. Als u verbindingsdraaddraden gebruikt, zal de bedrading iets als Figuur 12 kijken. Met de adapterraad, zal het iets als Figuur 13 kijken. Merk op dat de PMOD-spelden van de schakelaars verschillend genummerd zijn dan de dubbele rijkopballen normaal genummerd zijn.

    SparkFun of van Adafruit 32x32 signalen Van een privé-leraar van RGB LEIDENE Comité Bestuurders die verbinden de 16 gegevens + 5VDC wordt verfrist om een beeld te tonen

    Figuur 11. PMOD-schakelaarspeld outs, verbindingen tussen de PMOD-schakelaars en de schakelaar van de vertoningsinput, en de speld van de vertoningsschakelaar uit.

    SparkFun of van Adafruit 32x32 signalen Van een privé-leraar van RGB LEIDENE Comité Bestuurders die verbinden de 16 gegevens + 5VDC wordt verfrist om een beeld te tonen

    Figuur 12. De raad van LogiBonefpga met RGB LEIDEN paneel wordt verbonden die verbindingsdraaddraden gebruiken die.

    SparkFun of van Adafruit 32x32 signalen Van een privé-leraar van RGB LEIDENE Comité Bestuurders die verbinden de 16 gegevens + 5VDC wordt verfrist om een beeld te tonen

     

    Figuur 13. De raad van LogiBonefpga verbond met RGB LEIDEN paneel gebruikend de PMOD-aan-Vertoning adapterraad.

    De Verbinding van de vertoningsvoeding

    Zodra de gegevenssignalen zijn verbonden, maak de voedingverbinding aan de vertoning. Figuur 14 toont hieronder de grondbeginselen. Gebruikend de gelijkstroom-adapter van de vathefboom, sluit de positieve terminal van de voeding aan de rode draad van de draaduitrusting aan en sluit de negatieve terminal van de voeding aan de zwarte draad van de draaduitrusting aan. Alvorens de draaduitrusting met de vertoning te verbinden, gebruik een voltmeter om de polariteit van de verbindingen te verifiëren. Zodra u de polariteit hebt geverifieerd, maak de macht los en stop de draaduitrusting in de vertoning.

    Ik verliet de spadehandvaten op de draaduitrusting omdat ik bij het gebruiken van de vertoning in een groter project plan en niet hen wil verwijderen tot ik zeker ben ik hen niet in het grotere project nodig heb. Als u de spadehandvaten ook verlaat, zorgvuldig ben zij niet toevallig plotseling aan een andere elektronika. U zou hen met elektroband kunnen willen verpakken enkel zeker om te zijn. Als u nodig hebt of niet de spadeschakelaars wilt, voel vrij om hen af te snijden, van een beetje van isolatie te ontdoen van de draden, en hen rechtstreeks te verbinden met de gelijkstroom-adapter van de vathefboom.

    SparkFun of van Adafruit 32x32 signalen Van een privé-leraar van RGB LEIDENE Comité Bestuurders die verbinden de 16 gegevens + 5VDC wordt verfrist om een beeld te tonen

    Figuur 14. Het verbinden van de voeding met het RGB LEIDENE paneel die een vrouwelijke gelijkstroom-adapter van de vathefboom met behulp van.

    SparkFun of van Adafruit 32x32 signalen Van een privé-leraar van RGB LEIDENE Comité Bestuurders die verbinden de 16 gegevens + 5VDC wordt verfrist om een beeld te tonenSparkFun of van Adafruit 32x32 signalen Van een privé-leraar van RGB LEIDENE Comité Bestuurders die verbinden de 16 gegevens + 5VDC wordt verfrist om een beeld te tonenSparkFun of van Adafruit 32x32 signalen Van een privé-leraar van RGB LEIDENE Comité Bestuurders die verbinden de 16 gegevens + 5VDC wordt verfrist om een beeld te tonen

    Contactgegevens
    Leeman Display Technology Limited

    Contactpersoon: Leeman

    Direct Stuur uw aanvraag naar ons (0 / 3000)

    Andere Producten
    Vakantiewoning LED Display

    HD video LEIDENE van SMD 5050 het Schermhuren met Constante Huidige Aandrijvings Hoge Helderheid

    3.91 van de LEIDENE van de pixelhuur het Afgietsel Binnen Hoog Contrast Vertoningsmatrijs met Grote het Bekijken Hoek

    SMD3528 huur van het LEIDENE de Matrijzenafgietsel het Scherm1r1g1b Aluminium ultra Lichte HD P6

    Binnen/Buitenkanthuur overlegt de LEIDENE Vertoning, Volledige Kleuren Stadium het LEIDENE Scherm

    Full Color LED Display

    Buiten van RGB Video Volledige de Kleuren LEIDENE van SMD de Hoge Definitie Vertonings 32 x 16 Matrijs P6.67 P10

    Energie - Binnen LEIDENE van de besparings Volledige Kleur Videomuurhuur voor Stadiumachtergrond

    van het de Reclameaanplakbord van 1R1G1B SMD de Openlucht RGB Volledige Kleur met 6mm Pixelhoogte

    SMD-LEIDENE van de ONDERDOMPELINGS RGB 3IN1 Volledige Kleur Vertoning, Vaste Digitale de Videovertoningsapparaten van de Moduleinstallatie

    LED Display Module

    Van de regelbare 3528 Volledige de Kleuren LEIDENE van SMD Binnen de Puntmatrijs 32 Vertoningsmodule * 16

    MSD300 HOOFDcontrolemechanismekaart MRV300 RGB met het Systeem van de Synchronisatiecontrole

    32 x 32 RGB 3 in 1 van de LEIDENE van de de Hoge Resolutiehelderheid Vertoningsmodule de Matrijscomité Hoogte 5mm

    Rode/Groene/Blauwe P10 LEIDENE Module, Openlucht Enige Kleuren LEIDENE Vertoningskaart 346 ONDERDOMPELING

    Vraag een offerte aan

    E-Mail | Sitemap

    China Goed Kwaliteit Full Color LED Display Leverancier. Copyright © 2015 - 2019 fullcolorled-display.com. All Rights Reserved.