Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
learn:programmable-logic:tutorials:nexys-video-oled-demo:start [2017/04/27 22:58] – [Downloads] Andrew Holzerlearn:programmable-logic:tutorials:nexys-video-oled-demo:start [2023/08/21 16:57] (current) – redirect to updated demo page Arthur Brown
Line 1: Line 1:
-====== Nexys Video OLED Demo ====== +====== Nexys Video OLED Demo (Redirect) ====== 
- +~~REDIRECT>programmable-logic/nexys-video/demos/oled~~ 
-{{:learn:programmable-logic:tutorials:nexys-video-oled-demo:oled-splash.jpg?nolink&400|}} +~~NOSEMANTIC~~ 
- +{{tag>redirect}}
-===== Overview ===== +
-==== Features Used ==== +
- +
-|                                  ^ Not Used  ^ Used  ^ +
-^ 8 user switches                  |    X      |       | +
-^ 8 user LEDs                      |               | +
-^ 128×32 monochrome OLED display                 | +
-^ USB-UART Bridge                  |    X      |       | +
-^ 160-pin FMC LPC connector        |    X      |       | +
-^ Micro SD card connector          |    X      |       | +
-^ HDMI Sink and HDMI Source        |    X      |       | +
-^ DisplayPort Source                  X      |       | +
-^ Audio codec wfour 3.5mm jacks  |    X      |       | +
-^ 6 user push buttons              |               | +
-^ User EEPROM                      |    X      |       | +
-^ 10/100/1000 Ethernet PHY            X      |       | +
-^ 512MiB 800Mt/s DDR3 Memory          X      |       | +
-^ Serial Flash                        X      |       | +
-^ Four Pmod ports                  |    X      |       | +
-^ Pmod for XADC signals            |    X      |       | +
-^ USB HID Host                        X      |       | +
- +
- +
-==== Description ==== +
- +
-The OLED Demo project demonstrates a simple usage of the Nexys Video's  +
-OLED Display. The behavior is as follows: +
-  +
- * The user presses the CPU reset button to initialize the OLED display, this runs through the sequence to safely start the display. The user can then load a splash screen onto the display by pressing the DPad up button, clear the display by pressing the DPad down button. By pressing the DPad center button, the user can switch between the normal operating mode and a mode where each pixel on the display is on. To safely turn the display off again, the user can press the CPU reset button again. +
- +
-------- +
- +
-===== Prerequisites ===== +
- +
-===Skills=== +
-  * **Basic familiarity with Vivado** +
-    *  //This experience can be found by walking through our "Getting Started with Vivado" guide// +
- +
-===Hardware=== +
-  * **Nexys Video FPGA board** +
-  * **Micro-USB cable** +
- +
-===Software=== +
-  * **Vivado Design Suite 2016.X**  +
-    * //Newer/older versions can be used, but the procedure may vary slightly// +
- +
------ +
- +
-===== Downloads ===== +
-Nexys Video Support Repository -- [[https://github.com/Digilent/Nexys-Video-OLED/archive/master.zip|ZIP]] [[https://github.com/Digilent/Nexys-Video-OLED|GIT Repo]] +
- +
-------- +
-===== How to... ===== +
- +
- +
- +
-==== 1. Generate the Project ==== +
- +
->1.1) Download the repository linked in the download section and place it in the location of your choosing.  +
- +
->1.2) Generate the **Oled** project within the "Projects" folder by following this guide before continuing: [[vivado:github|How to Generate a Project from Digilent's Github]] +
- +
-==== 2. Build the Project ==== +
- +
->2.1) Click **Generate Bitstream** on the left hand menu towards the bottom. Vivado will run through both Run Synthesis and Run Implementation before it generates the bitstream automatically.  +
-+
->Note: If you want, you can click each step by itself in the order of **Run Synthesis**, **Run Implementation** and then **Generate Bitstream**. +
-+
->{{:learn:programmable-logic:tutorials:nexys-video-oled-demo:oled_generate.jpg?nolink&600|}} +
- +
-==== 3. Program the Board ==== +
- +
->3.1) Once you have generated your bit file, Click on the hardware manager and connect to your board by choosing the local server option. +
-+
->{{:learn:programmable-logic:tutorials:nexys-video-keyboard-demo:nv_newtarget.jpg?600|}} +
->{{:learn:programmable-logic:tutorials:basys-3-keyboard-demo:newtarget.jpg?600|}} +
- +
->3.2) Click program to load the project onto your Nexys Video. +
- +
-==== 4. Run the Project ==== +
- +
-This portion will help you run the demo and observe all its features. +
- +
->4.1) State Machine +
-+
->The state machine presented below briefly demonstrates how the demo operates: +
-+
->{{:learn:programmable-logic:tutorials:nexys-video-oled-demo:oleddemostates.jpg?nolink&500|}} +
- +
->4.2) Startup and Bringdown +
-+
->The procedures for safely turning on and off the OLED display are handled by the CPU Reset Button. When the board is first turned on, the display is off, and must be brought up, press the CPU Reset Button to turn it on. Once the display is on, when you are done operating the demo, and want to turn your board off, press the CPU Reset Button again to turn the display off. The status of the display is indicated by LED0, if it is on, the display is on. +
-+
->{{:learn:programmable-logic:tutorials:nexys-video-oled-demo:oled-rston.jpg?nolink&500|}} +
-+
->{{:learn:programmable-logic:tutorials:nexys-video-oled-demo:oled-rstoff.jpg?nolink&500|}} +
- +
->4.3) Toggle the Display +
-+
->Once the display has been turned on, each LED on the display can be lit up at once by pressing the center D-Pad button. To return the display to its original state, press this button again. +
-+
->{{:learn:programmable-logic:tutorials:nexys-video-oled-demo:oled-btnc.jpg?nolink&500|}} +
- +
->4.4) Update the Display +
-+
->With the display on, you can load text onto the display by pressing the up D-Pad button. To clear the display again, press the down D-Pad button. Toggling the entire display while text is loaded will still turn each LED on, then return the display to the splash screen text. +
-+
->{{:learn:programmable-logic:tutorials:nexys-video-oled-demo:oled-btnu.jpg?nolink&500|}} +
-+
->{{:learn:programmable-logic:tutorials:nexys-video-oled-demo:oled-btnd.jpg?nolink&500|}} +
- +
-{{tag>learn programmable-logic tutorial nexys-video}}+