• Content Count

  • Joined

  • Last visited

About PoorCollegeStudent

  • Rank

Recent Profile Visitors

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

  1. Hello Digilent Community, I am now officially done with my term and I want to share what my experience was like, as per @[email protected]'s question. I would like to attach our final report here (we got an 86 on it, so please understand that it won't be the rest report haha). It was quite rushed since my partner and I were travelling during the last few days before the turn in date and the code in the appendices are quite scuffed. Vivado won't print PDFs in color and I haven't figured out how to fix the sizing or formatting, which is really inconvenient because it looks bad and not easy to read.
  2. Also a question, will FPGAs act unreliably after being operated/plugged in for a long time (long as in 10+ hours at a time). My demo is today (Friday) and our project still doesn't work unfortunately. Without having touched anything, I came back from dinner to see that the display only seems to like the keys "2", "7", and "9", but perhaps that could be something to do with the keypad decoder. Might not get great marks on this project, but I had a good time on this discussion post. Thank you all for your time and contributions.
  3. @[email protected] would that example happen to be in Verilog? I'm not exactly familiar with the language, we've just been using VHDL in class. I'm guessing because I can't recognize a bunch of the syntax, like the @(posedge i_clk) and 1'b0 or !counter[20]. Seems like a very cool application though! Thank you!
  4. Oh right I remember this from an in-class exercise we had once. I'll try it out.
  5. I am now having some trouble. The inputs will display on the LCD but the output will not. I have testbenched every module and they work as expected. There might be something wrong with the keypad interface. I basically need it to only output once per press rather than continuously like it does now, and I have no way of doing this yet.
  6. Hello all, 2:24am update -- I have been able to debounce the keypad somewhat like maybe 85%. Sometimes the number repeats itself once because I guess the keypad itself is VERY jiggly and I'm already accounting for a 400 us bounce limit in my debouncer.. Otherwise, it seems to work fine. It stops after 4 digits and does not continue to display past that. New values can only display after pressing one of the operation buttons (i.e. +, -, *, square) or the equal button. I had to change the negative sign to the center button on the FPGA and a clear button to the right button on the FPGA. Havi
  7. @[email protected] I did assume that at first too, so I looked through my code for an hour but my startup sequence is the same as the one in the example code, so it seems unlikely now (?) The black-box error started to occur right when I plugged in the display to the ports on the board and turned on the board, so I hadnt even run the program yet. Just weird for me all around. Now it's alright though so I think you're right in that the example code sent it through the startup sequence again in a way that mine doesn't, I just can't see why as of yet.
  8. Update again: Sorry for the spam to everyone who is probably getting these notifications/emails. The black bars went away when I ran the original example code that displays "Hello From Digilent" which I guess forced the contrast voltage back or something (not really sure how because I don't see anything for that in the code) but I'm not going to question it because it helped.
  9. Hello, I have come across a new problem. Black boxes across the first line of the display and nothing seems to work, no buttons presses do anything. I think this is a connectivity issue because it worked fine for a while today, and after coming back from eating it started to do this. I will try another computer.
  10. It is quite the lengthy discussion @[email protected] and @hamster. I'll be sure to take a look at it soon. This is a field I may want to dive more into throughout the rest of my college career.
  11. Hello all, Update: I have manged to make keys appear one by one with reliable timing. Thank you to everyone here who helped make this possible. It included an extra state in the current example code's fsm that only goes to the stInitDne when a specific key is pressed. The keys that allow this transition of state would be the number keys (i.e. 0 through 9). I also managed to make it stop at 4 digits and clear when an operation button (+, -, *, =) is pressed in order to make room for the next number. I did this by initializing the LCD_CMDS with blanks and used a counter sensitive to the num
  12. Hello, Just realized the H probably means hex, but using that line of code doesn't work. I've decided beggars can't be choosers since my demo day is in 2 days. I'm sticking to one line of display. My strategy right now will be taking the LCD_CMDS signal and initializing it with the first few original commands and 4 blanks. A press of a key on the keypad will replace these blanks with characters and the LCD will update continuously to display these numbers. I will create a second signal like LCD_CMDS for the output/computed value, and I'll make an if-statement to assign one of t
  13. @[email protected] Hello, I had seen that before, but I wasn't aware I could set it using a command. I tried setting a value in my LCD_CMDS signal like 4 => "00"&X"40" based on the datasheet but that didn't seem to do anything. It mentions that the second line starts at address 40H, but what does that "H" mean?
  14. Hello @[email protected], thank you for your response! Yes I have looked at that datasheet because it's also linked from the Digilent website for the LCD display, but I do not think it says anywhere there how I can start displaying on the second line, just how to enable the 2nd line. @hamster I am going to try what you suggest and see what happens. Thanks for letting me know about the debug hub warning too!