• Content Count

  • Joined

  • Last visited

About m3atwad

  • Rank

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. Hello, I'm trying to understand how to build u-boot from source. I've downloaded the source following the xilinx "fetch sources" wiki. I also got the uboot-config file from the PYNQ repo here: https://github.com/Xilinx/PYNQ/blob/image_v2.2/sdbuild/boot_configs/Pynq-Z1-defconfig/u-boot.config I have a Z1 board from Digilent and downloaded the latest master repo in it's entirety. The latest on master doesn't have the above u-boot config so this is the only file I got from a non-master branch. I can make the entire project for pynq from master with no problem. I have a fully functional viavdo gui project etc... I've also used the sdk to build the fsbl which works fine. I've tested this with xsct for downloading to SoC and testing with a terminal. I see messages from the fsbl and it waits in its handoff looop. So my next step is to build and download uboot. In the uboot root directory I've placed the config (pynq uboot config file above) file in configs/my_uboot_config. When I tried to compile uboot with just this config file the compiler said it needed the zynq_arty7.h file. I have gotten that from the Digilent repo and added that file to "include/configs/zynq_arty7.h". I've also attached that file. I can get the uboot build kicked off with these and it goes for a little while then errors out. I've also attached a screenshot of that error message during compiling. I'm taking a step back and trying to figure out now if these configuration files are even correct. I've noticed that when I do "make pynq_z1_defconfig" i get a .config file in my root directory. This file never has a value for CONFIG_SYS_TEXT_BASE. It is always blank. All I want to do is build u-boot and download it to the SoC via jtag. My plan was to take each part one step at a time and use the jtag link to program (using xsct) and verify they are working. The fsbl runs fine and waits for a uboot download. Unfortunately I can't get a good uboot image for the pynq board. I can compile uboot for the zed board without any issues. Questions below: 1. Does this Pynq config file look correct? 2. Why is CONFIG_SYS_TEXT_BASE always blank in .config? 3. What other files does "make pynq_z1_defconfig" operation pull in? Where do things like base memory addresses in the ".config" come from? 4. In the .config file, where can I find an explanation of what all the definitions mean? 6. Where do I find the base address for my debug uart? I'm using the uart in the jtag program usb link, but what base address should the .config file have for this uart? The mdm module? where can I find this address in my vivado/sdk project to verify the config file is correct? Any insight would be helpful! pynq_uboot_defconfig.txt arty_uboot_config_dot_h.txt
  2. Guys, I'm getting the hang of this. I've gotten the uBlaze writing to different parts of the scree, erasing etc... These displays are pretty awesome. One question I've come up with through further development is timing. I'm running the uBlaze at 100Mhz and the SPI link to the display at ~2.5Mhz. I've noticed that if I don't put some delays after certain commands with the usleep(); call I get some weird stuff on the display. I've looked through the ssd1331 data sheet among the other linked materials, but I haven't seen much for timing information. Is there timing info for each command? I've found timing info for the SPI link (serial link) in the ssd1331 data sheet, but nothing regarding how long each command takes. For example: clearing the entire screen, clearing a single pixel, moving cursor etc... Do you guys know if this information exists?
  3. Hey thanks guys! I really like Digilent. I'll be working on this this week so I'll let you know how it goes. Thanks again for the support I really appreciate it!
  4. Ok thank you! I will check those out. I've actually got the display configured and working. I can draw a line on the screen via the commands, but I just can't seem to figure out how to make an actual ascii character. I've found the fonts for all the characters as well. I just don't know how to send them over to the GDDR memory. Because I'm using a serial link there must be some kind of message (I assume) that carries the pixel color data. I feel like you do something like send a message to the device and specify the pixel addres and the RGB colors which are a single 16 bit word. I just can't seem to figure out how to get this information into the display and in what order to send the bytes etc... Thank you for your response. I will go through the information you linked me to!
  5. Hello, I bought the Nexys 4 ddr and the pmod oled (Pmod OLEDrgb: 96 x 64 RGB OLED ) display. I'm trying to display ascii text on the PMOD using the microblaze. I've gotten this up and running to the point where I can display lines etc... In looking at your resource center I still can't figure out how to print characters. How does this process work? I've figured out you need to define the characters in a "font" array and it looks like you use 5 bytes to create a 5x7 grid and the 1's determine what pixels are on there for allowing you to create the character. I'm confused as to what commands you use to send this data to the OLED. Do you use a write pixel command to individually turn on every pixel? Do you load one char in the GDDR ram and it displays it? Does the GDDR ram represent the display so as you write data into GDDR (depending on where in GDDR you put it) it gets displayed? I'm just generally confused a bout the process used to send and place data like this on the screen. Could someone elaborate on this process and if possible point me to more documentation (other than the SSD1331 data sheet) that describes how these things work a little better? Thanks!