問題タブ [codevisionavr]

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 に答える
245 参照

c - エラー関数は宣言されているが定義されていない

codeVision AVR の C プロジェクトにライブラリを追加しました。その関数を使用したい場合、このエラーが発生します。関数 '関数名' は宣言されていますが、定義されていません。ここに私のコードがあります:

pid.h:

および pid.c:

エラー:

関数 'PID_Compute' が宣言されていますが、定義されていません。

問題はどこだ?

編集:

ライブラリをプロジェクトに追加するために、.c および .h ライブラリ ファイルをメイン プロジェクト ファイルと同じフォルダに配置しました。

ここに画像の説明を入力

次に #include "pid.h" をメイン ファイルに追加します。

私のエラーと警告: ここに画像の説明を入力

ここに画像の説明を入力

ここに画像の説明を入力

EDIT2:コードを簡略化し、コード全体を表示できるようになりました:メインコード:

pid.h:

pid.c:

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

c - コントローラーがビジー状態でデータを受信した

プロテウスのコード ビジョンで割り込みを使用しようとしています。カウンタ値を増加させる場合は INT0、減少させる場合は INT1 です。その目的のために2つの関数を宣言しましinterrupt [EXT_INT0] void ext_int0_isr(void)interrupt [EXT_INT1] void ext_int1_isr(void)が、コードを実行すると機能せず、プロテウスで「コントローラーがビジー状態でデータを受信しました」という無限の警告が表示されます。お役に立てれば幸いです。

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

c - キーパッド関数が間違った番号を返す

キーパッド 3*4 用の ScanKey 関数では、数字の長さが 4 未満になるまでうまく機能しますが、このように機能しますnumber = (number * 10)が、4 つ以上の数字を持つこの 123456 のような数字の場合、他の数字が表示されます。私のプログラムは、整数を使用する int で動作します。555555 のような数値を入力すると、31267 に変わります。 IDE CodeVisionAVR ATmega16a用のC言語