- 公開日:2020年07月27日
- | 更新日:2022年11月21日
もはや必要不可欠?身近な電化製品には欠かせないマイコンとは
- ライター:umamiti
- マイコン
はじめに
マイコンという言葉を聞いたことがあるでしょうか。実は普段の生活で使用する様々な電化製品にマイコンが使われています。キッチンタイマー、電卓、おもちゃなどの様に小さいものから、洗濯機、冷蔵庫、エアコンなどの大きいものまで、その大きさや性能はそれぞれ違いますが、ほぼ必ず電化製品にはマイコンが使われています。「この電化製品にはマイコンが入っている。」なんて普段は意識しないですよね。本記事では、普段は気にしない「マイコン」について、基本構造とそれぞれの役割に焦点をあてて説明していきます。
マイコンについて
マイコンとは「マイクロコントローラ」の略で、電化製品をコントロールする部分、つまり人間で言うところの脳みそに当たります。
マイコンの実際のチップの写真がこちらになります。
※ 写真のマイコンはTexas Instruments社 MSP430™になります。
この写真からもわかるように、マイコンは非常に小さい一つの半導体ICです。もちろん、もっと小さいものや、大きいものなど種類も様々です。このマイコンが電化製品のコントロールをしていると言いましたが、何をコントロールしているか想像できますか?皆さんのお家にもあるキッチンタイマー(昨今ではスマートフォンで代用している人も多いとは思いますが・・・)を例に挙げてみます。以下の図ではキッチンタイマーの機能を説明しています。
キッチンタイマーのイメージ図
実際にマイコンが制御しているものが以下になります。
- カウントダウンの開始と停止や、時間設定をするときのスイッチの押下を検知する
- 現在の残り時間を表示するための液晶パネル(LCD)との通信
- 時間を計測する(カウントダウン)
- ブザーから音を出す
などなど。キッチンタイマー1つを例に上げてみても、マイコン1つで色々と制御していることが分かります。
マイコンの基本構造
マイコンは上の写真にもあるように、外見からではただの黒い箱にゲジゲジがついているようにしか見えません。ここで、中身がどうなっているか見てみましょう。
簡単な構成図を次に示します。
マイコンの基本構成
マイコンの中身には大きく分けて以下4つの装置に分類されます。
- 制御装置
- 演算装置
- 記憶装置
- 周辺装置
基本的には入力装置からデータが入ってきて、演算装置で計算される、もしくは、記憶装置に保存されます。そして、出力装置からデータが出ていくような流れになります。これらの流れを制御するのが制御装置になります。よく人間で例えられるのですが、耳で聞いた音を記憶して、口で歌にしたり、手で楽器から音を出すというように考えることができます。
それぞれの役割について簡単に説明していきます。
制御装置
マイコン内部のあらゆる装置を制御するための装置です。マイコンにはあらかじめプログラムと呼ばれる命令(処理)を記述したものを記憶装置に保存しておく必要があります。例えば「データが入力されたら記憶装置に保存する」、「演算を行ったデータを出力する」といった命令内容に従って、各装置を順番通りに制御していきます。
キッチンタイマーでは、命令を正しい順番で実行することでキッチンタイマーとしての機能を実現する事ができます。下図はキッチンタイマーのプログラムの順序(あくまで一例)を図で表したもので、フローチャートと呼ばれます。このようなフローチャートを制御しているのが制御装置です。
キッチンタイマーのフローチャート(一例)
演算装置
マイコン内部で演算をするための装置です。基本的な、加算(足し算)、減算(引き算)、乗算(掛け算)を行うことが出来ます。また、論理演算と呼ばれる、マイコンやデジタル回路の世界ではよく使われる演算を行うことが出来ます。論理演算は簡単に言うと、「0」と「1」の2つの値と、ORやANDなどの論理式を使用した演算です。この論理演算はプログラムを書く際によく使われます。
キッチンタイマーでは、液晶パネルに表示する数字を減らす際に引き算が行われたり、命令の分岐処理が行われる際に論理演算が行われていたりします。
一般的に制御装置と演算装置を2つ合わせて、CPU(Central Processing Unit : 中央処理装置)と呼んでいます。パソコンでもよく聞くCPUと同じものがマイコンにも入っていますが、パソコンのCPUとマイコンのCPUでは、性能と値段が全く異なります。パソコンでは1台何万円と非常に高く、一度にたくさんのデータの処理を行うことが出来ますが、マイコンのCPUでは処理できる量がもっと少ない分、安いもので数十円といった様に簡単に入手する事ができます。ですので、キッチンタイマーも100円で買える事ができます。
記憶装置
マイコン内部に様々なデータやプログラムを記憶することができる装置です。制御装置で触れたプログラム、演算装置で演算した結果、周辺装置を介して入力装置から受け取ったデータを記憶するために使用します。
キッチンタイマーでは「液晶パネルに表示する時間」のデータや「0秒になったら音を鳴らす」、「ボタンを押したらスタートする」などのプログラムを保存しておくことで、予め決められている命令に従って動作することが出来ます。
周辺装置
マイコン外部と繋がっている入力装置、出力装置をマイコン内部の装置と繋げるための装置です。マイコンから出ているゲジゲジの部分がマイコン内部の周辺装置と繋がっています。周辺装置には以下のようにいろいろなものがあり、これらをまとめて周辺装置と呼んでいます。使用する周辺装置によって、繋がる入出力装置が異なります。
- GPIO(General Purpose Input/Output : 汎用入出力ポート)
→LEDやスイッチと繋がり、LEDを光らせたり、スイッチの入力を検知することができます。
- シリアル通信
→センサーや他の半導体IC、液晶パネル(LCD)と接続し、データのやり取りを行います。
- タイマー
→外部に接続することも出来ますが、マイコン内部で時間を計測する事ができます。
キッチンタイマーでは「GPIOでスイッチの入力を検知」、「ブザーを鳴らす」、「シリアル通信でLCDに時間を表示」、「タイマーで時間を計測する」といった処理で周辺装置が使用されています。
以上、4つの装置を踏まえてキッチンタイマーの中を覗いてみると下図のようになっています。
キッチンタイマーの中身
マイコンを使用するメリット
ここまでで、マイコンは非常に小さい1つの半導体ICなのに、電化製品を制御することができることが分かりました。
マイコンを使用するメリットを具体的に2つ挙げてみます。
1.基板自体の小型化
マイコンがまだ存在しなかった頃、携帯電話が肩から掛けるバッグのように大きかったことはご存知でしょうか。昔は電話の機能を実現するために、何万個以上もの電子部品を組み合わせていたため、電子機器を大きくする必要がありました。しかし今では、様々な電子部品の小型化に成功し、たった1個のマイコンの中に部品を集約することで、片手でスマートフォンを持って、ゲームまでできるようになりました。
この様に、マイコンの中に様々な電子部品を集約することで、今までと同じ機能・性能を保ちつつ、電化製品自体の小型化が実現できました。すなわち、世の中の製品がどんどん小さくなってきたのは、このマイコンの登場と進化によるものといっても過言ではありません。
2.同じデバイスで様々な機能を実現できる
もう一つの利点は、マイコンはプログラムによって命令(処理)を自由に変えることができることです。小型化の際にも説明しましたが、元々マイコンが作られる前は、別々のアナログ回路や論理回路を組み合わせて、様々な機能を実現していました。ですので、たった1つの機能を変更するだけでも、部品を付け替えたり、回路自体を変更したりとハードウェア的な変更作業が必要でした。
しかし、マイコンであれば、プログラムを開発者が自由にプログラミングすることで、一部の機能を変更することが出来ます。極端な例ですが、同じマイコンのままでもキッチンタイマーからストップウォッチに機能そのものを変更することができます。
プログラミングだけで、キッチンタイマーからストップウォッチに変更する図
おわりに
今回は身近な電化製品で使用されているマイコンについて、電化製品における役割、4つの基本構造、使用するメリットについて解説させていただきました。しかし、本記事だけでは、マイコンの全てをご説明出来ておりませんので、別の記事にてCPUの構造についての詳しい解説や、マイコンの開発手順、マイコン開発におけるプログラミングの基礎について解説していきたいと思います。
また、机上で学ぶより、実際に手を動かしてマイコンの開発を体験していただいた方が、理解しやすいかと思います。弊社ではマイコンを初めて触る方に向けて、初心者のためのマイコンワークショップを定期的に開催しています。マイコンにご興味ありましたら、是非一度、弊社ワークショップへご参加ください。
https://emb.macnica.co.jp/seminar/
開催時には上記のリンクから申し込みが可能になりますので、ご確認ください。