Honored Contributor II
07-13-2017 08:39 PM
Hi,I am using the RS232 IP core to send info from a DE2 board to a computer running Ubuntu. When run on Windows, the controller works fine, but when run on Ubuntu the something interesting happens and I cannot find any help with this issue. Here is what I have. A sample project (not the actual project I'm using, but something I made to debug the issue, the same thing happens in each):
module serial( input CLOCK_50, output UART_TXD, input KEY ); reg data; reg valid; wire reset; assign reset = ~KEY; uart u0 ( .to_uart_data (data), // avalon_data_transmit_sink.data .to_uart_valid (valid), // .valid .clk (CLOCK_50), // clk.clk .UART_TXD (UART_TXD), // .TXD .reset (reset) // reset.reset ); reg preKEY1; always @(posedge CLOCK_50) begin if(reset) begin data <= 8'd5; valid <= 1'b0; preKEY1 <= KEY; end else if(KEY != preKEY1)begin data <= data + 8'd1; preKEY1 <= KEY; valid <= 1'b1; end else begin data <= data; valid <= 1'b0; preKEY1 <= KEY; end end endmoduleEssentially the code is meant to let me output characters by pressing the buttons on the board. When I load this onto the board and press the reset button, I enter into the Ubuntu terminal: sudo cat /dev/ttyUSB0 to retrieve the output from the serial port (I am connecting through a USB converter, which think may be part of the problem, but I believe I have set that up properly) When I press the button the board, characters appear in the terminal as expected, but the characters are all � (the ascii replacement character). No matter what I've tried I cannot get the computer to output anything else. Any suggestions are welcome.