Nios® V/II Embedded Design Suite (EDS)
Support for Embedded Development Tools, Processors (SoCs and Nios® V/II processor), Embedded Development Suites (EDSs), Boot and Configuration, Operating Systems, C and C++
12618 Discussions

Code fails without "reduced device drivers"

Altera_Forum
Honored Contributor II
928 Views

I'm compiling a simple "hello world" app with the NIOS EDS v6.0 for a NIOS II V6.0 system running on a custom board. This system seems to run correctly (I even have GERMS running so I can manually test peripherals etc, and I have my own custom bootloader that accesses the EPCS controller peripheral in my system). 

 

Everything seems to be fine apart from the fact that when running the "hello world" app it does not produce any output...unless I'm using a JTAG UART! I don't actually want a JTAG UART in the system however as I have a standard serial port that I'd prefer to use for stdout. With only a UART and no JTAG UART in the system, although the syslib correctly specifies the UART for all stdio, I can only produce a printf output if I check the "reduced device drivers" option. 

 

The only reason I discovered this was through a pretty indistinct suggestion on the forum, but at least it worked! Interestingly, if I try the same with the option off but say, switch on an LED as well as attempt to do a printf, the LED lights suggesting the code is ok. However in some more complicated code I've tried it's completely failed to operate at all. 

 

In addition, from what I've gleaned myself, it seems that by turning on the "reduced device driver" option, the EPCS controller device driver will not be linked into the app code therefore making the peripheral unusable (unless you've got some assembler to access it as I have in my custom bootloader). This is bad as I really need to use this in my final application code! 

 

Any help would be appreciated!
0 Kudos
2 Replies
Altera_Forum
Honored Contributor II
231 Views

I think you should select proper UART device in run/debug options, target connection. In the field 'Nios II Terminal communication device' select your UART peripheral.

0 Kudos
Altera_Forum
Honored Contributor II
231 Views

Please also check your UART host connection setting (i.e HyperTerminal), Hardware flow control, software flow control or Xon/Xoff, baudrate..etc

0 Kudos
Reply