0

DE2 のマニュアル(177 ページ)を調べたところ、たとえばパテと USB-to-シリアル ケーブルを介してボードにシリアル通信を行うことができるはずなので、マニュアルからプログラムを取得しました。 :

/* A simple program that recognizes the characters 't' and 'v' */
#include <stdio.h>
#include <string.h>
int main ()
{
char* msg = "Detected the character 't'.\n";
FILE* fp;
char prompt = 0;
fp = fopen ("/dev/uart1", "r+"); //Open file for reading and writing
if (fp)
{
while (prompt != 'v')
{ // Loop until we receive a 'v'.
prompt = getc(fp); // Get a character from the JTAG UART.
if (prompt == 't')
{ // Print a message if character is 't'.
fwrite (msg, strlen (msg), 1, fp);
}
if (ferror(fp))// Check if an error occurred with the file pointer 
clearerr(fp); // If so, clear it.
}
fprintf(fp, "Closing the JTAG UART file handle.\n");
fclose (fp);
}
return 0;
}

Nios2 ハードウェアとして実行しようとしましたが、uart を使用するように std i/o を構成すると、このメッセージが表示されます。

nios2-terminal: can't open uart: No such file or directory

そして、端末プログラム(パテシリアル接続)に接続すると、接続しません。私は何を間違っていますか?プロジェクトのプロパティで std i/o を uart に変更しようとしましたが、それは役に立ちませんでした。手伝って頂けますか?

4

2 に答える 2

3

シリアル通信のデバッグ方法:

9 ピンのシリアル ケーブルを用意し、ジャンパー ピン 2 と 3 を一緒にします。ペーパークリップや手元にあるものを使用できます。ピン 2 と 3 は TX と RX です。それらを一緒に接続すると、コンピューターから送信されたコマンドはすべてコンピューターによって受信されます。シリアル ループバックが作成されました。

Putty を開き、シリアル ケーブルに接続してみます。キーボードの任意のキーを押します。ループバックなので、ボーレートなどは関係ありません。

送信した文字が端末で受信されているのを確認できれば、シリアル ケーブルは機能しています。そうでない場合は、ケーブルまたはパテに問題があります。過去にシリアル通信でパテに問題がありました。Putty が接続しない問題がある場合は、Tera Termをダウンロードしてみてください。

または、シリアル ケーブル用の新しいドライバを見つけてください。幸運を。

于 2013-09-26T15:24:14.270 に答える