問題タブ [nios]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
3990 参照

c - シリアル通信が機能しないのはなぜですか?

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

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

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

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

0 投票する
3 に答える
1311 参照

c - scanf が Nios 2 IDE で入力を出力するのはなぜですか?

非常に単純なプログラムは機能していません。

上記は入力への読み取りのみを期待しますが、入力も出力します。

while ループにこの行もある場合、上記の動作が予想されますが、そうではありません。

printf("%d\n", n);

説明できますか?

アップデート

なぜこれが起こっているのかを説明する答えは何もありません。また、Nios 2 IDE には、ローカル エコーをオンまたはオフにするための設定はありません。そして、もしあったとしても、おそらく予期しない出力を引き起こす可能性はありません。また、このプログラムはその入力も出力します。

したがって、Eclipse に基づくこの Nios 2 IDE は、誰の選択でもありません。

0 投票する
1 に答える
66 参照

c - 非常に単純なプログラムを両方の方法で失敗させる

Eclipse が最も単純なプログラムを 1 つの方法だけでなく、同時に複数の方法で実行できないことに驚いています。プログラムは

失敗 1: シミュレーターで実行すると、理由もなく出力が 2 回表示されます。出力は 1 回表示されます。

失敗 2: DE2 ボードで実行すると、出力がまったく表示されません。

自分の環境が期待どおりに機能しないのはなぜですか?

0 投票する
1 に答える
525 参照

c - ループの実行時間

私は分析と測定を行っており、分析と測定から異なる結果を得ています。このコードは、サイズが 512 バイト、ブロック サイズが 32 バイトのデータ キャッシュを使用する 2 つのループです。

Cは行列を行ごとに格納するため、内側のループで行を切り替えない方が速いと思います。そのため、SumByRowColは高速になるはずですが、測定では逆です。値が連続した要素からのものであるため、空間的局所性の原則によるキャッシュが内部ループを高速化できると、高速になると思いましたか? 実際にSumByColRowの方が速いと計測した時の実行時間を計測した理由は何ですか?

アップデート

プログラムを再度実行して、実際にデータ キャッシュを使用していることを確認しました。今度は期待どおりの結果が得られたので、上記の結果は偶然の一致である可能性があり、次のようになります。

0 投票する
2 に答える
928 参照

c - C のコンパイルに時間がかかるのはなぜですか?

C プロジェクトをコンパイルすると、高速な Intel I7 CPU を使用しているにもかかわらず、約 90 秒かかることがあります。コンパイルが低レベルのタスクであるためですか、それともビルド時間が非常に長いのはなぜですか? 私の環境は、Altera DE2 FPGA 用の Nios 2 IDE です。

0 投票する
2 に答える
1572 参照

c - 16 進値をシフトしようとしています。助けてください

7 セグメント LCD で 9 より上の数字を表示できるように、16 進出力を 1 つ左にシフトしようとしています。

C でプログラミングしています。私が使用しているソフトウェアは NIOS II であるため、DE0 ボードに直接再プログラミングできます。

このプロジェクトの目的は、'button1' が押されるたびに LCD の値を 1 ずつインクリメントすることです。私はこれを成功させましたが、もちろん9の後、左にシフトして1から再起動し、元の位置を0に置き換える必要があります。かなりの調査を行いましたが、運がなかったのでどんな助けでも大歓迎です。ありがとう。

コードは以下のとおりです。