Записать целое число в файл VHDL
Я хотел бы написать целое число (переменная num) в файл (write.txt). Вот мой код, но, очевидно, он не работает. Любое предложение?
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.MATH_REAL.ALL;
library std;
use std.textio.all;
entity file_handle is
end file_handle;
architecture Behavioral of file_handle is
begin
process
variable line_var : line;
file text_var : text;
variable num : integer := 40;
begin
file_open(text_var,"C:\Users\Tommy\Desktop\write.txt", write_mode);
write(line_var, num); -- write num into line_var
writeline(text_var, line_var); -- write line_var into the file
file_close(text_var);
end process;
end Behavioral;
После запуска синтеза, если я открываю файл write.txt, я читаю b00000000000000000000000000101000. Кажется, адрес или что-то еще. Я ожидал прочитать 40.
1 ответ
Решение
Пытаться write(line_var, integer'image(num));
вместо. Это преобразует переменную num
в десятичной строке.