MPLABをかじってみた
Home

始めに
とりあえずMPLABをインストールした。

File → New project


1. ChooseProject
Category Microchip Embedded
Projecy Application Project(s)
でNext

2. SelectDevice

Family Mid-range 8Bit MCUs(PIC10/12/16)
Device 使うPICたとえば12F675であったり16F84Aであったり16F1827
Tool 書き込み機を指定しないからっぽでOK
でNext
5. Select Compiler

Pic-asの前の□に+をクリックしてpic-asを選択してNext
pis-asがアセンブラ

6. Serect Project Name and Folder

適当でいいと思うが日本語が入らないほうがいいとおもう。
EncodeはUTF-8で
でFinish
すると
Source Fileを右クリックしてNew→Other 1. ChooseFiletype

左の窓でAssembler、右の窓でAssemblerFile.sを選択

2. Name and Location
でFinish
プログラムを書けるようになっている。

忘れないうちに次の2行を書いておこう
PROCESSOR 16F84A
#include <xc.inc>


Window → target Memory views -> Configuration Bits
ウインドウ下にコンフィギュレーションビットがでるので適当に設定する。
最後にGenerate Source Code to Outputボタンを押す。
コピペする。
あとはお好きにプログラムをかくべし!
リンカ メニューバーから[File]→[Project Properties(プロジェクト名)]を選択して、プロジェクトの設定画面を開き、さらに画面左側の[pic-as Global Options]の左側の「+」をクリックして展開し、展開されて出てきた[pic-as Linker]を選択すると、画面の右側に、リンカのオプションを入力する欄が表示されます。 「Additional Options:」の欄に、 -Wl,-presetVec=0h -Wl,-pintrVec=04h のようなリンカオプションを入力し[OK]を選択すると、リンカの設定が有効となります。 "-Wl,-p"の後ろに、メモリ領域名=領域先頭アドレスを足すと、その領域の先頭のアドレスを指定できます。 例えば、"-Wl,presetVec=0h"であれば、領域resetVecの先頭を0h番地にするという意味になります。 設定を複数行うときは、半角のスペースで区切って複数個指定できます。 上記では、resetVecを00h番地から、intrVecを04h番地から始めるように指定しています。なお、数値の後ろの"h"は、16進数を意味しています。 ビルド メニューバーから[Production]→[Build Main Project]を選択すると、アセンブラとリンカが動作し、マイコンに書き込み可能なHEXファイルを作ることができます。なお、ビルドに失敗した場合は、エラーメッセージなどが表示されるので、メッセージを参考に、プログラムを修正する必要があります。 ビルドに成功した場合は、HEXファイルをはじめとした成果物が、ディレクトリ C:\Users\ユーザ名\MPLABXProjects\プロジェクト名.X\dist\default\production 以下に生成されます。ただし、ディレクトリ名は環境により異なる可能性があります。 ビルドしただけでは、マイコンのチップへの書き込みは終わっていません。書き込み器の準備ができた状態で、メニューバーから[Production]→[Make and Program Device Main Project]を選択すると、ビルドとマイコンへの書き込みを、一気に実行できます。 ちなみに、ビルドが終わった段階で、マイコンのプログラムメモリのどの番地に何が書き込まれるかを、視覚的に確認できます。メニューバーから[Window]→[Target Memory Views]→[Program Memory]を選択すると、下の画像のように、プログラムメモリの最初の番地から最後の番地まで1ワードずつ、書き込まれる命令を確認することができます。 成功すれば、画面の下のほうにビルドに成功した旨のメッセージが出ます。