CONPROSYS Linux SDK ユーザーズマニュアル

CONPROSYS
CONPROSYS Linux SDK
ユーザーズマニュアル
目
次
1. はじめに .......................................................................................................................................... 1
1-1. 概要 ............................................................................................................................................... 1
1-2. 対応する CONPROSYS 製品一覧.......................................................................................................... 1
1-3. ソフトウェア使用許諾契約書.......................................................................................................... 2
2. 開発環境 .......................................................................................................................................... 4
2-1. 開発に必要なもの........................................................................................................................... 4
2-2. SDK スペック .................................................................................................................................. 4
2-3. SDK 内容 ......................................................................................................................................... 4
2-4. 開発環境構成 ................................................................................................................................. 5
2-5. SDK のインストール ........................................................................................................................ 6
2-5-1. SDK に必要なツールチェーンのインストール ................................................................................... 6
2-5-2. CONPROSYS linux SDK のインストール.............................................................................................. 7
3. ビルド ........................................................................................................................................... 10
3-1. ビルドの初期設定......................................................................................................................... 10
3-2. ビルド前の環境設定 .................................................................................................................... 12
3-3. ターゲットの bootloader のビルド ............................................................................................... 13
3-3-1. SD カード起動用のビルド ............................................................................................................... 13
3-3-2. 内蔵 NOR FLASH 起動用のビルド ..................................................................................................... 13
3-4. ターゲットの kernel のビルド ...................................................................................................... 14
3-5. ターゲットのサンプルドライバのビルド....................................................................................... 15
3-6. ターゲットのサンプルライブラリのビルド ................................................................................... 16
3-7. ターゲットのサンプルアプリケーションのビルド ......................................................................... 17
3-8. 軽量版 rootfs のビルド ................................................................................................................ 19
3-9. 内蔵 NOR FLASH 起動用 ramdisk.xz のビルド ................................................................................. 19
4. ターゲットの FIRMWARE 書き込み方法 ............................................................................................. 20
4-1. SD 起動用 SD カードの作成 ............................................................................................................ 20
4-2. 内蔵 NOR FLASH 起動用のインストール SD カードの作成 ............................................................... 22
4-2-1. 内蔵 NOR FLASH 起動用インストールするための rootfs セクションを作成 .................................... 22
4-2-2. 内蔵 NOR FLASH インストール用 rootfs セクションへのコピー...................................................... 23
4-2-3. 内蔵 NOR FLASH インストール用 SD カードの作成 ........................................................................... 24
4-3. 内蔵 NOR FLASH へのインストール ................................................................................................. 26
5. ターゲット動作確認 ....................................................................................................................... 27
5-1. ターゲット起動方法 ..................................................................................................................... 27
5-1-1. SD カードからの起動 ...................................................................................................................... 27
5-1-2. 内蔵 NOR FLASH から起動 ................................................................................................................ 27
5-2. シリアルケーブル接続によるログイン .......................................................................................... 28
5-3. ssh 接続によるログイン ............................................................................................................... 28
5-4. ターゲットの起動シーケンス........................................................................................................ 29
5-5. ターゲットのネットワーク設定 .................................................................................................... 30
5-6. ドライバソフトの起動方法 ........................................................................................................... 31
5-7. 3G モデルの設定について(日本モデルのみ) ............................................................................... 31
6. APPENDIX ........................................................................................................................................ 32
A. ブロック図 ...................................................................................................................................... 32
B. デバイス I/F .................................................................................................................................... 34
C. FPGA I/O マップ............................................................................................................................... 39
D. 内蔵 NOR FLASH メモリマップ ........................................................................................................... 48
E. LED 制御 .......................................................................................................................................... 49
F. DIP Switch / Switch ....................................................................................................................... 50
G. ターゲット搭載アプリケーション .................................................................................................... 51
1. はじめに
1-1. 概要
CONPROSYS Linux SDK(Software Development Kit) は、CONPROSYS 上で動作するモジュールの生成するため
のソフトウェア開発環境を目的とします。
本 SDK は、次の範囲になります。
- CONPROSYS が動作するソフトウェアを生成するための開発用ホスト PC 上のツール
(ソースコード(kernel, ライブラリ、ドライバ等)やビルドスクリプト等)
- CONPROSYS のソフトウェアを SD カードに書込むための開発用ホスト PC 上のツール
- CONPROSYS 上のソフトウェア動作をモニタするためのツール
(シリアルコンソール等)
図 1. SDK 範囲(SCOPE)
1-2. 対応する CONPROSYS 製品一覧
本 SDK に対応する製品は次に示します。
コンパクトタイプ:
CPS-MC341-ADSCx シリーズ
CPS-MC341-Ax シリーズ
CPS-MC341-DSx シリーズ
CPS-MC341G-ADSCx シリーズ(日本モデルのみ)
スタックタイプ:
CPS-MCS341-DSx シリーズ
-1-
1-3. ソフトウェア使用許諾契約書
本契約は、お客様と株式会社コンテック(以下「当社」といいます。
)との間で、本製品に含まれるソフトウ
ェアプログラム(以下「本ソフトウェア」といいます。)の使用許諾に関して合意するものです。本ソフトウェ
アを使用、又は本ソフトウェアをインストールした機器を使用することによって、お客様は本契約の各条項に
同意されたものとさせていただきます。このお客様の同意をもって、本契約は成立し、効力を生じます。本契
約に同意されない場合、本ソフトウェアの使用、又は本ソフトウェアをインストールした機器を使用すること
はできません。
第1条(知的財産権)
本ソフトウェア及びマニュアル等付属するドキュメント並びにその複製物(以下「本ソフトウェア等」とい
います。)の著作権、特許権その他知的財産権は当社もしくは正当な権利者が所有するものであり、お客様に
は、本契約書において明示的に許諾されたものを除き、何らの権利も発生しません。
第 2 条(使用許諾)
1. 当社は、お客様に対し、本ソフトウェアに対応する当社ハードウェア製品を使用する目的で、本ソフトウ
ェアをインストール及び使用する非独占的な権利を許諾します。
2. お客様は、緊急時のバックアップの目的でのみ、本ソフトウェアを使用する上で最低限必要な本数に限
り、本ソフトウェアを複製することができます。但し、複製物には、当社が提供する、本ソフトウェアに
ついての諸権利に関する表示を添付するものとします。
3. お客様は、当社がライブラリとして提供するソフトウェアをお客様の作成するソフトウェアに組み込む
ことができます。
第 3 条(利用の制限)
お客様は、次の各号に定める行為を行わないとします。
(1)本契約に定める場合以外の本ソフトウェアから派生するソフトウェアの制作
(2)本契約に定める場合以外の本ソフトウェアの複製
(3)本ソフトウェアの改変、翻案、逆コンパイル、逆アセンブル、リバース・エンジニアリング
(4)本ソフトウェア上の権限の表示や商標の削除又は変更
第 4 条(免責)
1. 当社は本ソフトウェアに関しいかなる保証もいたしません。
2. 本ソフトウェアをダウンロード、インストール、使用又は利用した結果、ハードウェア又はデータに支障
が生じた場合等、本ソフトウェアに起因し又は関連して損害が発生した場合であっても、当社は一切責任
を負いません。本ソフトウェアを複製し、組み込み又は改変したソフトウェア及びこれらを使用又は利用
して作成されたソフトウェアについても同様とします。
第 5 条(譲渡)
1. お客様は、次の各号に定める条件を全て満たした場合に限り、本ソフトウェア及び本契約において許諾さ
れたお客様の権利を第三者に対し、譲渡することができます。
(1)本契約書と共に本ソフトウェア等を全て当該第三者に譲渡すること
(2)本ソフトウェアがダウンロードされた当社のハードウェア製品の全てを当該第三者に譲渡すること
(3)譲渡を受ける方が本契約の条件に同意すること
2. 前項の規定によって本ソフトウェア及び権利の譲渡がなされた場合には、譲渡を受けた方は、譲渡を受け
たときからこの契約に拘束されるものとします。
第 6 条(契約の解除)
1. お客様が本契約の各条項に従わなかった場合、当社は、お客様に対し、何らの通知・催告を行うことなく
直ちに本契約を終了させることができます。
-2-
2. 本契約の終了と同時に、お客様に与えられていた使用許諾は全て失われます。直ちに本ソフトウェアの一
切の使用を中止し、本ソフトウェアをアンインストールし、全ての複製物を破棄するものとします。
第 7 条(物理的欠陥について)
1. 本ソフトウェア等が格納されている記録媒体に本ソフトウェア等の使用に支障をきたす物理的欠陥があ
った場合、当社は、お客様が本ソフトウェア等をお受け取りになった日から 30 日以内にご購入いただい
た販売店を通して記録媒体を交換するものとします。
第 8 条(ソフトウェアプログラムに関する情報)
1. 本ソフトウェアに関する各種情報やアップデートプログラムは、当社ウェブサイトで提供するものとし
ます。
2. 前項の情報やアップデートプログラムは、本契約に基づきお客様に対して許諾されます。お客様は、必要
に応じて独自の判断でこれらの情報やアップデートプログラムを、使用することができますが、その場合
には、その情報やアップデートプログラムについても本契約の条項を遵守しなければなりません。
第 9 条(輸出規制)
1. 本ソフトウェア等を外国に持ち出す場合には、お客様は日本国外国為替及び外国貿易法、米国輸出管理法
及びその他の国の法令を遵守しなければなりません。
2. お客様は、本ソフトウェア等を核兵器、生物化学兵器の設計、開発、製造若しくはミサイルの設計、開発、
製造に使用するおそれがある個人又は法人に譲渡、輸出又は再輸出してはいけません。
3. 次の各号で定める国、地域、個人又は法人に、本ソフトウェア等を譲渡、輸出、再輸出してはいけません。
(1) キューバ、イラン、イラク、リビア、北朝鮮
(2) 輸出貿易管理令に基づく「外国ユーザーリスト」又は、米国商務省の「Denied Persons List」に記載
されている個人又は法人
(3) 日本国政府、米国政府、その他関係国の政府により指定された国、地域、個人又は法人
第 10 条(準拠法)
1. 本契約は日本国法に従い理解、解釈されるものとします。
第 11 条(管轄の合意)
1. 本契約ないし本ソフトウェアに関して紛争が生じ、訴訟提起等の法的手続きが必要となった場合には、大
阪簡易裁判所ないし大阪地方裁判所をもって、第1審の専属的合意裁判所とします。
第 12 条(契約の分離)
1. 本契約の一部の条項が無効とされ又は法的強制力を失ったとしても、その他の条項には影響を与えるこ
とはなく、各条項は有効であり、法により許された範囲内で法的強制力を有するものとします。
-3-
2. 開発環境
2-1. 開発に必要なもの
開発用ホスト PC (linux)
SD カード (2Gbyte 以上)
シリアルモニタ用ケーブル (推奨ケーブル: FTDI 製
TTL-232R-3V3 AJ)
LAN Cable
2-2. SDK スペック
開発用ホスト PC
Linux Distribution:
Ubuntu 14.04 (32bit/64bit 版)
32Gbyte 以上の空き容量必要
sudo の実行出来る管理者権限ユーザー
ターゲット Kernel version:
3.2.0
ターゲット Distribution:
arm 版 Ubuntu 10.04 (SD ブート用のみ)
クロスコンパイル GCC version:
gcc 4.7.3
必要な Linux toolchain:
apt, gcc-arm-linux-gnueabi, libncurses5-dev, gawk, u-boot-tools, openssh-server, samba,
nfs-kernel-server, binutils-arm-linux-gnueabi, tftpd, xinetd
※上記は本 SDK を動作させるための必要なものを示しています。
各々の開発環境で他に必要なパッケージがあれば、別途入手しインストールしてください。
(例: git, wget, subversion 等)
2-3. SDK 内容
- SDK ドキュメント
- クロスコンパイラ/ツールチェーン
パッケージ(Debian/Ubuntu 用)
:
gcc-arm-linux-gnueabi, libncurses5-dev, gawk, u-boot-tools, openssh-server, samba, nfskernel-server, binutils-arm-linux-gnueabi, tftpd, xinetd
- ビルドツール
- ソースコード
u-boot, kernel, サンプルアプリケーション, サンプルライブラリ, サンプルドライバ
- CONPROSYS 製品毎のベースモジュール(u-boot, kernel, 設定等)
- CONPROSYS シリアルモニタ用ケーブル
- SD Card 2GByte
-4-
2-4. 開発環境構成
ホスト PC(ビルド、モニター用)とターゲットの構成例を次に示します。
例 1) 開発ホスト PC1台でビルドとターゲットにシリアルモニタを使用する場合
図 2. Linux PC1台でビルドおよびシリアルモニタリングする場合
例 2) 開発ホスト PC でビルド(またはソースコード編集)、ターゲットにシリアルモニタを別の Windows
PC の2台で使用する場合
図 3. ビルド用に Linux PC1台、シリアルモニタリング用に Windows PC を使う場合
例 3) Windows OS 等に仮想 OS システム(VM Ware, Virtual BOX 等)を入れて、その上で Linux OS をイ
ンストールし開発ホスト PC として使用する場合
図 4. 1台の PC でビルド用に Linux(VM Ware 利用)、 シリアルモニタリング用に Windows を使う場合
-5-
2-5. SDK のインストール
ダウンロード版または DVD 版を次のように準備します。
ダウンロード版(tgz ファイル)の場合:
1) ダウンロードした.tgz ファイルを展開します。
tar xvfz CPS_SDK_installer_xxxx.tgz[–C 展開先ディレクトリ]
2) 展開先のディレクトリに移ります。
※展開先がカレントの場合は必要ありません。
ダウンロード版(iso ファイル)の場合:
1) ダウンロードした.iso ファイルをマウントします。
マウント先ディレクトリは任意で作成してください。
sudo -E mount –o loop CPSSDK_xxxx.iso マウント先ディレクトリ
2) マウント先のディレクトリに移ります。
DVD 版の場合:
1) DVD メディアをホスト PC に挿入します。
2) 挿入したメディアは自動マウントされるので、そのマウント先のディレクトリに移ります。
2-5-1. SDK に必要なツールチェーンのインストール
[ホスト PC がインターネット接続可能の時]
ubuntu の OS 上で次のツールチェーンを apt-get コマンドによってインストールします。
gcc-arm-linux-gnueabi, libncurses5-dev, gawk, u-boot-tools, openssh-server, samba, nfskernel-server, binutils-arm-linux-gnueabi, tftpd, xinetd
ツールチェーンをインストールする前に、apt-get のパッケージリストを更新してください。
apt-get のパッケージリスト更新コマンド:
sudo apt-get update
インストールコマンド:
sudo apt-get install gcc-arm-linux-gnueabi libncurses5-dev gawk u-boot-tools \
openssh-server samba nfs-kernel-server binutils-arm-linux-gnueabi tftpd xinetd
-6-
[ホスト PC がインターネット接続出来ない時]
CONPROSYS linux SDK には必要なツールチェーンのパッケージを用意しています。[Toolchain]のディレク
トリに移り、toolchain_pkginstall.sh を実行してください。
(「2-5-2. CONPROSYS linux SDK のインスト
ール」で説明する./install_sdk.sh でもインストールできます。)
コマンド:
cd Toolchain
sudo .toolchain_pkginstall.sh
cd ..
2-5-2. CONPROSYS linux SDK のインストール
次のコマンドで SDK のインストールを開始します。
コマンド:
./install_sdk.sh [–C インストール先ディレクトリ] [-t]
オプション:
-C インストール先ディレクトリ
指定されるインストール先ディレクトリを生成し、そのディレクトリ下にインストールしま
す。
-t
SDK に必要なクロスコンパイラ等のツールチェーンをインストールします。
このオプションを指定した場合、ツールチェーンを開発ホスト PC へインストールするため、
管理者パスワードを要求されます。
※インストール先ディレクトリが指定されない場合は、カレントディレクトリ下に”CPS_SDK”というデ
ィレクトリを自動生成され、そのディレクトリにインストールされます。iso ファイルをマウントした
場合や DVD メディアの場合、カレントディレクトリ下にディレクトリは生成出来ませんので、必ずイ
ンストール先ディレクトリを指定してください。
※インストール先ディレクトリは、ログインユーザーの home ディレクトリ下を推奨します。
コマンド例:
./install_sdk.sh -C ~/CPS_SDK
インストール後のディレクトリ構成は次のようになります。
-7-
~/
|
+-- [CPS_SDK]
|
+-- [Document]
|
+-- [application]
|
+-- [base]
|
+-- [driver]
|
+-- [kernel]
|
+-- [lib]
|
+-- [ramdisk]
|
+-- [rootfs]
|
+-- [tools]
|
+-- [u-boot]
|
+-- [target]
ドキュメント
アプリケーションソースディレクトリ
デフォルトファイル格納ディレクトリ
ドライバソースディレクトリ
kernel ソースディレクトリ
ライブラリソースディレクトリ
ramdisk(NOR Flash 用)作成ディレクトリ
rootfs ソースディレクトリ
ツール群
u-boot ソースディレクトリ
Target ディレクトリ
図 5. インストール後のディレクトリ構成図
[Document]
SDK のドキュメントファイルを格納しているディレクトリです。
[application]
アプリケーションのソースコードを格納しているディレクトリです。
[base]
target のベースとなる boot セクションと rootfs セクションを格納しているディレクトリで
す。
[tools]
SDK のツール群です。
[driver]
ドライバのソースコードを格納しているディレクトリです。
[kernel]
kernel のソースコードを格納しているディレクトリです。
[lib]
ライブラリのソースコードを格納しているディレクトリです。
[ramdisk]
NOR Flash にインストールする rootfs をパッケージした ramdisk を生成するディレクトリで
す。
[rootfs]
内蔵 NOR Flash ブート用等に使用する軽量版 rootfs(root file system)のソースコードを格納
しているディレクトリです。
-8-
[u-boot]
u-boot のソースコードを格納するディレクトリです。
[target]
CONPROSYS の製品毎に SD 起動させるためのセクションを生成するディレクトリです。
configure.sh 実行後、ターゲット用のディレクトリを生成し、ビルドしたモジュール(boot,
kernel, driver, application)の格納先になります。
-9-
3. ビルド
3-1. ビルドの初期設定
SDK インストール先ディレクトリ下で./configure.sh を実行しビルドを行うための初期設定を行います。こ
のコマンドを実行することによって次の環境ファイルとディレクトリを生成します。このコマンドは新規で
ターゲット向けのモジュールを生成する時のみでよいです。
-
ビルドするための環境設定ファイル(sdkenv.txt)
-
kernel の.config ファイル
-
target ディレクトリ下に機器に応じた SD カードに書込むための Ubuntu10.04 ファイルシステム
(“boot”セクション, “rootfs”セクション)
コマンド:
./configure.sh {-m TARGET_MACHINE_NAME -t BASE_TARGET_CONFIG}
※途中 root 権限のコマンドを実行するために、パスワードを要求されることがあります。
パスワードを入力して処理の実行を進めてください。
オプション:
-e
環境設定ファイル sdkenv.txt のみを作成します。
-m TARGET_NAME
target の下に TARGET_NAME で指定される出力先のディレクトリ名が設定されます。
指定しない場合はプロダクト名が指定されます。
-t BASE_TARGET_CONFIG
次の BASE_TARGET_CONFIG を指定することによってコンフィグレーションを行います。
指定しない場合はコマンド実行後、プロダクト名の問い合わせメニューによる入力になりま
す。
BASE_TARGET_CONFIG:
[コンパクトタイプ]
CPS-MC341-ADSCX.2lan
CPS-MC341-ADSCx シリーズ 2 LAN type
CPS-MC341-ADSCX.1lan
CPS-MC341-ADSCx シリーズ 1 LAN (Hub Mode) type
CPS-MC341-AX.2lan
CPS-MC341-Ax シリーズ 2 LAN type
CPS-MC341-AX.1lan
CPS-MC341-Ax シリーズ 1 LAN (Hub Mode) type
CPS-MC341-DSX.2lan
CPS-MC341-DSx シリーズ 2 LAN type
CPS-MC341-DSX.1lan
CPS-MC341-DSx シリーズ 1 LAN (Hub Mode) type
CPS-MC341G-ADSCX.2lan
CPS-MC341G-ADSCx シリーズ 2 LAN type
CPS-MC341G-ADSCX.1lan
CPS-MC341G-ADSCx シリーズ 1 LAN (Hub Mode) type
[スタックタイプ]
CPS-MCS341-DSX.2lan
CPS-MCS341-DSx シリーズ 2 LAN type
CPS-MCS341-DSX.1lan
CPS-MCS341-DSx シリーズ 1 LAN (Hub Mode) type
- 10 -
configure.sh の実行後、target ディレクトリ下に target 用のディレクトリとベースとなる boot セクショ
ンと Ubuntu 10.04 の rootfs セクションのディレクトリ/ファイルを生成します。次の構成図は、CPS-MC341ADSC シリーズ 2 LAN type を指定した場合のディレクトリ例です。
~/
|
+-- [CPS_SDK]
|
+-- [target]
+-- [CPS-MC341-ADSCX.2lan]
+-- [boot]
|
+-- MLO
|
+-- u-boot.img
|
+-- uEnv.txt
|
+-- uImage
+-- [Ubuntu10.04]
+-- [bin]
+-- [boot]
+-- [dev]
+-- [etc]
+-- [home]
+-- [lib]
+-- [media]
+-- [mnt]
+-- [opt]
+-- [proc]
+-- [root]
+-- [sbin]
+-- [selinux]
+-- [srv]
+-- [sys]
+-- [tmp]
+-- [usr]
+-- [var]
図 6. target 以下のディレクトリ構成図
- 11 -
Target ディレクトリ
CPS-MC341-ADSC(2LAN タイプ)用ディレクトリ
boot セクション
rootfs セクション (SD カード用)
3-2.
ビルド前の環境設定
アプリケーションやカーネル等をビルドする前に SDK インストール先ディレクトリ下で./configure.sh に
よって生成された sdkenv.txt でビルドするための環境変数を設定してください。
コマンド:
source sdkenv.txt
この環境変数の設定が行われていなければ、この項以降に説明するビルドや Firmware 書き込み方法等の操
作が正常に行えないことがありますのでご注意ください。
- 12 -
3-3. ターゲットの bootloader のビルド
bootloader のビルドは u-boot のディレクトリで行うことができます。
u-boot は SD カード起動用と内蔵 NOR FLASH 起動用の2種類があります。
3-3-1. SD カード起動用のビルド
カレント移動コマンド:
cd $CPS_SDK_ROOTDIR/u-boot
ビルドコマンド:
make am335x_evm
ビルドして生成されたモジュール(MLO, u-boot.img)は、次のコマンドでターゲット向けの boot ディレクト
リにコピーします。
コマンド:
cp -p MLO u-boot.img ${CPS_SDK_INSTALL_FULLDIR}/boot
ビルド時に生成されたオブジェクトファイル等を削除したい場合は次のコマンドを実行します。
コマンド:
make distclean
3-3-2. 内蔵 NOR FLASH 起動用のビルド
内蔵 NOR FLASH から起動する bootloader モジュールは、SD カードで起動する bootloader モジュールと
異なります。この bootloader モジュールは、次の方法でビルドします。
カレント移動コマンド:
cd $CPS_SDK_ROOTDIR/u-boot
ビルドコマンド:
make am335x_evm_spiboot
ビルドして生成されたモジュール(MLO.byteswap, u-boot.img)は、内蔵 NOR FLASH インストール用の
rootfs(/InstallToMTD)へコピーします。
※内蔵 NOR FLASH インストール用の rootfs の作成方法は「4-2-1. 内蔵 NOR FLASH 起動用インストールす
るための rootfs セクションを作成」を参照ください。
コマンド:
cp -p MLO.byteswap u-boot.img ${CPS_SDK_INSTALL_FULLDIR}/InstallerForFlash/InstallToMTD
- 13 -
3-4. ターゲットの kernel のビルド
kernel のコンフィグレーション/ビルドは kernel のディレクトリで行うことができます。
カレント移動コマンド:
cd $CPS_SDK_ROOTDIR/kernel
コンフィグレーションコマンド:
make menuconfig
ビルドコマンド:
make uImage
ビルドして生成されたモジュール(uImage)は、次のコマンドでターゲット向けの boot ディレクトリにコピ
ーします。
コマンド:
cp -p arch/arm/boot/uImage ${CPS_SDK_INSTALL_FULLDIR}/boot
カーネルビルド後、ドライバモジュールをビルドし、次のコマンド例ではターゲット向け
rootfs“Ubuntu10.04”ディレクトリへコピーします。
ビルドコマンド:
make modules
インストールコマンド例:
sudo -E make modules_install INSTALL_MOD_PATH=${CPS_SDK_INSTALL_FULLDIR}/Ubuntu10.04/
※ドライバモジュールは Ubuntu10.04 下の次のディレクトリにインストールされます。
lib/modules/3.2.0.CONPROSYS/
もし、他の rootfs ディレクトリへインストールする場合は INSTALL_MOD_PATH の内容を変更してください。
ビルド時に生成されたオブジェクトファイル等を削除したい場合は次のコマンドを実行します。
コマンド:
make clean
※make distclean や make mrproper を実行した場合、.config ファイルも削除されるのでご注意くださ
い。
- 14 -
3-5. ターゲットのサンプルドライバのビルド
SDK には次のドライバソースコードを driver 付属しています。
-
cps-driver
(CPS-MCS341 用システムドライバ)
-
cpsaio
(CPS-MCS341 用 AIO ドライバ)
-
cpsdio
(CPS-MCS341 用 DIO ドライバ)
-
8250_cpscom
(CPS-MCS341 用 COM ドライバ)
-
cpsssi
(CPS-MCS341 用 SSI ドライバ)
-
cps_iolib
(CPS-MCS341 用 IO 汎用アクセスドライバ)
ドライバをビルドするには kernel のビルド結果のソースコードが必要なため、事前に kernel のビルドを実
施してください。
(「3-4. ターゲットの kernel のビルド」
:参照)
各々のディレクトリ下で、下記コマンドでビルドできます。
コマンド:
make
ドライバビルド後、次のコマンド例ではターゲット向け Ubuntu10.04 ディレクトリにコピーします。
コマンド例:
sudo -E make modules_install INSTALL_MOD_PATH=${CPS_SDK_INSTALL_FULLDIR}/Ubuntu10.04
※ドライバモジュールはターゲットの rootfs 下の次のディレクトリにインストールされます。
lib/modules/3.2.0.CONPROSYS/extra
もし、他の rootfs ディレクトリへインストールする場合は TARGET_ROOTFS の内容を変更してください。
注意)付属のドライバソフトは全製品に対応していません。
対応機器をご確認の上、組み込んでください。
- 15 -
3-6. ターゲットのサンプルライブラリのビルド
SDK には下記の共有ライブラリ(shared object)のソースコードを付属しています。
-
libCpsAio
(CPS-MCS341 用 AIO ライブラリ)
-
libCpsDio
(CPS-MCS341 用 DIO ライブラリ)
-
libCpsSsi
(CPS-MCS341 用 SSI ライブラリ)
ドライバビルド後、次のコマンドでターゲット向け rootfs ディレクトリにコピーします。
コマンド:
sudo –E make install TARGET_ROOTFS=${CPS_SDK_INSTALL_FULLDIR}/Ubuntu10.04
※ライブラリモジュールはターゲットの rootfs 下の次のディレクトリにインストールされます。
usr/local/lib
もし、他の rootfs ディレクトリへインストールする場合は TARGET_ROOTFS の内容を変更してください。
ライブラリを作成する場合、makefile やソースコードをご参考ください。
注意 1)付属のライブラリソフトは全製品に対応していません。
対応機器をご確認の上、組み込んでください。
注意 2)付属の各々のサンプルライブラリソフトは付属のドライバソフトが必要になります。
下記の依存関係を参考に組み込んでください。
libCpsAio.so ---- cpsaio.ko ---- cps-driver.ko
libCpsDio.so ---- cpsdio.ko ---- cps-driver.ko
libCpsSsi.so ---- cpsssi.ko ---- cps-driver.ko
- 16 -
3-7. ターゲットのサンプルアプリケーションのビルド
SDK にはサンプルのアプリケーションソースコードを付属しています。
-
TCP/IP サーバ/クライアントサンプルプログラム
ディレクトリ:application/sample/socket
-
タイマーサンプルプログラム
ディレクトリ:application/sample/timer
-
CAN 送信/受信テストプログラム
(CPS-MC341-Ax/DSx CAN 搭載シリーズ用)
ディレクトリ:application/sample/can
-
RS-485 通信サンプルプログラム
(CPS-MC341-ADSCx/DSx RS-485 搭載シリーズ用)
ディレクトリ:application/sample/RS485
-
DI/DO, AI 制御サンプルプログラム
(CPS-MC341-ADSCx シリーズ用)
ディレクトリ:application/sample/mc341_io
-
http 制御(DIO)サンプル
(CPS-MC341-DSx シリーズ用)
ディレクトリ:application/sample/http_post
-
AI/AO 制御サンプルプログラム
(CPS-MC341-Ax シリーズ用)
ディレクトリ:application/sample/mc341-ax_aio
-
AI/AO 制御サンプルプログラム
(CPS-MCS341-DSx シリーズ用)
ディレクトリ:application/sample/mcs341_aio
必要なドライバ/ライブラリ:
libCpsAio.so, cpsaio.ko, cps-driver.ko
-
DI/DO 制御サンプルプログラム
(CPS-MCS341-DSx シリーズ用)
ディレクトリ:application/sample/mcs341_dio
必要なドライバ/ライブラリ:
libCpsDio.so, cpsdio.ko, cps-driver.ko
-
SSI 制御サンプルプログラム
(CPS-MCS341-DSx シリーズ用)
ディレクトリ:application/sample/mcs341_ssi
必要なドライバ/ライブラリ:
libCpsSsi.so, libm.so, cpsssi.ko, cps-driver.ko
- 17 -
-
COM 制御サンプルプログラム
(CPS-MCS341-DSx シリーズ用)
ディレクトリ:application/sample/mcs341_com
必要なドライバ/ライブラリ:
8250_cpscom.ko, cps-driver.ko
-
iolib 制御サンプルプログラム
(CPS-MCS341-DSx シリーズ用)
ディレクトリ:application/sample/mcs341_iolib
必要なドライバ/ライブラリ:
8250_cpscom.ko, cps-iolib.ko
これらのサンプルアプリケーションは全ての CONPROSYS 製品に対応していません。
対応機器であってもデバイスポート等の違いにより、動作しないプログラムもありますのでプログラムを確
認の上、ビルドしテストしてください。
また、必要なドライバ/ライブラリがあるサンプルソフトのビルドについて、事前にそれらのドライバ/ライ
ブラリをビルドしてからサンプルアプリケーションのビルドをしてください。
デバイスポートについては、「Appendix B. デバイス I/F」を参照ください。
アプリケーションソフトを作成する場合、これらの makefile やソースコードを参考ください。
- 18 -
3-8. 軽量版 rootfs のビルド
本 SDK は、内蔵 NOR FLASH など小容量の起動デバイス用にコンパクトに纏まった軽量版 linux の rootfs の
ソースコードを添付しています。その rootfs の内容は次のものになります。
busybox, glibc, dropbear (軽量版 SSH サーバ/クライアント)
rootfs のディレクトリ下でビルドすることができます。
カレント移動コマンド:
cd $CPS_SDK_ROOTDIR/rootfs
ビルドコマンド:
make
次のコマンドで rootfs のファイルシステムを ramdisk/export のディレクトリ下に作成できます。
コマンド:
make install
また、Makefile 内の環境変数 EXPORTDIR に指定したディレクトリを与えることによって、そのディレクト
リ下に構築することも可能です。
コマンド例: ターゲットディレクトリ下に rootfs を構築したい場合
make install EXPORTDIR=${CPS_SDK_INSTALL_FULLDIR}/rootfs
3-9. 内蔵 NOR FLASH 起動用 ramdisk.xz のビルド
内蔵 NOR FLASH の rootfs は ramdisk.xz というファイルに圧縮されて格納されています。
軽量版 rootfs のビルドが正常に完了していると、その rootfs より次のコマンドで ramdisk.xz を生成でき
ます。
カレント移動コマンド:
cd $CPS_SDK_ROOTDIR/ramdisk
ビルドコマンド:
make
- 19 -
4. ターゲットの Firmware 書き込み方法
ターゲットの起動の次の方法があります。
a) SD カードからシステムを起動
b) 内蔵 NOR FLASH からシステムを起動
SD からのシステム起動について、SD 起動用の Firmware を SD カードに書込み、その SD カードを挿入しシ
ステムを起動させます。
内蔵 NOR FLASH からのシステム起動について、下記の2ステップを行うことで内蔵 NOR FLASH からの起動
が可能となります。
1) 内蔵 NOR FLASH へシステムをインストールためのインストール SD カードの作成
2) インストール SD カードを挿入し SD カードより起動させ、内蔵 NOR FLASH へシステムをインストー
ル
各々の起動方法に応じた Firmware の書込み方法を次に示します。
4-1. SD 起動用 SD カードの作成
SD 起動用の SD カードは次の手順で作成します。
※本 SDK 付属の arm 版 Ubuntu10.04 ベースで説明しています。
(1) ホスト PC に SD カードを挿入し認識させます。
SD カードがどのファイルシステムで認識しているか、parted コマンド等で調べることができます。
例)
sudo parted -l
SD カードが自動マウントされている場合は、アンマウントしてください。
(2) SD カードのパーティションの生成を行います。
例) SD カードのデバイスが /dev/sdb の場合
sudo -E $CPS_SDK_ROOTDIR/tools/mk2PartSDCard.sh /dev/sdb
このコマンドで次の2つのパーティションが生成されます。
-
Boot パーティション
W95 FAT32 (LBA)
-
rootfs パーティション
ext3
- 20 -
(3) SD カードをマウントします。
上記で生成したパーティションをマウントする先のディレクトリを予め生成しておきます。
下記は、/media の下に boot 用と rootfs 用のディレクトリを生成するコマンド例です。
sudo mkdir /media/boot
sudo mkdir /media/rootfs
これらのマウント先に上記で生成した SD カードのパーティションをマウントします。
下記は SD カードが/dev/sdb の場合のコマンド例です。
sudo mount /dev/sdb1 /media/boot
sudo mount /dev/sdb2 /media/rootfs
(4) target の下に作成した boot ディレクトリと rootfs ディレクトリのファイルを SD カードにコピーし
ます。
[boot パーティション (fat32)]
sudo cp -p ${CPS_SDK_INSTALL_FULLDIR}/boot/* /media/boot
[rootfs パーティション (ext3)]
sudo -E cp -rp ${CPS_SDK_INSTALL_FULLDIR}/Ubuntu10.04/* /media/rootfs
(5) SD カードにコピーしたファイルに対し同期を取ります。
sync
sync
sync
sync コマンドで同期を取る前に SD カードをアンマウントし、SD カードを抜き取った場合、SD カー
ドにファイルが正しく書けていないことがあります。そのようなことを防止するために sync コマンド
を実行しておいてください。
(6) SD カードをアンマウントし、SD カードを抜き取ります。
sudo umount /media/boot
sudo umount /media/rootfs
- 21 -
4-2. 内蔵 NOR FLASH 起動用のインストール SD カードの作成
内蔵 NOR FLASH 起動用のインストール SD カードを作成する前に下記の準備が必要です。
- 内蔵 NOR FLASH 起動用インストールするための rootfs セクションを作成
- カスタマイズした bootloader やアプリケーション等のビルドとインストール用 rootfs セクショ
ンへのコピー
4-2-1. 内蔵 NOR FLASH 起動用インストールするための rootfs セクションを作成
ベースとなる内蔵 NOR FLASH インストール用の rootfs (InstallerForFlash)を作成します。
コマンド:
./create_FlashInstaller.sh
このコマンド実行後に InstallerForFlash というディレクトリがターゲット向けのディレクトリ下に生成さ
れます。CPS-MC341-ADSC シリーズ 2 LAN type のビルド環境下で生成した場合のディレクトリ例を次に示しま
す。
~/
|
+-- [CPS_SDK]
|
+-- [target]
+-- [CPS-MC341-ADSCX.2lan]
+-- [boot]
+-- [Ubuntu10.04]
+-- [rootfsForInstall]
|
+-- [InstallToMTD]
+-- [bin]
+-- [dev]
+-- [etc]
+-- [home]
+-- [lib]
+-- [libexec]
+-- linuxrc
+-- [mnt]
+-- [proc]
+-- [sbin]
+-- [sys]
+-- [tmp]
+-- [usr]
+-- [var]
Target ディレクトリ
boot セクション
rootfs セクション (SD カード用)
rootfs セクション (NOR Flash インストール用)
NOR Flash インストールファイルディレクトリ
図 7. NOR Flash インストール用の rootfs が生成された時のディレクトリ構成図
- 22 -
4-2-2. 内蔵 NOR FLASH インストール用 rootfs セクションへのコピー
カスタマイズビルドした bootloader やアプリケーションソフト等があれば、インストール用 rootfs
(InstallerForFlash)のインストールディレクトリ(/InstallToMTD)へコピーします。
コピー前にビルドによって生成されたファイルがあるか確認の上、コピーをしてください。
[bootloader]
「3-3-2. 内蔵 NOR FLASH 起動用のビルド」の項でビルドした MLO.byteswap u-boot.img をコピーしま
す。ビルド方法については「3-3-2. 内蔵 NOR FLASH 起動用のビルド」の項を参照ください。
コマンド:
cd ${CPS_SDK_ROOTDIR}/u-boot
cp -p MLO.byteswap u-boot.img ${CPS_SDK_INSTALL_FULLDIR}/InstallerForFlash/InstallToMTD
[kernel]
コマンド:
cd ${CPS_SDK_ROOTDIR}/kernel
cp -p arch/arm/boot/uImage ${CPS_SDK_INSTALL_FULLDIR}/InstallerForFlash/InstallToMTD
[ramdisk]
コマンド:
cd ${CPS_SDK_ROOTDIR}/ramdisk
cp -p ramdisk.xz ${CPS_SDK_INSTALL_FULLDIR}/InstallerForFlash/InstallToMTD
- 23 -
本 SDK の添付のインストールプログラム(shell script)は、これらの4つのファイル(MLO.byteswap,
u-boot.img, uImage, ramdisk.xz)と機器専用のアプリケーションデータ(mtd5.tgz)を NOR FLASH へイン
ストールを行います。
u-boot オプション用へのインストールは行っていませんので、それを行いたい場合は、次のファイルを
編集してください。
${CPS_SDK_INSTALL_FULLDIR}/InstallerForFlash/home/flashwriter.sh
このファイルでは参考用として、下記の内容をコメントアウトした状態で記載されています。
mtd2: dd によるコピー
この内容を参考にインストール方法をカスタマイズしてください。
NOR FLASH の容量等についての詳細は「6. Appendix D. 内蔵 NOR FLASH メモリマップ」を参照くださ
い。
4-2-3. 内蔵 NOR FLASH インストール用 SD カードの作成
内蔵 NOR FLASH インストール用の SD カードは次の手順で作成します。
基本的な手順は SD 起動用のものと同じですが、rootfs のコピー元が違います。
(こちらの rootfs のコピー
元は InstallerForFlash になります)
(1) ホスト PC に SD カードを挿入し認識させます。
SD カードがどのファイルシステムで認識しているか、parted コマンド等で調べることができます。
例)
sudo parted -l
(2) SD カードのパーティションの生成を行います。
例) SD カードのデバイスが /dev/sdb の場合
sudo -E $CPS_SDK_ROOTDIR/tools/mk2PartSDCard.sh /dev/sdb
このコマンドで次の2つのパーティションが生成されます。
-
Boot パーティション
W95 FAT32 (LBA)
-
rootfs パーティション
ext3
- 24 -
(3) SD カードをマウントします。
上記で生成したパーティションをマウントする先のディレクトリを予め生成しておきます。
下記は、/media の下に boot 用と rootfs 用のディレクトリを生成するコマンド例です。
sudo mkdir /media/boot
sudo mkdir /media/rootfs
これらのマウント先に上記で生成した SD カードのパーティションをマウントします。
下記は SD カードが/dev/sdb の場合のコマンド例です。
sudo mount /dev/sdb1 /media/boot
sudo mount /dev/sdb2 /media/rootfs
(4) target の下に作成した boot ディレクトリと rootfs ディレクトリのファイルを SD カードにコピーし
ます。
[boot パーティション (fat32)]
sudo cp -p ${CPS_SDK_INSTALL_FULLDIR}/boot/* /media/boot
[rootfs パーティション (ext3)]
sudo -E cp -rp ${CPS_SDK_INSTALL_FULLDIR}/InstallerForFlash/* /media/rootfs
(5) SD カードにコピーしたファイルに対し同期を取ります。
sync
sync
sync
sync コマンドで同期を取る前に SD カードをアンマウントし、SD カードを抜き取った場合、SD カー
ドにファイルが正しく書けていないことがあります。そのようなことを防止するために sync コマンド
を実行しておいてください。
(6) SD カードをアンマウントし、SD カードを抜き取ります。
sudo umount /media/boot
sudo umount /media/rootfs
- 25 -
4-3. 内蔵 NOR FLASH へのインストール
4-2-3. で作成した SD カードを CONPROSYS 本体の SD boot 有効にして起動すると、自動的に NOR FLASH
への書込みが開始します。
起動方法については「5-1-1. SD カードからの起動」の項を参照ください。
インストール中は ST1(緑)、
ST2(赤)と Power(緑)の LED が点滅し、
正常に終了すると ST1(緑)と Power(緑)
の LED が点灯したままになります。
- 26 -
5. ターゲット動作確認
5-1. ターゲット起動方法
5-1-1. SD カードからの起動
各々の CONPROSYS 本体の DIP SW が SD boot モードが有効になっていることを確認してください。
1) コンパクトタイプ(CPS-MC341-xxx)の場合
DIP SW1 の 6PIN が ON (SD boot モード有効)
図 8. コンパクトタイプ BOOT SW 設定
2) スタックタイプ(CPS-MCS341-xxx)の場合
デバッグ用シリアルポート(3.5Φミニジャック)隣の BOOT SW(ケース中)の 2PIN が ON
(SD boot モード有効)
図 9. スタックタイプ BOOT SW 設定
「4-1. SD 起動用 SD カードの作成」で作成した SD カードを挿し、本体に電源を入れてください。
※SD カードが挿入されていない場合、内蔵 NOR FLASH より起動します。
5-1-2. 内蔵 NOR FLASH から起動
「5-1-1. SD カードからの起動」に記載している SD boot モードが無効になっていることを確認し、
本体に電源を入れてください。
- 27 -
5-2. シリアルケーブル接続によるログイン
ホスト PC から CONPROSYS へ専用シリアルポート(3.5Φミニジャック)にシリアルケーブルを接続する
ことで、コンソールより CONPROSYS へログインすることができます。
シリアルの設定は次のようになります。
Baud rate:
115200 bps
Data bit:
8 bit
Parity:
none
Stop bit:
1 bit
Hardware flow:
none
ホスト PC と CONPROSYS を接続するシリアルケーブルは次のものを推奨しています。
ドライバソフトはシリアルモニタを行う PC の OS に合わせてダウンロードしてください。
- FTDI 製
TTL-232R-3V3 AJ
ドライバ提供 URL: http://www.ftdichip.com/Drivers/VCP.htm
デフォルトのログイン/パスワードは次のようになります。
ログイン:
conprosys
パスワード:
contec
5-3. ssh 接続によるログイン
ホスト PC から CONPROSYS が同じネットワーク上で動作している場合、ssh を使って CONPROSYS へログ
インすることができます。
- 28 -
5-4. ターゲットの起動シーケンス
本 SDK のターゲット上での起動は次の順序で実行されるようになっています。
図 10. 起動シーケンス
ターゲット起動時に実行させたいコマンドは次のスクリプトファイルを編集してください。
[SD カードブートの場合]
/home/startup.sh
[内蔵 NOR FLASH ブートの場合]
/mnt/mtd/startup.sh
ターゲット上では、ファイルシステムが READ ONLY モードにされているため、これらのファイルを編
集するには WRITE 可能モードにしてから編集し、編集終了後は READ ONLY モードに戻してください。
[SD カードブートの場合]
WRITE 可能モード
sudo rommode rw
READ ONLY モード
sudo rommode ro
[内蔵 NOR FLASH ブートの場合]
WRITE 可能モード
sudo mount -n -o remount,rw,noatime /dev/mtdblock5 /mnt/mtd/
READ ONLY モード
sudo mount -n -o remount,ro,noatime /dev/mtdblock5 /mnt/mtd/
- 29 -
5-5. ターゲットのネットワーク設定
本 SDK のターゲットのデフォルトネットワーク設定は次のように設定されています。
[デフォルト設定]
LAN A (eth0):
10.1.1.101
LAN B (eth1):
192.168.1.101
(2 LAN Type 設定時のみ)
ネットワーク設定を変更したい場合はターゲット上の次のファイルを編集してください。
[SD カードブート版]
/etc/network/interfaces
例 1) eth0 を dhcp に設定したい場合
auto eth0
iface eth0 inet dhcp
例 2) eth0 を別の固定 IP(192.168.30.11)に設定したい場合
auto eth0
iface eth0 inet static
address 192.168.30.11
netmask 255.255.255.0
gateway 192.168.30.1
(任意)
broadcast 192.168.30.255
(任意)
[NOR FLASH ブート版]
/mnt/mtd/startup.sh
例 1) eth0 を dhcp に設定したい場合
下記スクリプトを追加
udhcpc -i eth0
例 2) eth0 を別の固定 IP(192.168.30.11)に設定したい場合
ifconfig eth0 add 192.168.30.11 netmask 255.255.255.0
※gateway の設定を行いたい場合は、route コマンドを使用してください。
- 30 -
5-6. ドライバソフトの起動方法
手動で起動が必要なドライバや、
「3-5. ターゲットのサンプルドライバのビルド」でビルドしたドラ
イバは modprobe コマンドで起動できます。ターゲットにシリアルケーブル接続によるログイン、また
は ssh によるログインによってコマンドを実行してください。
コマンド例: can ドライバ(d_can_platform)の起動
modprobe d_can_platform
ドライバが起動しているかは次のコマンドで確認できます。
コマンド:
lsmod
ドライバを自動起動したい場合は、
「5-4. ターゲットの起動シーケンス」を参考に、startup.sh ファ
イルへドライバを起動するコマンドを追加してください。
5-7. 3G モデルの設定について(日本モデルのみ)
3G モデル(例:CPS-MC341G-ADSC1 等)について、APN へ接続するためには下記のファイル設定が必要で
す。
設定ファイル:
/opt/3gtool/G_COMMDATA.ini
設定ファイルの項目内容は次の表のようになります。
表 1. 3G 設定ファイル
項目
設定内容
G_APN1
通信サービス業者から情報提供される APN を設定します。
G_USER1
通信サービス業者から情報提供されるユーザーID を設定します。
G_PASSWORD1
通信サービス業者から情報提供されるパスワードを設定します。
G_ENCRYPTION1
通信サービス業者から情報提供される下記の認証タイプを設定します。
0: None
1: PAP
2: CHAP
G_PDPTYPE1
通信サービス業者から情報提供される下記の PDP タイプを設定します。
0: IP
1: PPP
設定ファイルを編集後、システムを再起動してください。
- 31 -
6. Appendix
A. ブロック図
図 11. CPS-MC341-ADSCx シリーズブロック図 (斜字はオプション)
図 12. CPS-MC341-DSx シリーズブロック図
- 32 -
(斜字はオプション)
図 13. CPS-MC341-Ax シリーズブロック図
(斜字はオプション)
図 14. CPS-MCS341-DSx シリーズブロック図 (斜字はオプション)
図 15.
CPS-MC341G-ADSCx シリーズブロック図
- 33 -
B. デバイス I/F
CONPROSYS 特有のデバイス I/F は Linux 上で次の表に示すようにアクセスすることができます。
機器によってポートが違うことがありますのでご注意ください。
表 2. [UART 制御デバイス]
CPS モデル
/dev/ttyO1
MC341-ADSC1
RS-422A/485
(COM A)
RS-422A/485
(COM A)
MC341-ADSC2
/dev/ttyO2
/dev/ttyO3
/dev/ttyO4
-
-
-
-
RS-422A/485
(COM C)
-
MC341-DS1
-
-
-
-
MC341-DS2
(CAN 用)※1
-
-
-
MC341-DS3
-
-
MC341-DS4
(CAN 用)※1
MC341-A1
※1
RS-422A/485
(COM C)
RS-422A/485
(COM C)
/dev/ttyO5
RS-232C
(COM B)
RS-232C
(COM B)
RS-422A/485
(COM A)
RS-422A/485
(COM A)
RS-422A/485
(COM A)
RS-422A/485
(COM A)
-
-
-
-
-
-
-
-
-
MC341-A2
(CAN 用)
MC341-A3
-
-
RS-422A/485
-
-
MC341-A4
(CAN 用)※1
-
RS-422A/485
-
-
MCS341-DS1
-
-
-
-
RS-232C
MCS341-DS2
-
-
RS-422A/485
-
RS-232C
MC341G-ADSC1
RS-422A/485
(COM A)
-
-
-
RS-232C
(COM B)
※1 CAN 用ポートとしてリザーブされています。制御は Network で行ってください。
表 3. [SPI 制御デバイス]
CPS モデル
/dev/spidev2.0
/dev/spidev2.1
/dev/spidev2.2
MC341-ADSC1
AI (ADC / CLK=6MHz)
DIO (FPGA / CLK=24MHz)
-
MC341-ADSC2
AI (ADC / CLK=6MHz)
DIO (FPGA / CLK=24MHz)
-
MC341-DS1
DIO (FPGA / CLK=24MHz)
-
-
MC341-DS2
DIO (FPGA / CLK=24MHz)
-
-
MC341-DS3
DIO (FPGA / CLK=24MHz)
-
-
MC341-DS4
DIO (FPGA / CLK=24MHz)
-
-
MC341-A1
AI (ADC / CLK=6MHz)
AO (DAC / CLK=20MHz)
Potentiometers (CLK=25MHz)
MC341-A2
AI (ADC / CLK=6MHz)
AO (DAC / CLK=20MHz)
Potentiometers (CLK=25MHz)
MC341-A3
AI (ADC / CLK=6MHz)
AO (DAC / CLK=20MHz)
Potentiometers (CLK=25MHz)
MC341-A4
AI (ADC / CLK=6MHz)
AO (DAC / CLK=20MHz)
Potentiometers (CLK=25MHz)
MCS341-DS1
-
-
-
MCS341-DS2
-
-
-
MC341G-ADSC1
AI (ADC / CLK=6MHz)
DIO (FPGA / CLK=24MHz)
-
カッコ内は接続されるデバイスと SPI 制御 MAX クロック値
- 34 -
表 4. [GPIO 制御デバイス]
CPS モデル
GPIO 26
GPIO 27
GPIO 32
GPIO 33
GPIO 34
GPIO 35
GPIO 67
MC341-ADSC1
LED ST1
(Out)
LED ST2
(Out)
DIP SW1-2
(In)
DIP SW1-3
(In)
DIP SW1-4
(In)
Shutdown SW
(In)
LED Power
(Out)
MC341-ADSC2
LED ST1
(Out)
LED ST2
(Out)
DIP SW1-2
(In)
DIP SW1-3
(In)
DIP SW1-4
(In)
Shutdown SW
(In)
LED Power
(Out)
MC341-DS1
LED ST1
(Out)
LED ST2
(Out)
DIP SW1-2
(In)
DIP SW1-3
(In)
DIP SW1-4
(In)
Shutdown SW
(In)
LED Power
(Out)
MC341-DS2
LED ST1
(Out)
LED ST2
(Out)
DIP SW1-2
(In)
DIP SW1-3
(In)
DIP SW1-4
(In)
Shutdown SW
(In)
LED Power
(Out)
MC341-DS3
LED ST1
(Out)
LED ST2
(Out)
DIP SW1-2
(In)
DIP SW1-3
(In)
DIP SW1-4
(In)
Shutdown SW
(In)
LED Power
(Out)
MC341-DS4
LED ST1
(Out)
LED ST2
(Out)
DIP SW1-2
(In)
DIP SW1-3
(In)
DIP SW1-4
(In)
Shutdown SW
(In)
LED Power
(Out)
MC341-A1
LED ST1
(Out)
LED ST2
(Out)
DIP SW1-2
(In)
DIP SW1-3
(In)
DIP SW1-4
(In)
Shutdown SW
(In)
LED Power
(Out)
MC341-A2
LED ST1
(Out)
LED ST2
(Out)
DIP SW1-2
(In)
DIP SW1-3
(In)
DIP SW1-4
(In)
Shutdown SW
(In)
LED Power
(Out)
MC341-A3
LED ST1
(Out)
LED ST2
(Out)
DIP SW1-2
(In)
DIP SW1-3
(In)
DIP SW1-4
(In)
Shutdown SW
(In)
LED Power
(Out)
MC341-A4
LED ST1
(Out)
LED ST2
(Out)
DIP SW1-2
(In)
DIP SW1-3
(In)
DIP SW1-4
(In)
Shutdown SW
(In)
LED Power
(Out)
MCS341-DS1
-
-
-
-
-
-
MCS341-DS2
-
-
-
-
-
-
MC341G-ADSC1
LED ST1
(Out)
LED ST2
(Out)
DIP SW1-2
(In)
DIP SW1-3
(In)
DIP SW1-4
(In)
Shutdown SW
(In)
LED Power
(Out)
CPS モデル
GPIO 39
GPIO 44
GPIO 45
GPIO 46
GPIO 47
GPIO 100
MC341-ADSC1
-
-
-
-
-
-
MC341-ADSC2
-
-
-
-
-
-
MC341-DS1
-
-
-
-
-
-
MC341-DS2
-
-
-
-
-
-
MC341-DS3
-
-
-
-
-
-
MC341-DS4
-
-
-
-
-
-
MC341-A1
DAC LDACB
(Out)
AI switches
A0 (Out)
AI switches
A1 (Out)
AI switches
A2 (Out)
AO Switch
(Out)
Potentiometers CS
(Out)
MC341-A2
DAC LDACB
(Out)
AI switches
A0 (Out)
AI switches
A1 (Out)
AI switches
A2 (Out)
AO Switch
(Out)
Potentiometers CS
(Out)
MC341-A3
DAC LDACB
(Out)
AI switches
A0 (Out)
AI switches
A1 (Out)
AI switches
A2 (Out)
AO Switch
(Out)
Potentiometers CS
(Out)
MC341-A4
DAC LDACB
(Out)
AI switches
A0 (Out)
AI switches
A1 (Out)
AI switches
A2 (Out)
AO Switch
(Out)
Potentiometers CS
(Out)
MCS341-DS1
-
-
-
-
-
-
MCS341-DS2
-
-
-
-
-
-
MC341G-ADSC1
-
-
-
-
-
-
- 35 -
CPS モデル
GPIO 36
GPIO 37
GPIO 87
GPIO 105
MCS341-DS1
-
-
Shutdown
SW
(In)
Power
RESET
(Out)
MCS341-DS2
-
-
Shutdown
SW
(In)
Power
RESET
(Out)
MC341G-ADSC1
3G Power
(Out)
3G RST
(Out)
MC341-ADSC1
MC341-ADSC2
MC341-DS1
MC341-DS2
MC341-DS3
MC341-DS4
MC341-A1
MC341-A2
MC341-A3
MC341-A4
カッコ内は入出力方向を示す
GPIO の制御方法については次のホームページを参考にしてください。
http://processors.wiki.ti.com/index.php/Linux_PSP_GPIO_Driver_Guide
- 36 -
表 5. [コンパクトタイプ ADC / DAC / FPGA(DIO) 使用デバイス]
CPS モデル
デバイス
メーカー
デバイス型番
制御ポート
MC341-ADSC1
ADC
Analog Devices
ADC7327
/dev/spidev2.0
MC341-ADSC2
FPGA (DIO)
Lattice Semiconductor
LCMXO2-640HC-
/dev/spidev2.1
MC341G-ADSC1
MC341-DS1
4TG100l
FPGA (DIO)
Lattice Semiconductor
MC341-DS2
LCMXO2-640HC-
/dev/spidev2.0
4TG100l
MC341-DS3
MC341-DS4
MC341-A1
ADC
Texas Instruments
ADS8326IDGKR
/dev/spidev2.0
AI Multiplexers
Analog Devices
ADG508FBRNZ
A0: GPIO 44
A1: GPIO 45
A2: GPIO 46
DAC
Texas Instruments
DAC161S055CISQ
/dev/spidev2.1
LDACB: GPIO 39
AO Switch
Toshiba
SSM3J135TU
Gate: GPIO 47
Potentiometers
Analog Devices
AD5206BRUZ10
/dev/spidev2.2
CS: GPIO 100
MC341-A2
MC341-A3
MC341-A4
AIO のデバイス制御詳細に関しては、上記の情報より各デバイスメーカーのデータシートを入手し参照くださ
い。DIO のデバイス制御(FPGA)に関しては、
「Appendix C. FPGA I/O マップ」の項を参照ください。
表 6. [スタックタイプ FPGA 使用デバイス]
CPS モデル
デバイス
メーカー
デバイス型番
制御ポート
MCS341-DS1
FPGA
Lattice Semiconductor
LCMXO2-7000HC-
GPMC
MCS341-DS2
4FTG256I
デバイス制御(FPGA)に関しては、
「6.Appendix C. FPGA I/O マップ」の項を参照ください。
- 37 -
表 7. [スタックタイプ COM デバイス]
CPS モデル
/dev/ttyCPS0 /dev/ttyCPS1 /dev/ttyCPS2 /dev/ttyCPS3 …
/dev/ttyCPS62 /dev/ttyCPS63
COM-1PC
RS-232C
-
RS-232C
-
…
RS-232C
-
COM-2PC
RS-232C
RS-232C
RS-232C
RS-232C
…
RS-232C
RS-232C
COM-1PD
RS-422A/485
-
RS-422A/485
-
…
RS-422A/485
-
COM-2PD
RS-422A/485
RS-422A/485
RS-422A/485
RS-422A/485
…
RS-422A/485
RS-422A/485
表 8. [スタックタイプ AIO 制御デバイス]
CPS モデル
/dev/cpsaio0
/dev/cpsaio1
…
/dev/cpsaio30
/dev/cpsaio31
AI-1608LI
AI
AI
…
AI
AI
AO-1604LI
AO
AO
…
AO
AO
表 9. [スタックタイプ DIO 制御デバイス]
CPS モデル
/dev/cpsdio0
/dev/cpsdio1
…
/dev/cpsdio30
/dev/cpsdio31
DIO-0808L/BL
DIO
DIO
…
DIO
DIO
表 10. [スタックタイプ SSI 制御デバイス]
CPS モデル
/dev/cpsssi0
/dev/cpsssi1
…
/dev/cpsssi30
/dev/cpsssi31
SSI-4P
SSI
SSI
…
SSI
SSI
表 11. [スタックタイプ IO 制御デバイス]
CPS モデル
/dev/cps-iolib
MCS341-DS1
GPMC
MCS341-DS2
GPMC
表 12. [Network デバイス]
Network Category
eth0
eth1
can0
can1
wwan0
1 LAN(Hub Mode) Type
LAN A/B
-
-
-
-
2 LAN Type
LAN A
LAN B
-
-
-
CAN 搭載モデル
-
-
CAN※2
CAN※2
-
3G 搭載モデル
LAN A/B
-
-
-
3G
※2 CAN 搭載モデルについて CAN 用のドライバ (d_can_platform)をロードして制御してください。
- 38 -
C. FPGA I/O マップ
[コンパクトタイプ CPS-MC341-ADSCx / DSx シリーズ]
メーカー:
Lattice Semiconductor
デバイス型番:
LCMXO2-640HC-4TG100l
インターフェース: SPI
図 16. SPI 信号タイミング
MOSI : SCLK の立下りで、スレーブが信号をラッチ
MISO : SCLK の立ち上がりでスレーブ信号を出力、 SCLK の立下りでマスタが信号をラッチ
表 13. [SPI 信号フォーマット]
Register
Page
Address
R/W
Access
Type
Dummy
Data
4bit
8bit
1bit
1bit
2bit
16bit
・R/W :
0 = Read、 1 = Write
・Access Type :
0 = Byte Access、 1 = Word Access
・Dummy :
常に 0
Byte アクセス時は、 データを下詰めで 16bit データにして送受信を行います。
例: Page = 0h、Address=12h に 00AAh を Write する場合
0x0 12 C 00AA
表 14. Products Category
Products
Category
01h
Function
Register
Page
デジタル入出力部
0h
適用機器
CPS-MC341-ADSCx,
CPS-MC341-DSx
02h
アナログ入力部
1h
CPS-MC341-ADSCx
03h
カウンタ部
2h
CPS-MC341-ADSCx
- 39 -
表 15. デジタル入出力部ポートマップ (Page 0h)
Address
Read/Write
内容
種別
00h – 01h
R
システム予約エリア
02h – 03h
R
システム予約エリア
04h – 0Ch
R
未使用
0Eh – 0Fh
R
システム予約エリア
10h – 11h
R
デジタル入力ポート
12h – 13h
R/W
デジタル出力ポート
14h – 17h
R
未使用
18h – 19h
R/W
デジタルフィルタ設定時間
1Ah – 1Fh
R
未使用
20h – 21h
R/W
システム予約エリア
22h – 23h
R
未使用
24h – 25h
R/W
システム予約エリア
26h - FFh
R
未使用
表 16. アナログ入力部ポートマップ (Page 1h)
Address
Read/Write
内容
種別
00h – 01h
R
システム予約エリア
02h – 03h
R
システム予約エリア
04h – 27h
R
未使用
28h – 29h
R/W
アナログ入力部
2Ah - FFh
R
未使用
- 40 -
表 17. カウンタ入出力部ポートマップ (Page 2h)
Address
Read/Write
内容
種別
00h – 01h
R
システム予約エリア
02h – 03h
R
システム予約エリア
04h – 0Fh
R
未使用
10h – 11h
R/W
Direct Counter Data 下位 (R) /
Read Channel Select (W)
12h – 13h
R/W
Direct Counter Data 上位 (R) /
Direct Counter Latch Select (W)
14h – 15h
R/W
Counter Select Enable Status
16h – 17h
R
未使用
18h – 19h
W
Command Select
1Ah – 1Bh
R
未使用
1Ch – 1Dh
R/W
Counter Input / Output data 下位
1Eh – 1Fh
R/W
Counter Input / Output data 上位
20h – 21h
W
システム予約エリア
22h – 23h
W
システム予約エリア
24h – 25h
R/W
システム予約エリア
26h – 27h
R/W
システム予約エリア
2Ah - FFh
R
未使用
- 41 -
表 18. デジタル入力ポート (Page 0h / Address 10h - 11h)
R
D15
D14
D13
D12
D11
D10
D9
D8
D7
D6
D5
D4
D3
D2
D1
D0
0
0
0
0
0
0
0
0
DI7
DI6
DI5
DI4
DI3
DI2
DI1
DI0
このポートは、デジタル入力端子の値を取得します。デジタルフィルタを設定している場合
は、フィルタ通過後の値が取得されます。
※CPS-MC341-ADSCx シリーズは DI0 – DI3 のみ有効です。
表 19. デジタル出力ポート (Page 0h / Address 12h -13h)
R/W
D15
D14
D13
D12
D11
D10
D9
D8
D7
D6
D5
D4
D3
D2
D1
D0
0
0
0
0
0
0
0
0
DO7
DO6
DO5
DO4
DO3
DO2
DO1
DO0
このポートは、デジタル出力端子の値を設定、または設定値を取得します。
※CPS-MC341-ADSCx シリーズは DO0 – DO3 のみ有効です。
表 20. デジタルフィルタ設定時間 (Page 0h / Address 18h – 19h)
R/W
D15
D14
D13
D12
D11
D10
D9
D8
D7
D6
D5
D4
D3
D2
D1
D0
0
0
0
ST4
ST3
ST2
ST1
ST0
0
0
0
0
0
0
0
0
このポートは、デジタル入力端子に適用するデジタルフィルタの値を設定、または設定値を
取得します。設定値は全入力端子に適用されます。設定値は[表 21. デジタルフィルタ設定項
目]を参照してください。
- 42 -
表 21. デジタルフィルタ設定項目
設定項目
名称
意味
設定項目
初期値
ST4~0
デジタルフィルタ
デジタルフィルタ
0: フィルタ機能未使用
0
設定時間
の時間を設定しま
1: 0.25μsec
[フィルタ機能未使用]
す。
2: 0.5μsec
3: 1μsec
4: 2μsec
5: 4μsec
6: 8μsec
7: 16μsec
8: 32μsec
9: 64μsec
10: 128μsec
11: 256μsec
12: 512μsec
13: 1.024msec
14: 2.048msec
15: 4.096msec
16: 8.192msec
17: 16.384msec
18: 32.768msec
19: 65.536msec
20: 131.072msec
21~31: Reserve
- 43 -
表 22. アナログ入力ポート (Page 1h / Address 28h - 29h) R
D15
D14
D13
D12
D11
D10
D9
D8
D7
D6
D5
D4
D3
D2
D1
D0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
AI1
AI0
このポートは、アナログ入力チャンネルの値を取得します。チャンネル間絶縁機能が必要な
場合は、両方のスイッチを同時に ON しないでください。同時に ON するとチャンネル間絶縁の
機能が失われます。
表 23. カウンタデータ読み出しポート (Page 2h / Address 10h - 13h) R
Addr
D15
D14
D13
D12
D11
D10
D9
D8
D7
D6
D5
D4
D3
D2
D1
D0
10h
D15
D14
D13
D12
D11
D10
D09
D08
D07
D05
D05
D04
D03
D02
D01
D00
12h
0
0
0
0
0
0
0
0
D23
D22
D21
D20
D19
D18
D17
D16
このポートは、ラッチされたカウンタデータを読むことができます。
読むデータは[表 24. カウンタ読み出しチャンネル設定ポート (Page 2h / Address 10h)
W]で設定します。
表 24. カウンタ読み出しチャンネル設定ポート (Page 2h / Address 10h)
W
D15
D14
D13
D12
D11
D10
D9
D8
D7
D6
D5
D4
D3
D2
D1
D0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
Sel0
このポートは、カウンタデータ読み出しポートで読み出すチャンネルを選択します。
カウンタデータの読み出しは、[表 23. カウンタデータ読み出しポート (Page 2h / Address
10h - 13h) R]で行います。
表 25. カウンタ読み出し設定
設定項目
名称
意味
設定項目
初期値
Sel0
カウンタ読み出し
カウンタデータ読み出しポートから読み
0: Channel 0
0
チャンネル
出すチェンネルを設定します。
1: Channel 1
[Channel 0]
表 26. カウンタデータラッチ設定ポート (Page 2h / Address 12h)
W
D15
D14
D13
D12
D11
D10
D9
D8
D7
D6
D5
D4
D3
D2
D1
D0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
Ch01
Ch00
このポートに[1]を書き込むことで、カウンタデータがラッチされます。カウンタデータ読み
出しポートからは、ここでラッチしたカウント値が読み出されます。
- 44 -
表 27. カウンタ有効チャンネル設定ポート (Page 2h / Address 14h)
R/W
D15
D14
D13
D12
D11
D10
D9
D8
D7
D6
D5
D4
D3
D2
D1
D0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
Ch01
Ch00
このポートは、カウンタ有効チャンネルの設定および設定状態を読み出します。
表 28. カウンタコマンドポート (Page 2h / Address 18h)
D15
D14
D13
D12
D11
D10
D9
D8
D7
0
0
0
0
0
0
0
0
0
D6
W
D5
D4
D3
D2
D1
D0
Cmd06 - 00
このポートは、次のコマンドコードを実行するためのオペレーションコマンドポートです。
コマンドコード一覧:
08h: Ch0 カウンタモード (Write)
09h: ch1 カウンタモード (Write)
18h: Ch0 比較レジスタ 0 (Write)
19h: Ch1 比較レジスタ 0 (Write)
20h: Ch0 比較レジスタ 1 (Write)
21h: Ch1 比較レジスタ 1 (Write)
38h: カウント一致ステータス確認/クリア (Read/Write)
3Ah: キャリーステータス確認/クリア(Read/Write)
3Dh: ソフトゼロクリア (Write)
Write コマンド使用時にはデータアドレスポート(Page 2h / 1Ch – 1Fh)にデータを設定しま
す。Read コマンド使用時にはデータアドレスポート(Page 2h / 1Ch – 1Fh)からデータを読み
出します。コマンドポートを制御した後、データアドレスポートも制御してください。各コマ
ンドコードに対するデータアドレスポートのフォーマットは、表 28-33 を参照してください。
表 29. Ch0 / Ch1 カウンタモード (カウンタコマンドコード:08h / 09h) W
Addr
D15
D14
D13
D12
D11
D10
D9
D8
D7
D6
D5
D4
D3
D2
D1
D0
1Ch
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1Eh
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
D1
D0
カウンタの動作モードの設定を行います。設定は入力チャンネルごとに行います。
表 30. Ch0 / Ch1 比較レジスタ 0 (カウンタコマンドコード:18h / 19h) W
Addr
D15
D14
D13
D12
D11
D10
D9
1Ch
1Eh
D8
D7
D6
D5
D4
D3
Data00 – 15
0
0
0
0
0
0
0
0
Ch0 – Ch1 のカウント値比較レジスタ 0 にデータを設定します。
- 45 -
Data16 - 25
D2
表 31. Ch0 / Ch1 比較レジスタ 1 (カウンタコマンドコード:20h / 21h) W
Addr
D15
D14
D13
D12
D11
D10
D9
1Ch
1Eh
D8
D7
D6
D5
D4
D3
D2
D1
D0
Data00 - 15
0
0
0
0
0
0
0
0
Data16 - 25
Ch0 – Ch1 のカウント値比較レジスタ 1 にデータを設定します。
表 32. カウント一致ステータス確認 / クリア (カウンタコマンドコード:38h) R/W
Addr
D15
D14
D13
D12
D11
D10
1Ch
0
0
0
0
0
0
1Eh
0
0
0
0
0
0
D9
D8
Cmp1_Ch1 Cmp1_Ch0
0
0
D7
D6
D5
D4
D3
D2
D1
D0
0
0
0
0
0
0
Cmp0_Ch1
Cmp0_Ch0
0
0
0
0
0
0
0
0
Read 時、条件が成立したビットが 1 になります。
Write 時、対応ビットに 1 をセットすることでリセットします。
表 33. キャリーステータス確認 / クリア (カウンタコマンドコード:3Ah) R/W
Addr
D15
D14
D13
D12
D11
D10
D9
D8
D7
D6
D5
D4
D3
D2
D1
D0
1Ch
0
0
0
0
0
0
0
0
0
0
0
0
0
0
Carry
Ch1
Carry
Ch0
Read 時、条件が成立したビットが 1 になります。
Write 時、対応ビットに 1 をセットすることでリセットします。
表 34. ソフトゼロクリア (3Dh) W
Addr
D15
D14
D13
D12
D11
D10
D9
D8
D7
D6
D5
D4
D3
D2
D1
D0
1Ch
0
0
0
0
0
0
0
0
0
0
0
0
0
0
Ch1
Ch0
Write 時、対応ビットに 1 をセットすることでリセットします。
- 46 -
[スタックタイプ CPS-MCS341-DSx シリーズ]
メーカー:
Lattice Semiconductor
デバイス型番:
LCMXO2-7000HC-4FTG256I
インターフェース: GPMC
表 35. ポートマップ
Address
Read/Write
内容
種別
0000h – 0001h
R
システム予約エリア
0002h
R
ロータリースイッチ
0003h
R
DIP SW
0004h
R
デバイス接続台数
0005h
R/W
システム予約エリア
0006h – 0007h
R/W
LED 制御
0008h – 000Bh
R/W
システム予約エリア
000Ch – 000Dh
R/W
システム予約エリア
000Eh – 000Fh
R
未使用
0010h – 005Fh
R
スタックデバイス情報
0060h – 0063h
R/W
DIO 制御レジスタ
0064h – 0065h
R/W
UART 制御レジスタ
0066h – 00FFh
R/W
未使用
0100h – 01FFh
R
デバイス 0
0200h – 02FFh
R
デバイス 1
:
:
:
:
1F00h – 1FFFh
R
デバイス 30
2000h – 20FFh
R
デバイス 31
- 47 -
D. 内蔵 NOR FLASH メモリマップ
CONPROSYS は 32Mbyte の内蔵 NOR FLASH メモリを搭載しています。
メモリの配置と「4-2-2. 内蔵 NOR FLASH インストール用 rootfs セクションへのコピー」の項で示すイ
ンストールファイルの関係を次に表します。
表 36. [NOR FLASH メモリマップ]
Address
dev
メモリサイズ
用途
インストールファイル
0000000h – 001FFFFh
mtd0
131,072 byte
マスターブート用
MLO.byteswap
0020000h – 009FFFFh
mtd1
524,288 byte
u-boot 用
u-boot.img
00A0000h – 00DFFFFh
mtd2
262,144 byte
u-boot オプション用
※1
00E0000h – 043FFFFh
mtd3
3,538,944 byte
カーネル用
uImage
0440000h - 0DBFFFFh
mtd4
9,961,472 byte
ramdisk 用
ramdisk.xz
0DC0000h – 1FFFFFFF
mtd5
19,136,512 byte
アプリケーション領域
mtd5.tgz※2
※1 本 SDK のデフォルトのインストールツールは処理をコメントアウトしています。
※2 mtd5 へは、ファイルを展開した状態でインストールします。
- 48 -
E. LED 制御
[コンパクトタイプシリーズ]
コンパクトタイプの LED は次の表に示すものを GPIO ポートで制御することができます。
表 37. [コンパクトタイプ LED 制御]
LED 種別
制御デバイス
ポート
No
ポート
属性
制御方法 (linux shell)
Power
GPIO
67
Out
On : /usr/local/bin/gpio_out.sh 67 0
Off: /usr/local/bin/gpio_out.sh 67 1
ST1
GPIO
26
Out
On : /usr/local/bin/gpio_out.sh 26 0
Off: /usr/local/bin/gpio_out.sh 26 1
ST2
GPIO
27
Out
On : /usr/local/bin/gpio_out.sh 27 0
Off: /usr/local/bin/gpio_out.sh 27 1
[スタックタイプシリーズ]
スタックタイプの LED は GPMC ポートから、次の表に示す FPGA の I/O マップアドレスより制御する
ことができます。
表 38. [スタックタイプ LED 制御]
レジスタ
0006h
D7
D6
D5
D4
D3
D2
D1
D0
-
-
-
-
ERR
ST2
ST1
Power
R/W
R/W
R/W
R/W
On: 1
Off: 0
On: 1
Off: 0
On: 1
Off: 0
On: 0
Off: 1
本 SDK のサンプルアプリケーションにある CPS-MCS341-DSx シリーズ用の CPS-MCS341iolib 制御サンプル
プログラムを使って、上記のアドレスへアクセスすることができます。
コマンド例: Power, ST1, ST2 を点灯させる
gpmc_testd –w1 0006 06
コマンド例: LED の状態を取得する
gpmc_testd –r1 0006
- 49 -
F. DIP Switch / Switch
[コンパクトタイプシリーズ]
コンパクトタイプの Switch は次の表に示すものを GPIO ポートから読み出すことができます。
表 39. [コンパクトタイプ Switch 制御]
Switch 種別
制御デバイス
ポート
No
ポート
属性
制御方法 (linux shell)
DIP SW1-2
GPIO
32
In
/usr/local/bin/gpio_in.sh 32
On=0, Off=1
DIP SW1-3
GPIO
33
In
/usr/local/bin/gpio_in.sh 33
On=0, Off=1
DIP SW1-4
GPIO
34
In
/usr/local/bin/gpio_in.sh 34
On=0, Off=1
Shutdown SW
GPIO
35
In
/usr/local/bin/gpio_in.sh 35
Press(On)=0, Release(Off)=1
[スタックタイプシリーズ]
スタックタイプの Switch は次の表に示すものを GPMC ポートで FPGA の I/O マップアドレスより読み
出すことができます。
表 40. [スタックタイプ Switch 制御]
レジスタ
D7
0002h
0003h
D6
D5
D4
ロータリースイッチ
D3
H
D2
D1
ロータリースイッチ
D0
L
DIP
SW1-4
DIP
SW1-3
DIP
SW1-2
DIP
SW1-1
-
-
-
-
On: 1
Off: 0
On: 1
Off: 0
On: 1
Off: 0
On: 1
Off: 0
-
-
-
-
本 SDK のサンプルアプリケーションにある CPS-MCS341-DSx シリーズ用の CPS-MCS341iolib 制御サンプル
プログラムを使って、上記のアドレスへアクセスすることができます。
コマンド例: ロータリースイッチの状態を取得する
gpmc_testd –r1 0002
- 50 -
G. ターゲット搭載アプリケーション
[SD カードブート版]
apache2
apt
binutils
gcc 4.6
cmake 3.2.0
openssh-server / client
ntpdate
iperf
nfs-client
sambaclient
autoconf
automake
ncurses
tftp-client
minicom
[NOR FLASH ブート版 / (NOR Flash インストール版)]
busybox
dropbear
- 51 -
改訂履歴
xxxx 年 xx 月
改訂内容
2016 年 04 月
初版
2016 年 04 月
- FLASH ROMへのインストール用SDのrootfsのディレクトリ間違いを修正
(「4-2. 内蔵NOR FLASH 起動用のインストールSD カードの作成」)
- CONPROSYSと接続する推奨シリアルモニタケーブルの型番を「2-1.開発に必要なもの」へ追記
- 「3-6.ターゲットのサンプルライブラリのビルド」追記
- スタック版サンプルアプリケーションプログラム追加
AI/AO制御サンプルプログラム
DI/DO制御サンプルプログラム
SSI 制御サンプルプログラム
CONPROSYS Linux SDK ユーザーズマニュアル
発行
株式会社コンテック
2016 年 4 月改訂
大阪市西淀川区姫里 3-9-31 〒555-0025
日本語 http://www.contec.co.jp/
英語
http://www.contec.com/
中国語 http://www.contec.com.cn/
本製品および本書は著作権法によって保護されていますので無断で複写、複製、転載、改変することは禁じられ
ています。
[04072016]
分類番号
NA04901
[04272016_rev2]
部品コード LYTU821