私はAVRマイクロコントローラをプログラミングしていますが、WINAVR Suiteのプログラマーのメモ帳にも書き込んでいます。Cコードを別のファイルに入れる
私は自分のコードを分離しようとしていますが、sepeaet .cファイルではAVR定義済み変数を使用できません。 (AVRが特定のBITを指すように提供する変数)
たとえば、 このコードはmain.cファイルで機能します。ではなく、別のrandom.cのファイルに:
UBRR0H = (unsigned char)(ubrr>>8);
それがエラーを与える:私のmain.cファイル内
random.c:6: error: 'UBRR0H' undeclared (first use in this function)
それだけで以下が含まれています:
あなたが持っている#include <stdio.h>
#include <stdlib.h>
#include <util/delay.h>
#include <string.h>
#include <avr/interrupt.h>
#include "lcd.h"
#include "random.h"
あなたは 'random.c'ファイルに同じインクルードを持っていますか? –
あなたはUBRR0Hをどこで宣言しましたか? main.cとrandom.c?どこにもない? – fazo
それは事です、私はどこでもUBRR0Hを宣言していません。それはちょうどMCUのsasの一部に来て..そして、宣言されたところではわからないIm。 – michael