Hallo Leute! Ich möchte mit einem FPGA einen String über eine RS232 ausgeben. Dazu habe ich einen RS232 Baustein in VHDL designed. Der Sendebuffer ist ein STD_logic_vector(7 downto 0). Wie kann ich nun Zeichen für Zeichen eines Strings in STD_logic_vector wandeln? txbuffer<=to_stdlogicvector(ausgabestring(1)); Diese Zeile funktioniert definitiv nicht. Leider werden Strings in meinem Buch nicht behandelt. Danke für eure Hilfe. Tschüss, Martin
Bist du ein Masochist? ;-) Das in Hardware zu gießen ist nicht gerade sinnvoll, so etwas macht man besser mit einer CPU. Schau mal auf http://OPENCORES.org, da gibt es einige CPU-Cores. Was hat du den noch alles auf deinen Board zur Verfügung. (RAM, EEPROM, ...) Wenn du es unbedingt in Hardware machen willst, benötigst du eine "state machine". In deinen Fall währe es ein Zähler, der nach und nach die Register adressiert, in denen die Zeichen hinterlegt sind. > Dazu habe ich einen RS232 Baustein in VHDL designed. Das glaube ich dir nicht. Den Treiber kannst du nicht im FPGA integrieren, den musst du schon extern anbringen. (LVCMOS 3,3V [3,3V, 0V] -> RS232 [-12V, +12V]) Was du meinst ist ein UART (Universal Asynchronous Receiver Transmitter). Zumindest ein Teil davon UAT. ;-) MfG Holger
Versuchs mal so: txbuffer <= conv_std_logic_vector(character'pos(ausgabestring(1)),8);
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.