PICのお勉強(13)C言語編 LEDの点灯
しばらくサボってたPICのお勉強を,アセンブラじゃなくてC言語で再開しようと思います。まあアセンブラがめんどくさくなっただけですな(笑)
とりあえず,以前アセンブラでやったことをCでやり直してみるつもりです。とは言っても,C言語も生まれて初めてさわるので,どうなることかわかりませんが。
コンパイラは,以前MPLAB IDE v.8.80をインストールしたときに同時に入ったHI-TECH C Compiler v.9.83を使います。テストボードは16F84Aを載せたこれです。
で,今日初めて書いたプログラムがコレ。
/**************************
16F84A
RA2とRA3のLED点灯
**************************/
#include <pic.h>
__CONFIG(HS & WDTDIS & PWRTDIS & UNPROTECT);
void main (void)
{
// TRISA入出力設定 RA0,RA1は入力、RA2~RA4は出力
TRISA = 0b00011;
while(1)
{
// RA2とRA3点灯
PORTA = 0b01100;
}
}
ところが,これをコンパイルするとエラーを連発します。
調べてみたところ,HI-TECH Cのv.9.81以降はヘッダファイルが全面改定されていて,__CONFIGの書き方が変わっちゃったんだそうです。 手っ取り早い解決方法は,Build OptionのCompilerタブを開いてDefine macrosに「_LEGACY_HEADERS」と書いて,Addすることのようです。確かにこれでコンパイル成功(^^)
しかし,こういう仕様変更をしたときは,上位互換にしとくもんじゃないですかねー。
RA2とRA3に接続したLEDを点灯させるだけのプログラムですが,アセンブラより断然カンタンじゃないですか。
こりゃいいわー
| 固定リンク | 0
「PICマイコン」カテゴリの記事
- ZK-80で足し算(2020.07.23)
- TK-80互換機 ZK-80のキット(2020.07.21)
- PICのお勉強(37) C言語編 12F683でA/D変換(2015.06.02)
- UVレジンでLEDイルミネーション (2)(2015.05.15)
- PICのお勉強(35) C言語編 PWMでサーボモータを動かす(2014.10.05)
コメント