- Als neu kennzeichnen
- Lesezeichen
- Abonnieren
- Stummschalten
- RSS-Feed abonnieren
- Kennzeichnen
- Anstößigen Inhalt melden
Hi all,
is there a simple way of replacing the standard UART, which is in all examples, with the UART16550? I mean, that simply all stdin/stdout/stderr goes to the UART16550? I can only have one UART in the system, and would remove then the standard UART ... Thanks!Link kopiert
18 Antworten
- Als neu kennzeichnen
- Lesezeichen
- Abonnieren
- Stummschalten
- RSS-Feed abonnieren
- Kennzeichnen
- Anstößigen Inhalt melden
Hi all,
just tried to get the 16550 UART to work at all, but no output so far. I tried to implement, what is in the the "ug_embedded_ip" manual, but so far no luck. Is there anything obvious missing, or wrong: # include <stdio.h> # include <stdlib.h> # include <sys/ioctl.h> # include <sys/termios.h> # include <fcntl.h> # include <string.h> # include <unistd.h> # include <sys/time.h> # include <time.h> # include "system.h" # include "altera_16550_uart.h" # include "altera_16550_uart_regs.h" # define BUFSIZE 512 char TXMessage[BUFSIZE] = "Hello World, UART16550 sending\n"; int UARTDefaultConfig(UartConfig *Config) { Config->stop_bit = STOPB_1; Config->parity_bit = NO_PARITY; Config->data_bit = CS_8; Config->baudrate = BR115200; Config->fifo_mode = 0; Config->hwfc = 0; Config->rx_fifo_level= RXFULL; Config->tx_fifo_level= TXEMPTY; return 0; } int UARTBaudRateTest() { UartConfig *UART0_Config = malloc(1*sizeof(UartConfig)); altera_16550_uart_state* uart_0; uart_0 = altera_16550_uart_open ("/dev/a_16550_uart_0"); UARTDefaultConfig(UART0_Config); altera_16550_uart_write(uart_0, &TXMessage, strlen(TXMessage), 0); usleep(1000); free(UART0_Config); return (0); } int main() { int result=0; result = UARTBaudRateTest(); } Thanks!- Als neu kennzeichnen
- Lesezeichen
- Abonnieren
- Stummschalten
- RSS-Feed abonnieren
- Kennzeichnen
- Anstößigen Inhalt melden
Hi,
What you mean by replacing the standard UART? How about changing the BSP settings (stdin, stdout, stderr) to 16550 UART? Are you trying to printf output through 16550 UART IP instead of RS232 UART IP?- Als neu kennzeichnen
- Lesezeichen
- Abonnieren
- Stummschalten
- RSS-Feed abonnieren
- Kennzeichnen
- Anstößigen Inhalt melden
I had a look at using the 16550 UART. In the end I found it much easier to use this one:-
http://www.alterawiki.com/wiki/fifoed_avalon_uart It is exactly the same to use as the standard Altera UART but offers buffering, higher speed, RS485 driver enable + lots more. Well worth a look.- Als neu kennzeichnen
- Lesezeichen
- Abonnieren
- Stummschalten
- RSS-Feed abonnieren
- Kennzeichnen
- Anstößigen Inhalt melden
--- Quote Start --- Hi, What you mean by replacing the standard UART? --- Quote End --- yes! --- Quote Start --- How about changing the BSP settings (stdin, stdout, stderr) to 16550 UART? Are you trying to printf output through 16550 UART IP instead of RS232 UART IP? --- Quote End --- Exactly. I saw in another post, that you should be able to simply replace the "uart0" in the BSP_HAL editor, but in the setttings HAL/Common stdin/stdout/stderr, the only entry is "none" and the a_16550_uart_0 can't be selected. Do I have to rename the instance of "a_16550_uart_0" to "uart_0" in qsys? Thanks!
- Als neu kennzeichnen
- Lesezeichen
- Abonnieren
- Stummschalten
- RSS-Feed abonnieren
- Kennzeichnen
- Anstößigen Inhalt melden
Hi,
I suspect you observed "none" in the settings due to the Qsys generated files are not refreshed/synced with your SBT. Try reload the .sopcinfo file and create new BSP. You do not have to rename as the settings should reflect the name in Qsys.- Als neu kennzeichnen
- Lesezeichen
- Abonnieren
- Stummschalten
- RSS-Feed abonnieren
- Kennzeichnen
- Anstößigen Inhalt melden
--- Quote Start --- Hi, I suspect you observed "none" in the settings due to the Qsys generated files are not refreshed/synced with your SBT. Try reload the .sopcinfo file and create new BSP. You do not have to rename as the settings should reflect the name in Qsys. --- Quote End --- I tried that too, and the 16550_uart doesn't show :(
- Als neu kennzeichnen
- Lesezeichen
- Abonnieren
- Stummschalten
- RSS-Feed abonnieren
- Kennzeichnen
- Anstößigen Inhalt melden
Did you export those UART signals in Qsys?
- Als neu kennzeichnen
- Lesezeichen
- Abonnieren
- Stummschalten
- RSS-Feed abonnieren
- Kennzeichnen
- Anstößigen Inhalt melden
--- Quote Start --- Did you export those UART signals in Qsys? --- Quote End --- Yes, they also show up in the .bdf file and are connected there ...
- Als neu kennzeichnen
- Lesezeichen
- Abonnieren
- Stummschalten
- RSS-Feed abonnieren
- Kennzeichnen
- Anstößigen Inhalt melden
Have you tried if JTAG UART works?
- Als neu kennzeichnen
- Lesezeichen
- Abonnieren
- Stummschalten
- RSS-Feed abonnieren
- Kennzeichnen
- Anstößigen Inhalt melden
--- Quote Start --- Have you tried if JTAG UART works? --- Quote End --- No. I had the "standard" UART in before, got my application working, but needed one with a FIFO. So tried to get the 16550-UART to work, without success. What I'm really trying is to get the RSU working (application note 741), so my NIOS system is pretty simple, basically using the AN-741 template, and replacing the UART in it with the 16550-UART. Any chance anybody else can try it?
- Als neu kennzeichnen
- Lesezeichen
- Abonnieren
- Stummschalten
- RSS-Feed abonnieren
- Kennzeichnen
- Anstößigen Inhalt melden
--- Quote Start --- No. I had the "standard" UART in before, got my application working, but needed one with a FIFO. So tried to get the 16550-UART to work, without success. What I'm really trying is to get the RSU working (application note 741), so my NIOS system is pretty simple, basically using the AN-741 template, and replacing the UART in it with the 16550-UART. Any chance anybody else can try it? --- Quote End --- And, all of this is done on MAX10, and the Altera DK-DEV-10M50 board...
- Als neu kennzeichnen
- Lesezeichen
- Abonnieren
- Stummschalten
- RSS-Feed abonnieren
- Kennzeichnen
- Anstößigen Inhalt melden
Sorry that I am confused. For your working design, you must have seen the RS232 UART in BSP setting. But you are saying that you get "none".
So which is correct?- Als neu kennzeichnen
- Lesezeichen
- Abonnieren
- Stummschalten
- RSS-Feed abonnieren
- Kennzeichnen
- Anstößigen Inhalt melden
--- Quote Start --- Sorry that I am confused. For your working design, you must have seen the RS232 UART in BSP setting. But you are saying that you get "none". So which is correct? --- Quote End --- No problem ;-) what I did: a.) used the RSU AN741 template, generated a NIOS system, with an UART, which was working, I could "see" the UART in the BSP-Editor. However, the performance for our application wasn't sufficient, so we tried to install the 16550-UART, which has big FIFOs, which we thought would improve the performance on the serial line. b.) We added the a_16550_uart to our QSYS design, but it doesn't show up in the BSP editor. Only the "standard" uart_0 is there. c.) we removed the standard uart_0 from the QSYS, and now there aren't any UART anymore to select in the BSP editor. So, what are we doing wrong, that the a_16550_uart doesn't show up in the BSP editor, as an UART for stdin/stdout/stderr? thanks!
- Als neu kennzeichnen
- Lesezeichen
- Abonnieren
- Stummschalten
- RSS-Feed abonnieren
- Kennzeichnen
- Anstößigen Inhalt melden
I have tried to replicate your issue and observed the same behavior.
Most likely this is due to the HAL driver for 16550 UART is not ready for such BSP configuration :(- Als neu kennzeichnen
- Lesezeichen
- Abonnieren
- Stummschalten
- RSS-Feed abonnieren
- Kennzeichnen
- Anstößigen Inhalt melden
--- Quote Start --- I have tried to replicate your issue and observed the same behavior. Most likely this is due to the HAL driver for 16550 UART is not ready for such BSP configuration :( --- Quote End --- Thanks a lot for trying! I was going nuts, as I thought I'm doing something wrong, and in other posts it sounded to easy ;-) Altera: any chance to fix this? Thanks again!
- Als neu kennzeichnen
- Lesezeichen
- Abonnieren
- Stummschalten
- RSS-Feed abonnieren
- Kennzeichnen
- Anstößigen Inhalt melden
This issue has been logged. Let's look forward to the fix in near future :)
- Als neu kennzeichnen
- Lesezeichen
- Abonnieren
- Stummschalten
- RSS-Feed abonnieren
- Kennzeichnen
- Anstößigen Inhalt melden
--- Quote Start --- This issue has been logged. Let's look forward to the fix in near future :) --- Quote End --- Excellent! Will there be a patch, or do we have to wait for 16.3 or 17.0? Thanks!
- Als neu kennzeichnen
- Lesezeichen
- Abonnieren
- Stummschalten
- RSS-Feed abonnieren
- Kennzeichnen
- Anstößigen Inhalt melden
The delivery milestone is undecided at the moment.

Antworten
Themen-Optionen
- RSS-Feed abonnieren
- Thema als neu kennzeichnen
- Thema als gelesen kennzeichnen
- Diesen Thema für aktuellen Benutzer floaten
- Lesezeichen
- Abonnieren
- Drucker-Anzeigeseite