XC8コンパイラでのPWM制御をしたいのですが、pwm.hがうまく取り込めません
Posted: 2014年6月14日(土) 17:33
質問をする場所を迷いましたが、ここで質問させていただくことにしました。
ここで聞くことでなかったらすみません。ご指摘ください。
今現在、以下の環境、条件で開発を始めました。
MPLAB X IDE
XC8コンパイラ
PIC 16F886
赤外線LEDやモーター制御などをするためにPWM制御を覚えたいと思い取り組んでいるのですがうまくいきませんでした。
プログラムを添付させていただきます。
この中で
OpenPWM1();
SetDCPWM1();
SetOutputPWM1();
ClosePWM1();
という標準関数を利用しようとしているのですが、どれも「error: undefined symbols:」というエラーで使えません。
SetOutputPWM1()に関してはエディターに記述している段階で「Unable to resolve identifier SetOutputWPM1」と言われてしまいます。
pwm.h のインクルードに関してですが、#include <pwm.h>では取り込めなかったので自分でファイルの位置を指定しました。
すると pwm.h 内で取り込んでいるヘッダーまでも場所が違うとのことですべて勝手ながら書き換えてしまいました。
良くも悪くもその部分のエラーはとりあえず消えたのですが、その行動も標準関数が使えなくなっている原因ではないかと不安に思っております。
なにか思い当たる原因がある方がいらっしゃいましたらご教授お願いいたします。
ここで聞くことでなかったらすみません。ご指摘ください。
今現在、以下の環境、条件で開発を始めました。
MPLAB X IDE
XC8コンパイラ
PIC 16F886
赤外線LEDやモーター制御などをするためにPWM制御を覚えたいと思い取り組んでいるのですがうまくいきませんでした。
プログラムを添付させていただきます。
/*
* File: main.c
* Author: windows
*
* Created on 2014/06/14, 14:13
*
* PWM動作テストプログラム
* PICは16F886を使用
*/
#pragma config CPD = OFF,\
BOREN = OFF,\
IESO = OFF,\
DEBUG = OFF,\
FOSC = INTRC_NOCLKOUT,\
FCMEN = OFF,\
WDTE = OFF,\
MCLRE = OFF,\
LVP = OFF,\
PWRTE = OFF,\
WRT = OFF
#include <xc.h>
#include <./plib/pwm.h>
#define _XTAL_FREQ 4000000
void main(void) {
TRISA = 0x00; // 入出力設定
TRISB = 0x00; //
TRISC = 0x00; //
PORTA = 0x00; // ポート初期化
PORTB = 0x00; //
PORTC = 0x00; //
OSCCON = 0b01110000;
ANSEL = 0x00;
ANSELH = 0x00;
OpenPWM1();
SetDCPWM1();
SetOutputPWM1();
ClosePWM1();
return;
}
OpenPWM1();
SetDCPWM1();
SetOutputPWM1();
ClosePWM1();
という標準関数を利用しようとしているのですが、どれも「error: undefined symbols:」というエラーで使えません。
SetOutputPWM1()に関してはエディターに記述している段階で「Unable to resolve identifier SetOutputWPM1」と言われてしまいます。
pwm.h のインクルードに関してですが、#include <pwm.h>では取り込めなかったので自分でファイルの位置を指定しました。
すると pwm.h 内で取り込んでいるヘッダーまでも場所が違うとのことですべて勝手ながら書き換えてしまいました。
良くも悪くもその部分のエラーはとりあえず消えたのですが、その行動も標準関数が使えなくなっている原因ではないかと不安に思っております。
なにか思い当たる原因がある方がいらっしゃいましたらご教授お願いいたします。