表4

表1

ご購入はこちら．
https://shop.cqpub.co.jp/hanbai/books/47/47031.html※M版→K角

K版→M角見本

CQ 出版社 『ラズパイで入門！ Linux I ／ O プログラミング教科書』 表 1-4 初刷
背幅19mm 4C175L EQ1 19/04/02 組M豊島 H263×W389

第1部

Linux の基礎知識と動かし方
世界の英知が育てるフリーウェア

第1章

Linux OS 超入門
後閑 哲也
BCM2837（64ビット×4コアCPU，1.2GHz，1GバイトRAM，ブロードコム）

汎用I/O端子（40ピン）

USB2.0×456mm

マイクロSD
カード用スロット（基板裏）

LANコネクタ（10BASE-T，100BASE-TX）
コンポジット・
ビデオ出力とオーディオ出力の兼用端子（φ3.5mmの4極タイプ）

ディジタル・
シリアル・インターフェース
DSI（ディスプレイ・ポート）
85.6mm

電源入力用のマイクロUSB端子（2.5A以上出力できる5V出力の電源を接続する）
写真 1

カメラ接続端子（CSI：Camera Serial Interface）

ビデオ接続端子（フルサイズHDMI）

子供から大人まで実験や電子工作に大人気の科学ガジェット・スパコン「ラズベリー・パイ」

いよいよ Linux のことなど知らなくてよい…というわけにはいかなくなってきた．世界出荷台数は 1000 万台に到達した● 最強の I/O コンピュータ・マシンを作るための第 1
歩は Linux 攻略
雑誌でも取り上げられることが増えているラズベリー・ パ イ（Raspberry Pi， 写 真 1）は， 電 子 工 作 用 のI/O コンピュータとして多くのエンジニアに利用されています．
従来のマイコンだけでは荷が重かった，次のような機能を簡単に実現できるのが大きな魅力です．
● インターネット接続
従来のマイコンだけでは荷が重かった，次のような● Web ブラウザによるインターネット通信機能を簡単に実現できるのが大きな魅力です．
●●

静止画や動画の表示や処理
音声処理

カメラ撮影
ラズベリー・パイを動かすにはまず Linux を操縦す●10る力が必要です．そこで第 1 部では，そもそも Linuxとは一体何者なのかという話から，基本的な使い方を解説します．

Linux って何者？
● 1991 年，一人のエンジニアが自宅で作り上げた業
務用 OS のホビー版
そもそも Linux とは何なのでしょうか．
Linux とは，パソコンでおなじみの Windows と同じ OS（Operating System）のひとつで，● コンピュータの画面の表示

見本

ネットワークとの接続など，マイコンでは荷が重そうな高度な処理をこなし●

序章

USBケーブルの準備からOSの日本語化まで，ガッチリ足場を固める

Lチカ

快適！ Linuxコンピュータ「ラズベリー・パイ」私の開発環境

LED

後閑 哲也

有線LANを使う場
合にLANケーブルでルータと接続

7 マイクロSD
カード（16Gバイト以上，クラス10）と標準SDカー
6 ラズベリー・パイ3
ド・アダプタModel B

おなじみの Windows パソコンや Mac と違い，買ってきたばかりのラズベリー・パイ （3 写真 1）は OS がインストールされていないので動きません．本章では，最新版のラズベリー・パイ 3 Model B をセットアップして，Linux を学ぶ（第 1 部 第 3 章〜）準備をします．

STEP1

ハードウェアの準備

ラズベリー・パイを動かす前に，まず Windows パソコン上で下ごしらえをします．
通常のインターネットにつながった Windows パソ
コ ン を 使 っ て， ラ ズ ベ リ ー・ パ イ 用 の ス ペ シ ャ ル
Linux “Raspbian OS” をダウンロードして SD カードにコピーします．SD カードはラズベリー・パイに合うように専用のプログラムでフォーマットします．手順を次に示します．
❶ SDカードをフォーマットするプログラムをダウンロードしてインストールする
普段使っている Windows パソコンを使って，次のWeb サイトから SD カードをフォーマットするプログ
ラム SDFormatter をダウンロードしてインストールします．
http://www.sdcard.org/jp/downloads/
formatter̲4/eula̲windows/
この Web サイトに進むと「エンドユーザ使用許諾契約書」という Web ページが開きます．ページ一番下の［同意します］ボタンをクリックすると，インストーラのダウンロードが始まります．ファイルを適当なフォルダに保存します．

見本
13I/O関数リファレンスSTEP2 ラズベリー・パイにOSをインストールする準備（Windowsパソコンで下ごしらえ）

写真 1 Linux を始めたいならラズベリー・パイ 3 がおすすめ（約5,000 円）

製作実例集

用意する素材一式を図 1 に示します．
マウスとキーボードは，4 個ある USB コネクタのどこに接続しても問題ありません．LAN ケーブルは有線 LAN でルータやハブに接続するときに必要ですが，Wi−Fi だけで使う場合は必要ありません．SD カード・スロットにはスプリング機構がないので，取り出すときにはカードの端をつまんで引っ張り出します．

USBマウスとUSBキーボード

Web I/O Wi ーFi&HDMI

5 USBマウス
図 1 ［STEP1］Linux 学習の第一歩は快適な実験環境作り（これらの部材を用意する）

ボードの裏面にあるソケットにマイクロSDカードを挿入

マイコンで性能UP

3 日本語キーボード（日本語109, USB）

8 USBケーブル（USB Aオス
USBマイクロBオス）

シリアル2 LANケーブル

状態表示用LEDスイッチ

4 HDMI
ケーブル

HDMIケーブル インストールを開始
でディスプレイ するときUSBケーブに接続
ルで電源に接続

I/O制御の基本

9 ACアダプタ（5V, 2.5A）

パワー系

1 HDMIディスプレイ

操作方法

2章

基礎知識

第第1部

Linux の基礎知識と動かし方

カーネル / ドライバ / シェル…ソフトウェア群を整理

第3章

ブラックボックス・オープン！
Linux 国の地図
後閑 哲也

ハードウェアの制御や複数の処理の配分管理をする Linux の中枢「カーネル」と，そのカーネルにアクセスするための仲介プログラム（シェルやシステム・コール）などでできている

GUI ：Graphical
User I nterface● パソコンが進化した今も，Linux 操作の基本はコマンド文字入力
第 1 章で説明したように，さまざまなソフトウェア群で構成された OS “Linux” は，家庭用のパソコンで使えるホビー用として生まれました．
Linux が開発された当時の家庭用パソコンは，今のように高機能なグラフィック表示ができませんでした．
そこで生みの親リーナス・トーバルズは，文字を使ってコマンドを入力して操作する仕様にしました．したがって，パソコンが高性能化した今もこの操作法が基本です．
Windows は，最初からグラフィック画面による操作が基本でしたが，当時のパソコンの処理性能は低く，実用性がありませんでした．Windows が普及した理由は，パソコンのハードウェアの急速な進歩があったからでしょう．
Linux も Windows と同じようなデスクトップ画面でグラフィックを扱えるようになってはいますが，今でも文字によるコマンド入力操作が基本です．デスクトップだけでもたいていのことはできますが，まだまだ文字でコマンドを入力しなければ操作できないカー
ネルの処理がたくさんあります．
中身がオープンで，コマンドでソフトウェアを直接操作する感覚が得られるからこそ，Linux は世界中のエンジニアの間で自然と広まったのかもしれません．

22

ライブラリ群ターミナル（CUI ）

シェル

Linuxカーネル
プロセス・
メモリ管理

仮想ファイル・システム

デバイス・
ドライバ群

ネットワーク・スタック

シェル

図 1 Linux OS のソフトウェア構成

Xウィンドウ・マネージャ
Xサーバ

アプリケーション群
ターミナル（GUI ）CUI ：Character
User I nterface

Linux を構成するソフトウェア群
Linux は図 1 に示すソフトウェア群で構成されています．この図は，Linux がどのようにして動くのかを理解する助けになります．
❶ Linux カーネル
メモリやネットワーク，周辺デバイスなど，さまざまなハードウェアを制御するソフトウェア群です．ここが Linux OS の心臓部で「カーネル（kernel）」と呼ばれています．
ディレクトリの移動やファイルの保存や読み出し，アプリケーションのインストールなど，多くのことをこなすソフトウェア群です．コマンド入力や GUI による操縦で，最終的に動くのは Linux カーネルです．
❷ シェルとターミナル❶のカーネルは，私たちユーザと直接対話する出入り口をもっていません．Linux カーネルと私たちユーザの間に入って通訳してくれるソフトウェア「シェル」が，その出入口になっています．
Linux カーネルをすっぽり覆った貝殻の殻（shell）のように見えることから，シェルと呼ばれています．シ
ェルの開発にも多くのエンジニアが関わっておりたくさんの種類があります．

見本第1部Linux の基礎知識と動かし方

ディレクトリとパスを使いこなして，ほしいプログラムにたどり着く

第ソフトウェアの国Linuxを自在に動き回る

4章

後閑 哲也
/

ルート/

ルート/usr

bin

dev

usr

../../

home

bin

dev

usr

home../binlib/usr/local

local

src

bin

/usr/local/src

test.txt

local

カレント・
ディレクトリ/usr/local/src S
src./test.txt
またはTest.txt/usr/local/src/test.txt

test.txt（a）ファイルの指定法その 1 …絶対パス
図1lib（b）ファイルの指定法その 2 …相対パス

Linux OS を構成するソフトウェア群は階層構造に整理されている

動かしたい処理プログラムを実行する前に，その場所を指定する必要がある．指定方法には（a）の絶対パス式と（b）の相対パス式があるLinux OS は，ソフトウェアでできた一つの国のようなものです．動かしたいソフトウェア（自作プログラムや実行ファイル）があるなら，そのソフトウェアがある場所に行って「動け」と指示する必要があります．ソフトウェアの国 Linux は，階層構造になっており，住所を指定すれば希望の場所に移動することができます．本章では，ソフトウェアの国Linux の中を自由自在に動き回る方法を紹介します．
〈編集部〉

ソフトウェアの実行は居場所を指定してから● プログラムのありかにたどり着くための階層「ディレクトリ」と住所「パス」
前述のコマンドやインタプリタなど，Linux を動かすプログラムは一体どこにあるのでしょうか？
Linux は，住所を指定しないと動かしたソフトウェ

26

アを利用できません．住所は，県，市，町と同じようにいくつかの階層で管理されています．この階層をディレクトリ，住所（＊＊県＊＊市＊＊町）をパスと呼びます．
Linux カーネルは，コマンドもプログラムや実行ファイルの一つとして扱います．プログラムやファイルが存在する住所を指定しないまま実行を求めると，「そんなプログラムやファイルはありません」と，Linuxカーネルに怒られます．
ディレクトリは Windows のフォルダ管理と似ていますが，C ドライブ，D ドライブという表現はありません．どのディスクに書き込まれているかという物理的な保存位置は無視されます．あくまでも論理的なディレクトリ名だけで扱われます．ファイルの保存先は，カーネルにゆだねられており，ハード・ディスクかもしれないし SD カードかもしれません．
なお，ls や cd など，使用頻度の高い Linux の標準コ

見本

序章

①ディレクトリ制御 ②OSの起動・停止 ③インストール＋シェル・スクリプト

Lチカ

Linuxを動かせる…と言えるかも？
3つの基本技＋αLED

後閑 哲也❹ プログラムで動かす
Scratch（ スクラッチ）や Node−Red（ ノード・レッド）など，プログラムを作成する開発ツールはいろい● コマンドを入力するアプリケーションを起動する
まず，シェル・コマンドを入力するアプリケーショ
ン・ソフトウェア「ターミナル」を起動します．
ラズベリー・パイを起動すると，図 1 に示すデスクトップが現れます．上部にあるランチャにあるアイコンをマウスでクリックすると，ターミナルが起動します．Menu からも起動できます．
［Menu］−［アクセサリ］−［LXTerminal］と選ぶと起動できます．シェル・コマンドはこのターミナルから入力します．実
行結果もターミナルに表示されます．

見本● ターミナルに表示される文字の意味
ターミナルを起動すると現れるメッセージをプロン

29

I/O関数
リファレンス

起動できるアプリケーション（ターミナルやテキス
ト・エディタなど）を備えています．マウスでメニューを選択するだけです．

シェル・コマンドを動かす準備

製作実例集❸ GUI，つまりマウスで動かす
Windows と同じように，Raspbian は，アイコンでろあります．
アイコンをつなぐだけで，高機能なプログラムを作ることができます．もちろん C 言語や Java 言語も使えます．

Web I/O Wi ーFi&HDMIのインタプリタ言語で動かすことができます．

図 1 ラズベリー・パイの OS Raspbian を起動して，シェル・コマンドを入力するアプリケーション「ターミナル」を起動

マイコンで性能UP❷ インタプリタ言語で動かす
Raspbian は，Python（ パイソン）を始めとする多く起動してメッセージ（プロンプトと言う）
が表示されるシリアル❶ これが基本！ シェル・コマンドで動かす
かゆい所にも手が届く，一番よく利用する方法です．
ターミナルを使ってコマンドを入力し，シェル経由でLinux のコマンドを一つずつ対話しながら実行します．
カーネルがもつ機能だけでなく，Raspbian が備えるアプリケーションを起動したり，停止したりもできます．インターネットからアプリケーションをダウンロードしてインストールして実行することもできます．
複数のコマンドを書き並べたテキスト・ファイルを作って，Raspbianに読み込ませると，連続実行されます．

ターミナル・アプリケーションを指定すると…

スイッチ

ラズベリー・パイにインストールした Linux OS
Raspbian は，さまざまなアプリケーションを備えています．動かし方は次のようにいろいろありますが，基本は❶のシェル・コマンド入力です．

I/O制御の基本

Linux OS はコマンドで動かすのが基本

ターミナル・アプリケーションをワンクリックで起動できるアイコン

パワー系

Linux カーネルを動かすシェル・コマンドは種類が多く豊富です．
本章では，よく使うシェル・コマンドと，それらのコマンドを連続処理するシェル・スクリプトの作り方を紹介しましょう．

操作方法5章

基礎知識

第第1部

Linux の基礎知識と動かし方

エディタ / ブラウザ / ファイル管理…ほんとに無料なの？

第6章

ラズパイ専用Linux
Raspbianのお勧めアプリ
後閑 哲也

ターミナル

Java用

アプリの削除算術計算
日本語設定ツール

圧縮・解凍（b）②オフィス
音楽再生などe-mail（d）④アクセサリ（e）⑤設定（a）①プログラミング（c）③インターネット
図 1 ラズベリー・パイ専用 Linux Raspbian が標準装備している無料アプリケーションのいろいろ（ほかにもたくさんある）

ラズベリー・パイに Raspbian をインストールすると，図 1 に示すさまざまなアプリケーションが自動的に組み込まれます．本章では，その中からお勧めのアプリケーションを紹介します．

テキスト・エディタ● おすすめ 1 Leafpad
Raspbian が標準で備えている GUI ベースのエディタ（図 2）です．デスクトップから［Menu］−［アクセサリ］−［Text Editor］で起動できます．
GUI 対応なのでマウスで操作でき，動きも軽快です．
メニューのオプションで，フォントの種類や大きさ，行番号の付与を設定できます．日本語も入力できます．
● おすすめ 2 nano
CUI 対応の単機能なテキスト・エディタです．メニューにはありませんが，Raspbian に同梱されている

36

図 2 スクリプト作成に！ お勧めテキスト・エディタ Leafpad の起動画面（GUI 対応）

ので，いつでもコマンドで起動できます．
ターミナルで nano を起動するためには，次のようにコマンドを入力します．
sudo nano パス / ファイル名
新規のファイルを作る場合は，sudo コマンドを使う必要はありませんが，既存のファイルの多くが root

見本

第1部

Linux の基礎知識と動かし方

文法の基本から入出力制御ライブラリの使い方まで

第7章

1行リターンで即実行！
Python×ラズパイ入門
後閑 哲也
プログラムの実行ボタン

図 1 ラズベリー・パイのプ
ログラミング言語 Python の開発環境 IDLE の起動画面（a）対話式で実行

ラズベリー・パイのパイは，パイソンのパイです．というくらい，ラズベリー・パイはプログラミング言語 と し て Python を 推 奨 し て い ま す． 本 章 で は，Python 言語でラズベリー・パイを動かす方法を説明します．

Python とは● 1 行入力＆リターンで即実行！
Python はスクリプト系の言語で，「パイソン」と読みます．
シェル・コマンドと同じように，コマンドを 1 行入
力すると即実行されて結果が返ってくるプログラミン
グ言語の一つです．対話式でプログラムを動かすことができます．
Python は，もともとプログラミング言語ですから，シェル・スクリプトのように一連の複数の命令を書い40（b）ファイルを作成してから実行たファイルを作って，一気に実行することもできます．
このファイルをモジュールと呼びます．複数のモジュールをまとめたものをパッケージと呼びます．
現在，Python 2.x と Python 3.x の 2 つのバージョンが並行して使われています．文法に一部異なる部分があるため互換性はありません．ライブラリにはまだ3.x に対応していないものがあります．
● 開発環境 IDLE（Integrated DeveLopment Environment）
Python には，IDLE（アイドル）という専用の開発環境が用意されています．IDLE は，Python シェルとも呼びます．
Raspbian のデスクトップから，［Menu］−［プログラミング］−［Python 2（IDLE）］と選ぶと，IDLE が起動します（図 1）．私の日本語環境では，IDLE 上で日本語を入力できませんでした．執筆時点の最新版

見本

序章

入出力からI 2C通信まで簡単プログラミング！ ターミナルでコマンド操縦も！

Lチカ

LEDをON&OFF！
C言語×ラズパイ入門

LED

後閑 哲也
リスト 2 WiringPi を C 言語で動かすその 2
イルをコンパイルして実行プログラム・ファコンパイル実行スイッチ

ディレクトリを移動しファイルを確認

I/O制御の基本

テキスト・エディ

パワー系

リスト 1 WiringPi を C 言語で動かすその 1
タでプログラムを記述する

操作方法

8章

基礎知識

第シリアル

オブジェクト・ファイルを確認プログラムを実行！

マイコンで性能UP実行結果C 言語で動かすまでの 3 つの手順●［手順 2］gcc コンパイラでプログラムを実行形式に変換する
通常，gcc という標準的なコンパイラを使います．

ラズパイの I/O 制御用プログラム群
WiringPi で 20 行 L チカ
準備

ダウンロード，コンパイル，インストール

C 言語で書いたプログラムで，WiringPi という関数ライブラリを呼び出し，ラズベリー・パイの GPIO を制御します．WiringPi 自体も C 言語で記述されています．
WiringPiの本家のWebサイト（http://wiringpi.com/）

見本
47

I/O関数
リファレンスコンパイル前に作ったプログラムを保存したディレクトリに移動します．
ターミナル（LXTerminal）を開いてシェル・コマンドを実行します．一応，Test ディレクトリに作成したファイルが存在することを確認しています．この後，リスト 2 のようにコマンドを入力してコンパイルを実●［手順 3］プログラムを実行する
次にプログラムを実行します．
同じディレクトリに生成されたオブジェクト・ファイルを起動します．リスト 2 の下側に示すように，“./test1” と入力するだけです．これでリスト 1 の C プ
ログラムが実行されて，printf 文に記述した内容が表示されます．

製作実例集●［手順 1］テキスト・エディタでプログラムを記述
する
リスト 1 に示すように，ラズベリー・パイの標準テ
キスト・エディタを使ってプログラムを作成し，適当なディレクトリ（/home/pi/Test）に保存します．
テキスト・エディタで［ファイル］−［別名で保存］と選んで，ディレクトリを指定してファイル名（test1.
c など）を入力して保存します．

行します．コンパイル実行後に再度ディレクトリ内を確認してオブジェクト・ファイルが生成されていることを確認しています．

Web I/O Wi ーFi&HDMI

本章では，組み込みシステム開発に最もよく利用されている C 言語を使って，ラズベリー・パイの GPIOを制御します．専用ライブラリ WiringPi を利用すると，簡単で確実です．

Lチカ
LED

後閑 哲也

ボタン2ボタン3

ボタン4

WebI OPi

制御実行
状態変化Python
マクロ関数

制御実行

WebIOPi ライブラリを使えばラズベリー・パイの GPIO をネットワーク経由で動かせる

HTML や Python で I/O するならWebIOPi● ラズベリー・パイはマイコン・ライクなことができる I/O コンピュータ
第 1 部 第 7 章 図 2 に示したように，ラズベリー・パ
イは電気信号を出し入れできる 40 個の端子（GPIO ピンという）をもつコネクタを備えています．ここが，ターフェース（UART，I2C，SPI）も備えています．

● 使い方
ラズベリー・パイの GPIO は，HTML から Javascriptで書かれた WebIOPi の関数ライブラリを呼び出せば操作できます．パソコンやスマホの Web ブラウザ（リモート・デスクトップ）から，ラズベリー・パイに用意した HTML ファイルにアクセスして呼び出します．
表示されたボタンを押すと，WebIOPi 経由でラズベリー・パイのGPIOが信号を出力します．
ラズベリー・パイの GPIO に入力された信号レベル変化を Web ブラ見本
51

I/O関数
リファレンス

信号も出力されています．
IC やマイコンとデータ通信するための，定番インな流れで，ラズベリー・パイを I/O Web サーバのように動かすことができます．まさに，IoT 機器を開発するためのフレームワーク・ソフトウェアです．

製作実例集

普通のパソコンやサーバと大きく違う特徴です．マイコンとパソコンの両方のいいとこどりをした I/O コン
ピュータ・ボードです．
この GPIO ピンは，ディジタル信号を入出力できるだけでなく，“L” と “H” の 2 値のディジタル信号のパルス幅を調整することで，連続的に変化する電圧値を得ることができる PWM（Pulse Width Modulation）● WebIOPi で何ができる？
ラズベリー・パイの GPIO を動かす方法には 3 つあります．
（1）ラズベリー・パイのターミナルからコマンドを入力する（2）シェルや Python などのスクリプト言語や，C言語などのプログラムを実行する（3）WebIOPi や WiringPi などのアプリケーションを実行する
中でも，（3）の WebIOPi を使うと，図 1 に示すよう

Web I/O Wi ーFi&HDMI

それではいよいよ，Windows パソコン（リモート・デスクトップ）の Web ブラウザでラズベリー・パイの入出力ピン（GPIO）を動かしてみます．

マイコンで性能UP

図13 PICマイコン

シリアル

状態表示

HTMLスイッチ

ボタン1

I/O制御の基本

2 ラズベリー・パイ

Webブラウザ画面

パワー系

Web
1 パソコンやスマホ，タブレット

操作方法

9章

基礎知識

第LED を ON&OFF！
HTML/Python×
ラズパイ入門

序章

音声応答や動画ストリーミングをリモート操作するための第1ステップ

第 2 部 製作実習①…L チカから！ I/O 制御の基礎
序章

ブレッドボードとテスタで今すぐ！

Lチカ

初めての回路製作とLED 点灯

LED

庄野 和宏

シリアル

あらかじめ各コネクタの穴が開いている

ラズベリー・パイ 拡張ボードケース 3B/2B/B ＋用 908−4218（RS コンポーネンツ）．ハードウェアの実験では，電子部品や工具を扱う．あれこれ実験をしているうちに，これらがラズベリー・パイの基板に触れると，故障の原因となる使用します．実験中に誤ってラズベリー・パイの基板に触れると，ショートなど，故障の原因になる可能性があります．そこで写真 2 のようなケースを使用します．今回は，40 ピン拡張コネクタを使用するので，フラット・ケーブルが引き出せる形状のものを用意しました．

見本
61I/O関数リファレンス● ケース…静電気やショートなどによる故障を防ぐハードウェアを用いた実験では，電子部品や工具を写真 2 準備するもの②…静電気やショートなどによる故障を防ぐ専用ケース

製作実例集に使用する各種インターフェース信号は，ピンヘッダを使用した 40 ピン拡張コネクタに取り出されています．これらのピンは，CPU を搭載する ARM プロセッ
サ BCM2837（ブロードコム）に直接接続されています．
40 ピン拡張コネクタに外部回路を接続することで，さまざまな機能を拡張できます．

中にラズベリー・パイ本体が入る

Web I/O Wi ーFi&HDMI

GPIO/I2C/SPI/PWM を備え，LED，モータ，センサ IC，A−D/D−A コンバータなどの電子部品が使用できる．USB，HDMI，イーサネットなどのインターフェースも備えており，パソコン周辺機器も接続できるマイコンで性能UP

写真 1 準備するもの①…さまざまな電子部品をつないでハードウェア拡張できる実験用 I/O コンピュータ ラズベリー・パイ 3 モ
デル B

回路製作に使う道具一式● ラズベリー・パイ本体
写真 1 に示すラズベリー・パイ 3 モデル B を使用します．
GPIO，I2C，SPI，PWM など，ハードウェアの拡張スイッチで実際に動かし，確かめながら学習していきます．
本章では，試作に必要な基礎知識と，40 ピン拡張コネクタを出力ポートとして使う方法を説明します．

ハードウェア拡張で主に使用する40ピン拡張コネクタ

I/O制御の基本などのハードウェアを拡張できます．これらはパソ
コンの周辺機器とは異なり，ただつなげばよいというものではありません．初心者やソフトウェア出身でハードウェアが苦手な人は，Web ページで公開されている回路図をコピー＆ペーストして使用する場合もあるようです．これではトラブルが発生しても，本質的な技術を理解していないので，解決方法がわかりません．
第 2 部では，ラズベリー・パイ 3 モデル B ＋を用いて，マイコンやコンピュータの周辺回路の扱いについて，IC 内部の回路のメカニズムを交えて解説
し ま す．LED や リ レ ー， モ ー タ，LCD， セ ン サ，
A−D/D−A コンバータなどの電子部品を試作回路

1番ピン

パワー系

ラズベリー・パイは，USB，HDMI，イーサネッ
トなどパソコン用のインターフェースのほかに，GPIO やシリアル通信に使える 40 ピン拡張コネクタを備えており，センサ IC や A−D/D−A コンバータ

操作方法

1章

基礎知識

第表4

表1見本
※M版→K角K版→M角

CQ 出版社 『ラズパイで入門！ Linux I ／ O プログラミング教科書』 表 1-4 初刷
背幅19mm 4C175L EQ1 19/04/02 組M豊島 H263×W389