第1章 はじめに

Armadillo-840 および Armadillo-840m をお使いいただき、ありがとうございます。

Armadillo-840は、ルネサスエレクトロニクス製Cortex-A9プロセッサ「R-Mobile A1」、DDR3 SDRAM、フラッシュメモリを中心に、HDMI、USB 2.0 ホストポート、Ethernetポート、SDカードスロットなどを搭載し、且つ、拡張用コネクタにはUSB 2.0ホスト/デバイスインターフェース、LCDインターフェース、カメラインターフェース、SD/SDIOインターフェース、SPI、GPIOなどといった組み込みシステムに求められる機能を備える小型CPUボードです。

Armadillo-840mは、Armadillo-840の機能をそのままに、204ピンのSO-DIMM型のモジュール形状にすることで各インターフェースや基板配置をより柔軟に設計できるようにした小型CPUボードです。

Armadillo-840 および Armadillo-840m は、画面出力・表示機能に特化した組み込みプラットフォームとして利用することを想定して設計されています。ネットワークから受けたデータをFull HDでHDMIディスプレイに出力したり、QtというGUIフレームワークを使ってユーザーインターフェースを構築することができます。開発セットには、Qt Creatorという統合開発環境や開発に必要なソフトウェアが同梱されていますので、ご購入後すぐにシステム開発をスタートすることができます。

Armadillo-840mはアプリケーションソフトウェアがArmadillo-840と完全互換になるように設計されており、すでにArmadillo-840用にソフトウェア開発をされている場合でも無駄にすることがありません。

以降、本書では他のArmadilloブランド製品にも共通する記述については、製品名をArmadilloと表記します。

また、Armadillo-840 および Armadillo-840m 両者に共通する記述については、製品名を Armadillo-840 と表記します。

1.1. 本書で必要となる知識と想定する読者

本書は、Armadillo-840を使って組み込み機器を開発するエンジニアを想定して書かれています。また、「Armadillo と Linuxの組み合わせで、どのようなことが実現可能なのか」を知りたいと考えている設計者・企画者も対象としています。Armadilloは組み込みプラットフォームですので、標準で有効になっている機能以外にも様々な機能を実現することができます。

ソフトウェアエンジニア

CやC++がある程度書けるエンジニアを想定しています。また、Linuxのコンソールでコマンドを入力し、結果を得ることができることを想定しています。

ハードウェアエンジニア

電子工学の基礎をもったエンジニアを想定しています。回路図や部品表を理解できることを想定しています。

1.2. 本書で扱うこと扱わないこと

1.2.1. 扱うこと

本書では、Armadillo-840に関するソフトウェアとハードウェアの情報を扱っています。組み込み機器の開発時にはハードウェアとソフトウェアが密に関連することが多いため、このマニュアルには両方の情報を合せて記載しました。Armadillo-840をご利用いただく時の注意事項から、購入時のソフトウェアの状態、動作を確認する手順、設定の変更方法や保存方法、デフォルトで対応しているデバイスやデバイスドライバの情報、起動処理、ソフトウェアのビルド環境構築方法やビルドの方法、基本的な開発方法などを記載しています。Linuxが初めての方でも、できるかぎり Armadilloの操作ができるように、コマンド例も記載してます。

また、Armadillo-840は組み込みプラットフォームであり、最終製品に組み込まれることを前提としています。そのため、Armadillo-840を組み込むために必要な、インターフェイスの電気的仕様やサイズ、電源やリセット回路の構成、絶対定格や推奨動作条件、基板形状などを扱っています。

さらに、Armadilloサイトやユーザーズサイトなど、Armadilloに関する情報提供サイトについても扱っています。

1.2.2. 扱わないこと

本書では、一般的な Linux のプログラミング、ツール、デバッグ方法、Qtやその他フレームワークのAPIなど、一般的な情報や、すでに詳しい書籍があるものは扱いません。また、(Armadilloが組み込まれる)最終製品に固有な情報・知識も含まれていません。

Armadilloを使った製品化までの一連の開発方法についてもこのマニュアルでは扱いません。こちらに関しては、「実践ガイド」を参照してください。

1.3. ユーザー限定コンテンツ

Armadillo-840には、ご購入ユーザーに限定して公開しているソフトウェアやハードウェア情報があります。限定コンテンツを取得するには、22章ユーザー登録を参照してください。

1.4. 本書および関連ファイルのバージョンについて

本書を含めた関連マニュアル、ソースファイルやイメージファイルなどの関連ファイルは最新版を使用することをおすすめいたします。本書を読み始める前に、Armadilloサイトで最新版の情報をご確認ください。

1.5. 本書の構成

本書には、ご利用にあたっての注意事項や、ご購入時のソフトウェアの状態、ハードウェア・ソフトウェアをカスタマイズする場合に必要な情報などが記載されています。

◆ はじめにお読みください。

1章はじめに2章注意事項

◆ Armadillo-840の仕様を紹介します。

3章製品概要

◆ 工場出荷状態のソフトウェアの使い方や、動作を確認する方法を紹介します。

4章Armadilloの電源を入れる前に5章起動と終了6章動作確認方法7章コンフィグ領域 − 設定ファイルの保存領域

◆ 工場出荷状態のソフトウェア仕様について紹介します。

8章Linuxカーネル仕様9章ユーザーランド仕様10章ブートローダー仕様

◆ システム開発に必要な情報を紹介します。

11章ビルド手順12章フラッシュメモリの書き換え方法13章開発の基本的な流れ14章Qt - GUIフレームワーク15章AVコーデックミドルウェア16章SDブートの活用17章JTAG ICEを利用する

◆ ハードウェアをカスタマイズする場合に必要な情報を紹介します。

18章ハードウェア仕様19章基板形状図20章オプション品

◆ ソフトウェアのカスタマイズ方法や、様々な機能の使用方法を紹介します。

21章Howto

◆ ご購入ユーザーに限定して公開している情報の紹介やユーザー登録について紹介します。

22章ユーザー登録

1.6. 表記について

1.6.1. フォント

本書では以下のような意味でフォントを使いわけています。

表1.1 使用しているフォント

フォント例説明
本文中のフォント本文
[PC ~]$ lsプロンプトとユーザ入力文字列
text編集する文字列や出力される文字列。またはコメント

1.6.2. コマンド入力例

本書に記載されているコマンドの入力例は、表示されているプロンプトによって、それぞれに対応した実行環境を想定して書かれています。「/」の部分はカレントディレクトリによって異なります。各ユーザのホームディレクトリは「~」で表わします。

表1.2 表示プロンプトと実行環境の関係

プロンプトコマンドの実行環境
[PC /]#作業用PC上のrootユーザで実行
[PC /]$作業用PC上の一般ユーザで実行
[armadillo /]#Armadillo上のrootユーザで実行
[armadillo /]$Armadillo上の一般ユーザで実行
hermit>Armadillo上の保守モードで実行

コマンド中で、変更の可能性のあるものや、環境により異なるものに関しては以下のように表記します。適時読み替えて入力してください。

表1.3 コマンド入力例での省略表記

表記説明
[version]ファイルのバージョン番号

1.6.3. アイコン

本書では以下のようにアイコンを使用しています。

[警告]

注意事項を記載します。

[ティップ]

役に立つ情報を記載します。

1.7. 謝辞

Armadilloで使用しているソフトウェアの多くは Free Software / Open Source Softwareで構成されています。Free Software / Open Source Softwareは世界中の多くの開発者の成果によってなりたっています。この場を借りて感謝の意を表します。