重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

【終了しました】教えて!goo新規会員登録

PICのことで解らないことがあります。初歩的な問題ですがご容赦ください。以下にソースファイルとエラーメッセージを載せています。どうすればコンパイルできますか?よろしくお願いします。
*******************************************************************************
/*****************************
STEP03_TEST.c
*****************************/

// インクルードファイルの読み込み
#include <pic.h>
#include "16F627A.h"
// コンフィギュレーションワードの設定
__CONFIG ( UNPROTECT & LVPDIS & BOREN & MCLREN & PWRTEN & WDTDIS & INTIO );

// メイン関数
void main (void)
{
// 1,2,17,18端子を入出力端子に設定
CMCON = 0x07;

// 電圧レベルの初期設定
PORTA = 0xFF;
PORTB = 0xFF;

// 入出力設定
TRISA = 0x21;
TRISB = 0x00;

// 永久ループ
while(1)
{
// SW1がONの場合
if (RA0 == 0)
{
// LED1点灯
RB0 = 0;
}
// その他の場合(SW1がOFFの場合)
else
{
// LED1消灯
RB0 = 1;
}
}
}
*******************************************************************************
Build C:\fivethapp\fiveth for device 16F627A
Using driver C:\Program Files\HI-TECH Software\PICC\9.81\bin\picc.exe

Make: The target "C:\fivethapp\STEP03_TEST.p1" is up to date.
Executing: "C:\Program Files\HI-TECH Software\PICC\9.81\bin\picc.exe" -ofiveth.cof -mfiveth.map --summary=default --output=default STEP03_TEST.p1 --chip=16F627A "-IC:\Program Files\HI-TECH Software\PICC\9.81\include" -P --runtime=default --opt=default -D__DEBUG=1 -g --asmlist "--errformat=Error [%n] %f; %l.%c %s" "--msgformat=Advisory[%n] %s" "--warnformat=Warning [%n] %f; %l.%c %s"
HI-TECH C Compiler for PIC10/12/16 MCUs (Lite Mode) V9.81
Copyright (C) 2010 Microchip Technology Inc.
(1273) Omniscient Code Generation not available in Lite mode (warning)
Error [800] fiveth.as; 45. undefined symbol "INTIO"
Error [800] fiveth.as; 45. undefined symbol "WDTDIS"
Error [800] fiveth.as; 45. undefined symbol "PWRTEN"
Error [800] fiveth.as; 45. undefined symbol "MCLREN"
Error [800] fiveth.as; 45. undefined symbol "BOREN"
Error [800] fiveth.as; 45. undefined symbol "LVPDIS"
Error [800] fiveth.as; 45. undefined symbol "UNPROTECT"

********** Build failed! **********

A 回答 (1件)

これは、16F627Aの仕様書にコンフィギュレーションワードの各ビットの意味が書いてあると思います。


16F627A.h内で、デフォルト値が指定されていないのであれば、数値を直に代入して、必要なビットを立ててあげる訳です。

まず、ご自身でどのようなモードで使用するか決められて、各ビットが0になるか1になるかを確認します。全てのAND(論理積)が取られてますので、0になるビットだけを確認し残りは1を立てるように16進数で記述すれば良いと思います。

参考URL:http://www.piclist.com/images/www/hobby_elec/pic …
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!