2406174_ja-JP

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

2406174_ja-JP

2406174_ja-JP

重複した変数宣言

私はLPC824ボードとダウンロードしたlpcxpresso824max_new_projectを使用して新しいプロジェクトに取り組んでいます。ビルド、ダウンロード、デバッグは問題なく完了しました。まず最初に、3桁の7セグメントLEDディスプレイを実装しようとしています。ペリフェラルに宣言を追加しました。そして、main.c に更新ルーチンがあります。ビルド時に、重複した変数宣言という2つのエラーが発生します。それらをコメントアウトすると、「未宣言の変数」というメッセージが表示されます。変数名を変更しても、同じ重複エラーが発生します。プロジェクト内のすべてのソースファイルを調べましたが、重複は見つかりませんでした。エラーメッセージの一つは次のとおりです。

/アプリケーション/MCUXpressoIDE_25.6.136/ide/plugins/com.nxp.mcuxpresso.tools.macosx_25.6.0.202501151204/tools/bin/../lib/gcc/arm-none-eabi/14.2.1/./../../../arm-none-eabi/bin/ld: ./source/ペリフェラル.o:/Users/julian/Documents/MCUXpressoIDE_25.6.136/workspace/lpcxpresso824max_new_project/Debug/../source/ペリフェラル.h:57: 'CA_LUT'の複数定義; ./source/main.o:/Users/julian/Documents/MCUXpressoIDE_25.6.136/workspace/lpcxpresso824max_new_project/Debug/../source/ペリフェラル.h:57: ここで最初に定義されました


Re: Duplicate variable declarations

こんにちは、

あなたのペリフェラルを教えていただけますか?ファイルとペリフェラルについて?または、CA_LUTの宣言をどのように追加したか説明してください。

main.cでどのように使ったのか教えていただけますかCA_LUT?

どのファイル名に[#include "peripherals.h"】があるのか教えてください。それらのファイルのヘッダーはmain.cに含まれていますか?

敬具、ルイス

Re: Duplicate variable declarations

こんにちは、

ペリフェラルでCA_LUTを定義しているように、そうかもしれません。メインとペリフェラルの両方です。重複エラー「複数の定義」が発生するファイルを呼び出します。

宣言をペリフェラルにだけ加えるのを手伝っていただけますかCA_LUTペリフェラルの代わりに、そして再試行する。

ペリフェラルに同様の申告を他にも持っていますか?同じエラーが出ているのですか?もし持っているなら、ペリフェラル.c にも移動してください。

7セグメントを外部ペリフェラルと考えてください。

調査結果を教えてください。

よろしくお願いいたします。

Re: Duplicate variable declarations

これはペリフェラルのエントリーです。どちらのエラーについても

// 数字0~9のルックアップテーブル(0=オン、1=オフ)
const uint32_t CA_LUT[10] = {
//0: A、B、C、D、E、Fはオン、G、DPはオフ
~((1< // 1: B、Cはオン
~((1< // 2: A、B、D、E、Gがオン
~((1< // 3: A、B、C、D、Gがオン
~((1< // 4: B、C、F、Gがオン
~((1< // 5: A、C、D、F、Gがオン
~((1< // 6: A、C、D、E、F、Gがオン
~((1< // 7: A、B、Cはオンです
~((1< // 8: 全セグメントON (AG)
~((1< // 9: A、B、C、D、F、Gがオン
~((1< };

// 1桁目、2桁目、3桁目に印刷される現在の数値を保持するグローバル変数
volatile uint8_t display_buffer[3] = {1, 2, 3}; // 例: "123" と表示されます

どちらのエラーもmain.cで使用されています。:-

uint8_t numeric_value = display_buffer[current_digit];
uint32_t segment_pattern = CA_LUT[numeric_value];

#include "ペリフェラル" 以下のファイルにのみ出現します: -

main.c、ペリフェラル、

先ほども言いましたが、私はCodeWarriorから来ているので、MCUXの知識はおそらく危険です(?????)。7セグメントディスプレイがペリフェラル(peripherals.h )かどうかはわかりませんc) またはピン数の宣言 (pin_mux.h)そしてc)、でもそれは後で解決できます。



Tags (1)
No ratings
Version history
Last update:
Thursday
Updated by: