マイコン(RA8M2)

マイコンとは?RA8M2でLEDを点滅するための超入門

シリーズ:基礎シリーズ(マイコン)
この記事のねらい:実験シリーズ「評価ボードでLEDを点滅」に入る前に、GPIO(ピンをON/OFFする仕組み) だけを最短で理解する。

はじめに(最初に伝えたいこと)

LED点滅の実験は、回路よりも先に「マイコンがピン(LEDやセンサとつながる出入口)をON/OFFできる」という感覚がないと詰まりやすいです。
そこでこの記事では、難しい話(CPUの命令とか、レジスタとか、割り込みとか)は後回しにして、

  • マイコンって何?
  • ピンって何?
  • GPIOって何?
  • High/LowでLEDが点く/消えるってどういうこと?

だけを、実験に必要な範囲で説明します。

※この記事は「実験手順」ではありません。
e² studioやFSPの手順、書き込み方法、点滅コードは実験シリーズで扱います。

要点

最初は、次の3つだけ覚えればOKです。

  1. マイコンは「小さなコンピュータ」(CPU+メモリ+いろいろな機能が1つのチップに入っている)
  2. LED点滅で使うのは GPIO(汎用入出力ピン) という機能
  3. GPIOはピンの電気状態を High / Low にできる
    • High:「電圧を出す(H)」
    • Low:「0Vにする(L)」

この3つが分かると、LED点滅は「High→Low→High→…」の繰り返しで説明できます。

1. マイコンとは「CPUが入った部品」

マイコン(マイクロコントローラ)は、ざっくり言うと “小さなコンピュータ” です。
中には、最低限次の要素が入っています。

  • CPU:命令を実行する頭脳
  • メモリ:プログラムやデータを置く場所
  • 周辺回路:タイマ、通信、GPIOなど、いろいろな機能のこと
  • ピン(端子):外の部品など(LEDやセンサなど)とつながる入口/出口

LED点滅は、この中の「ピン」を使うだけです。
そして、このピンを使うのに、GPIOという機能を使います。

2. ピンとは何か?

評価ボードの周りに並んでいる金属の端子(穴やヘッダ、チップ部品の足)を、まとめて ピン(Pin) と呼びます。
ピンは、マイコンの“手足”のようなもので、外の世界(LED・スイッチ・センサ)と電気的につながる入口/出口です。

ピンには「物理のピン」と「機能としてのピン」がある

  • 物理のピン(見た目の端子)
    実物としてそこにある金属端子。評価ボードのコネクタのピンや、マイコンICにある金属端子もこれです。
  • 機能としてのピン(GPIOピン)
    「この端子はマイコン内部ではPORTの何番」という“役割”の呼び方。
    以後、LED点滅で言う「ピン」は、基本こちら(GPIO)を指します。

3. GPIOとは「ピンを自由にON/OFFできる仕組み」

GPIO(General Purpose Input/Output)は、直訳すると「汎用の入力/出力」です。

  • 出力(Output):マイコンから外へ電気状態を出す(LED点滅はコレ)
  • 入力(Input):外からの電気状態を読む(ボタンなどで使う)

今回のLED点滅では、対象のピンを 出力 に設定し、High/Lowを切り替えます。

4. High / Low は何を変えている?

GPIOでHigh/Lowを切り替えると、ピンの電気状態が変わります。

  • High:ピンが「H(電圧あり)」になる
  • Low:ピンが「L(0V)」になる

ただし「Highにしたら必ず点灯」とは限りません。
LEDが光るかどうかは、LEDがつながっている回路の作り(どこに電流が流れる道ができるか)で決まります。

5. LED点滅は「HighとLowを交互にするだけ」

LED点滅の考え方は、これだけです。

  1. ピンをHighにする → LEDが点灯(の構成になっている)
  2. 少し待つ
  3. ピンをLowにする → LEDが消灯(の構成になっている)
  4. 少し待つ
  5. 1〜4を繰り返す

つまり、点滅は「ON/OFFを繰り返す」だけです。

6. 重要:オンボードLEDは“Lowで点く”ことがある(Active-Low)

評価ボードのLEDは、回路の都合で Lowにすると点灯Highにすると消灯、という場合があります。
これを Active-Low(アクティブ・ロー) と呼びます。

Low(0V)にすると点灯するのは、「0Vだから電流が止まる」のではなく、0Vが電流の行き先(出口)になるからです。
回路の作りによっては、LEDのもう一方が電源(Vcc)側につながっていて、ピンをLow(0V)にすると Vcc → LED → ピン(0V) の流れができて点灯します。

※ここでは「そういう配線のLEDもある」と分かればOKです。実験では、まず“点灯条件(High点灯かLow点灯か)”を確認して進めます。

通常通り、Highにすると点灯するものをActive-High(アクティブ・ハイ) と呼びます。

7. 「どのピンがLEDにつながっているか」が一番大事

LEDを点滅したいなら、結局ここです。

  • どのGPIO(ポート/ピン)が、LEDに接続されているのか?
  • そのLEDは High で点く? Low で点く?(Active-High / Active-Low)

これは、評価ボードの資料(回路図・ユーザーズマニュアル)で確認します。
この接続情報(接続先GPIO/点灯条件)を先に確認しておくと、手順の意味が追いやすくなります。

(例:資料を読んで分かった内容を、こういう形で整理しておくと迷いません。)

  • LED0:接続先GPIO Pxxx/点灯条件:Lowで点灯(Active-Low)
  • LED1:接続先GPIO Pyyy/点灯条件:Highで点灯(Active-High)

※この記事では具体のピン番号は断定しません(ボード型番や設定で変わるため)。

8. 用語だけ整理(最小)

LED点滅で出てきがちな言葉を、最低限だけ揃えます。

  • ポート(Port):ピンをまとめた単位(例:PORT1、PORTAなど)。
    ※内部のしくみ(レジスタとビットの関係)は、別記事で解説します。
  • ピン(Pin):マイコンの端子のこと。
    GPIOとして使う場合は「どの端子か」を ピン名(例:P1_3 のような表記)で表します。
    P1_3 は「1番ポートの3番ピン」という意味の“名前”で、コードの命令ではありません。
  • 出力(Output):ピンから外へHigh/Lowを出す。
  • 入力(Input):ピンのHigh/Lowを読む。

補足

補足1:レジスタは今は気にしなくてOK

本来、GPIOは内部の「レジスタ」という箱に値を書いて制御します。
ただし、RA8M2の実験では、まず FSPのAPI(関数)でGPIOを操作 すれば十分です。

  • まずは「GPIOでHigh/Lowできる」ことが目的
  • レジスタ(ポートやピン)を直接書き換えたり、読み出したりするのは、必要になったら補足記事で扱う

補足2:点滅の“待ち時間”は最初は雑でOK

LED点滅では「少し待つ」が必要です。
最初は、正確な時間にこだわらず、

  • 目で見て点滅に見える程度の待ち

で大丈夫です。
(時間精度が必要になったら、タイマ記事で扱います)

まとめ(この記事で押さえること)

  • マイコンは「小さなコンピュータ」で、ピンで外とつながる
  • LED点滅で必要なのは GPIO(ピンのHigh/Low切り替え)
  • 点滅は「High→待つ→Low→待つ」の繰り返し
  • オンボードLEDは Active-Low(Lowで点灯) のことがある
  • 実験では「LEDがどのピンにつながっているか」を最初に確定させる

次に読む(おすすめの順)

  • 次回:組み込み開発とは?(e² studio + FSPでビルド〜書き込みまでの最短)
  • その次:LED点滅に必要なC言語だけ(main / while / 関数 / delay)
  • 実験シリーズ:RA8M2評価ボードでLEDを点滅(手順・コード・結果・つまずき)

-マイコン(RA8M2)