Hallo allerseits, ich würde gerne den Inhalt eines 16-Bit-Vektors mittels Terminal am PC anzeigen. Dazu habe ich Uart im FPGA eingebaut (Code von Lothar Miller). Ich will jetzt nicht Vektor->BCD->ASCII Umwandlung machen. Es geht nur darum, den 16-Bit-Vektor ungefähr zu sehen, zur Kontrolle. Dazu würde ich den Vektor in ein 8-Bit-Vektor (also Byte) umwandeln und das Byte als Zeichen über ser. Schnittstelle an PC schicken und dort hexadezimall in einem Terminal anzeigen. Das Problem ist noch, den 16-Bit-Wert in ein 8-Bit-Zeichen für den Uart hineinzubekommen. Wie kann man so eine Umwandlung machen? Ich habe da an so eine Möglichkeit gedacht, allerdings weiß ich nicht ob es synthesefähig ist und ob dabei das passiert was ich will:
1 | signal receive_buff : std_logic_vector(15 downto 0); |
2 | signal tx_data_s : std_logic_vector(7 downto 0); |
3 | .
|
4 | .
|
5 | .
|
6 | -- Umwandlung
|
7 | tx_data_s <= std_logic_vector(to_unsigned(to_integer(unsigned(receive_buff)),8)); |