Skocz do zawartości

monsiw

Użytkownicy
  • Zawartość

    36
  • Rejestracja

  • Ostatnio

  • Wygrane dni

    1

Wszystko napisane przez monsiw

  1. A czy działa u Ciebie wyświetlanie tego co wpisane w terminalu na wyświetlaczach i w samym oknie terminala? U mnie przed tym projektem działało pokazywanie w oknie terminala, a na wyświetlaczu miałam taki problem. Na diodach dobrze wyświetlane są wpisywane cyfry, oprócz tego, że mam na stałe stan wysoki na D3-4. Teraz ani w oknie nic nie widać, a na wyświetlaczach - jest losowo "01", "00", "10"," 11".
  2. Dziekuje, teraz już działa Jeszcze dopytam o UARTA, bo nie wiem czy to nie kwestia konwertera KONWERTER FTDI FT232RL USB TTL RS232 Programator ale mam jeszcze takie: Programator ISP USBasp Atmel AVR + Taśma i Moduł konwerter MAX485 TTL UART RS485 Arduino
  3. Ja właśnie wzięłam pod uwagę to, że w GoBoard jest 25 i zmieniłam wartość zmiennej CLKS_PER_BIT na 104 (12000000/115200). Czyli rozumiem, że to nie wystarczy i trzeba zmienić na poprzednią wartość 208 i wygenerować ten plik IPCore?
  4. Ok, ja też wieczorem to sprawdzę, a powinno dokładnie w ten sposób działać (od 37min) -> EDIT Po wgraniu programu mam na ekranie komunikat "Tryb nieoptymalny. Tryb zalecany 1360x768 60Hz". Na wyświetlaczach pokazuje mi się 00 albo 01 albo 10 (przy wybieraniu cyfr) lub 11 jak wcisnę jakiś symbol typu myślnik - Mam też na stałe włączone diody D4 i D3 (diody D1-8 dodane do debugowania) bez względu na wybór w terminalu, przy czym nie udało się ustalić przyczyny tego w tym temacie Gdy wgrywałam Twój program albo innego użytkownika gry PONG i zwykłego wyświetlania 3
  5. No ja mam 12GB RAM... Ogólnie jest to projekt z tej strony https://www.nandland.com/goboard/vga-introduction-test-patterns.html tutaj są wszystkie moduły https://www.edaplayground.com/x/Uct i te pliki występują razem z plikami z projektu UART RX-TX, które chciałam pominąć, więc mogłam coś namieszać Nie chciałam ich używać, bo do końca mi nie działał projekt poprawnie, ale tym razem zrobiłam wszystko razem. Udała się synteza oraz wygenerowanie pliku z tym, że nic nie działa tzn. ani UART ani VGA. Musiałam dokonać zmian pod Elbert v2, który np. ma 2 wyprowad
  6. To jest cały komunikat: Portability:3 - This Xilinx application has run out of memory or has encountered a memory conflict. Current memory usage is 50156012 kb. You can try increasing your system's physical or virtual memory. If you are using a Win32 system, you can increase your application memory from 2GB to 3GB using the /3G switch in your boot.ini file. Według podpowiedzi, które udało mi się znaleźć upewniłam się, że używam 64-bit ISE i jako, że mam Windows 10 (na innych forach dotyczyło to starszych wersji) to nie będę zwiększać pamięci aplikacji, bo nawet nie za bardzo wiem jak d
  7. Okej, dzieki za pomoc. Możliwe, że będe miała okazje pokazać komuś płytkę to coś wtedy zaradzi
  8. Nie wiem czy o to chodziło - screeny z TeraTerm. Oscyloskopu nie mam. Nie wiem czy to istotne, ale DTR i CTS z konwertera do niczego nie podłączyłam
  9. Po tej modyfikacji wyświetla się A5 (cokolwiek nie wpisze do terminala), a diody D3 i D4 święcą się stale (D5-8 zmieniają się według cyfry którą wybieram na klawiaturze) Jak wpisywałam 1 to ona aktualizowała się na diodach D8-5 (czyli D8), a na D3 i D4 stale jest wysoki poziom (nie wpisywałam 12, powinna na drugim wyświetlaczu widnieć cyfra wpisywana przed 1, np 1)
  10. EDIT: Teraz nie zmieniałam CLKS_PER_BIT a po zmianie wartości licznika na 1200 i liczby bitów na 11 jest to samo - na obu wyświetlaczach widnieje ta sama ostatnio wpisana cyfra z tym, że zdecydowanie słabiej na jednym z nich i na tym właśnie na stałe świeci się "3" Zaraz po podłączeniu świeci się dioda D3 i D4 i one są na stałe, a D1 i D2 w ogóle. Czyli nie działa zmiana jednej połówki bajtu, aktualizuje się tylko jedna z nich (jeden wyświetlacz) Konwerter podłączyłam do Header P4 UART_RX1.zip
  11. Teraz nie zmieniałam CLKS_PER_BIT a po zmianie wartości licznika na 1200 i liczby bitów na 11 jest to samo - na obu wyświetlaczach widnieje ta sama ostatnio wpisana cyfra z tym, że zdecydowanie słabiej na jednym z nich i na tym właśnie na stałe świeci się "3" Aktualnie mam tylko takie ostrzeżenia przy syntezie:
  12. Z CLKS_PER_BIT równym 1250 synteza kończy się z warningami przez co mam obawy wgrywać kod do płytki. Przy CLKS_PER_BIT=208 nie było znaczących zmian. Licznik(200) i jego bity również zwiększyłam. Wartości te same co wcześniej. Nie symulowałam, nie wiedziałabym jak to zweryfikować, ale zobaczę jeszcze.
  13. Teraz efekt jest taki, że oba wyświetlacze aktualizują się starszą połówką bajtu (ostatnio wpisaną cyfrą), ale jeden z nich tą aktualizacje ma przyciemnioną, a na jasno jest wyświetlana "3" na stałe.
  14. Teraz nic nie jest wyświetlane (tzn. jest 00 na obu wyświetlaczach) UART_RX_To_7_Seg_Top.v module UART_RX_To_7_Seg_Top (input i_Clk, // Main Clock input i_UART_RX, // UART RX Data output o_UART_TX, // UART TX Data // Segment1 is upper digit, Segment2 is lower digit output o_Segment_7, output o_Segment_A, output o_Segment_B, output o_Segment_C, output o_Segment_D, output o_Segment_E, output o_Segment_F, output o_Segment_G, output reg [2:0] led_enable = 3'h0); wire w_RX_DV; wire [7:0] w_RX_Byte; wire w_TX_Active, w_TX_Serial; wire w_S
  15. Przed twoim postem na obu wyświetlaczach wyświetlała się ostatnio wybrana cyfra, czyli jak np. przesłałam 47 to widziałam 7 na obu wyświetlaczach i przyciemniony fragment, który został po 4 na obu wyświetlaczach. Na tutorialu są wpisywane liczby dziesiętnie. Nie wiem jak miałabym przekazywać liczby szesnastkowe przez terminal (serial port). Po wprowadzeniu twoich modyfikacji następuje wpisanie starszej połówki bajtu do wyświetlacza oznaczonego led_enable = 3'b110 (bez fragmentów po poprzedniej cyfrze), a drugi wyświetlacz aktualizuje się tą samą cyfrą (przeznaczony dla starszej połów
  16. Działa kod w ten sposób, że którakolwiek z wybieranych cyfr jest wyświetlana na obu wyświetlaczach i nie odświeża się prawidłowo (jaśniejsze są aktualne cyfry, a przyciemnione te wyświetlane poprzednio). Próbowałam jakoś zerować poprzednie wyświetlenia poprzez led_enable = 3'b000, ale bez efektu. Zarówno przypisanie starszej połówki bajtu przy wyświetlaniu wyświetlacza dla młodszej połówki bajtu nic nie zmienia. module UART_RX_To_7_Seg_Top (input i_Clk, // Main Clock input i_UART_RX, // UART RX Data output o_UART_TX, // UART TX Data // Segment1 is upper digit, Segment2 is lo
  17. Faktycznie wtedy już nie miałam głowy do tego. module UART_RX_To_7_Seg_Top (input i_Clk, // Main Clock input i_UART_RX, // UART RX Data // Segment1 is upper digit, Segment2 is lower digit output o_Segment_7, output o_Segment_A, output o_Segment_B, output o_Segment_C, output o_Segment_D, output o_Segment_E, output o_Segment_F, output o_Segment_G, output reg [2:0] led_enable); wire w_RX_DV; wire [7:0] w_RX_Byte; wire w_Segment_7, w_Segment_A, w_Segment_B, w_Segment_C, w_Segment_D, w_Segment_E, w_Segment_F, w_Segment_G; wire x,y; reg
  18. Moduł Binary_To_7Segment.v przyjmuje w konstrukcji case odpowiednio górną lub dolną połówkę bajtu. Czyli muszę w tym kodzie multipleksującym w Top Module podać odpowiednie segmenty wyświetlacza w if lub else co następnie z modułu Binary_To_7Segment przejdzie na wyjście płytki. Problem, że nie do końca wiem jak je podać. Tak roboczo wygląda zamysł: `define true 1 `define false 0 //reszta kodu w pliku nadrzędnym bez zmian reg wybranyBajtMlodszy = true; always @(posedge i_Clock) begin assign led_enable = 3'b111; if wybranyBajtMlodszy==1 assign led_enable[0] = 0; Binary_To
  19. // This file converts an input binary number into an output which can get sent // to a 7-Segment LED. 7-Segment LEDs have the ability to display all decimal // numbers 0-9 as well as hex digits A, B, C, D, E and F. The input to this // module is a 4-bit binary number. This module will properly drive the // individual segments of a 7-Segment LED in order to display the digit. // Hex encoding table can be viewed at: // http://en.wikipedia.org/wiki/Seven-segment_display module Binary_To_7Segment( input i_Clk, input [3:0] i_Binary_Num, output o_Segment_7, output
  20. To jest ten program Binary_To_7Segment /////////////////////////////////////////////////////////////////////////////// // File downloaded from http://www.nandland.com /////////////////////////////////////////////////////////////////////////////// // This file converts an input binary number into an output which can get sent // to a 7-Segment LED. 7-Segment LEDs have the ability to display all decimal // numbers 0-9 as well as hex digits A, B, C, D, E and F. The input to this // module is a 4-bit binary number. This module will properly drive the // individual segments of a 7-Segment LE
  21. Znalazłam kod, który pozwala wysyłać przez UART z terminala cyfrę na wyświetlacz 7-segmentowy, ale dedykowany do płytki GO BOARD i zastanawiam się jak go przerobić by działał do elbertv2. Oryginał UART_RX.v ///////////////////////////////////////////////////////////////////// // File Downloaded from http://www.nandland.com ///////////////////////////////////////////////////////////////////// // This file contains the UART Receiver. This receiver is able to // receive 8 bits of serial data, one start bit, one stop bit, // and no parity bit. When receive is complete o_rx_dv will
  22. A próbowałeś wgrać jakiś gotowy kod z przykładowych w Arduino IDE, np blink ?
  23. Teraz inna trajektoria, ale wciąż nieprawidłowa. Czy to kwestia hazardu?
  24. @piotr96 Mam jeszcze takie pytanie dodałam w kodzie wybór pomiędzy przerzutnikiem D, a JK, który realizuje taką trajektorię 1->5->3->6->7->1, ale rezultat się nie zgadza z tym co jest wyświetlane. Nie wiem czy to funkcje wzbudzeń źle wyznaczyłam czy błąd tkwi w kodzie. Oto ten fragment: elsif DPSwitch(0)='1' and DPSwitch(1)='0' then J(2) <= '1'; J(1) <= qn(2); J(0) <= '1'; K(2) <= qn(0); K(1) <= qn(2) or qn(0); K(0) <= (not qn(2)) or qn(1); led_enable <= not "100"; if (J(0)='0' and K(0)='0') then
×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.