0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

PIC (だけではないけど) コンパイラ GCBasic で Lチカしてみた

Last updated at Posted at 2025-07-19

概要

オープンソースの PIC コンパイラって無いのかな (SDCC は PIC に関してはディスコン) って探してみたら GCBasic なるものがあったので、インストールして Lチカまでしてみた。

GCBasic 本家はこちら。
https://gcbasic.sourceforge.io/Typesetter/index.php

Linux のインストール

基本的には、ここに従いつつ、バージョンだけ最新のものを選べば良い。

ただし、そのままだと失敗するし、変えた方が良いところもある。

FreeBasic は書いてある通りに ./install.sh -i を行なうと /usr/local に直接書き込まれるので、何のファイルが入ったのか迷子になる。なので /opt/freebasic などに入れるか (./install.sh -i /opt/freebasic)、パッケージを使った方が良いと思う。ちなみに Arch は AUR にあることに後から気が付いた。

GCBasic はビルドはできるがインストールが出きない。なぜなら install.sh には LinuxBuild/SupportFiles フォルダが指定されているが、実際には linuxbuild/supportfiles フォルダだからだ。rar のせいなのか、作者が大文字小文字区別しないシェルの設定にしてたのか分からない。自分はフォルダ側を install.sh に合わせて通した。

MPLAB とテキストエディタのインストールはスキップできる。hex ファイルの書き込み手段を持っている人であれば。

Lチカしてみる

一番始めの使い方はここに書いてある。

ただし一番の注意点は CONFIG LVP=OFF がデフォルトになっていること。

定電圧書き込み手段を使っている人は注意。MicroChip 純正プログラマを使う人でも個人であれば廉価な Snap や Pickit Basic を使う人が多いだろうから注意。ちなみに私は a-p-prog

こんなソース (hoge.c) で

; pic12f1501 with 4MHz
#Chip 12f1501,4

; The default is LVP = OFF. Very dangerous.
#config LVP = ON
#config MCLR = ON

#Define LED PortA.5

Dir LED Out

Do
  LED = !LED
  Wait 500 ms
Loop

; レジスタ操作、一切なし
; めっちゃ楽

コンパイルして

gcbasic /A:GCASM hoge.c

.hex の他、.asm ファイルも出きているので、どんなレジスタ操作が行なわることになったのかも確認できる。

きちんと動いた。
Lチカ成功

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?