在Nios 中调试Hello world!范例的时候往往会出现这样的错误,nios2-terminal: can't open uart: Permission denied。这是因为你在调试程序的时候,打开了另外的串口调试工具,或者可以说是串口侦听器。但实际上NIOS IDE中已经集成了串口调试工具,或者串口侦听器。在任务管理器中nios2-terminal.exe就是这个侦听串口的进程。
所以很明了了,如果你想用nios ide来观察发送的数据,就不要用其他的串口调试工具,如果你在编译的前就打开了其他的串口侦听器的话,编译链接的时候就会出现以上的错误。而你在程序编译链接后再去打开其他的串口侦听器,串口就会因为nios2-terminal.exe占用而无法打开。
解决的方法,如果你想用NIOS IDE观察的话就不要事先打开其他的串口调试工具。而如果你想用其他的串口调试工具来观察数据的话,很简单,通过USB_BLASTER把数据下载进去板子后,删除任务管理器中的nios2-terminal.exe,然后打开串口调试工具。如果程序没有问题的话,运行后就可以看到数据。