はじめに TOPPERS プロジェクトより配布されているファイルシステム FatFs for TOPPERS について解説します これまで ファイルシステムがサポートされていないことを理由に TOPPERS カーネルの採用を見送っていた方は これを機会にぜひご検討下さい 2007/11/15 TOP

Similar documents
SDC_SDIO_STM32F4 の説明 2013/09/17 SDIO インターフェースで SD カードをアクセスするプログラムのプロジェクトサンプルです FAT でファイルアクセスするために FatFs( 汎用 FAT ファイルシステム モジュール ) を使用しています VCP(USB 仮想 C

CommonMP Ver1.5 インストール手順書 目 次 1. 概要 目的 必要動作環境 ハードウェア構成 ソフトウェア構成 CommonMP のインストール手順 利用フロー

AP-RZA-1A シリアルFlashROMの書き込み方法

IBM SPSS Amos インストール手順 (サイト ライセンス)

アドバンスト・フォーマットディスクのパフォーマンス

AN5101 SA-Cy500S (Cyclone V SoC CPU BOARD) スタートガイド

Windows2000/XPインストール手順

Microsoft Word - XOOPS インストールマニュアルv12.doc

TFTP serverの実装

Windows AIKを使用したPE2

RTC_STM32F4 の説明 2013/10/20 STM32F4 内蔵 RTC の日付 時刻の設定および読み込みを行うプログラムです UART2( 非同期シリアル通信ポート 2) を使用して RTC の設定および読み込みを行います 無料の開発ツール Atollic TrueSTUDIO for

組込みLinuxシステムに関する調査研究

AcronisUniversalRestore_userguide_en-US

Microsoft Word - dg_sataahciip_refdesign_jp.doc

Modbusスタック:emModbus

TRQerS - Introduction

ベストプラクティスガイド ShadowProtect 回復パーティションを含む UEFI マシンのリストア 2015 年 4 月 20 日 更新日 : 2017 年 10 月 25 日

モバイルアプリを Azure で作る - データを扱う Azure Storage を利 してデータを保存する 本稿では PHP と Windows Azure を使って 画像などのファイルを扱うアプリケーションを開発する方法を説明します Windows Azure Platform では データの

. 目次 概要 リストア環境の設定... 3 ステップ 1-1 Recovery Environment メディアからの起動... 3 ステップ 1-2 タイムゾーンの選択... 4 ステップ 1-3 必要なドライバの読み込み... 5 ステップ 1-4 ネットワークドライブの割り当

第 7.0 版 利用履歴管理 ETCPRO5 セットアップマニュアル (Ver5.002) カードリーダモデル変更 ( 表示付き 表示なし ) に伴い 改訂 Windows10 対応に伴い 改訂 参考ホームページサイト :

障害管理テンプレート仕様書

型名 RF007 ラジオコミュニケーションテスタ Radio Communication Tester ソフトウェア開発キット マニュアル アールエフネットワーク株式会社 RFnetworks Corporation RF007SDK-M001 RF007SDK-M001 参考資料 1

利用ガイド

PowerPoint Presentation

本書は INpMac v2.20(intime 5.2 INplc 3 Windows7/8/8.1に対応 ) の内容を元に記載しています Microsoft Windows Visual Studio は 米国 Microsoft Corporation の米国及びその他の国における登録商標です

ごあいさつ このたびは ESMPRO/AC Advance マルチサーバオプション Ver3.6(1 ライセンス ) をお買い上げ頂き 誠にありがとうございます 本書は お買い上げ頂きましたセットの内容確認 セットアップの内容 注意事項を中心に構成されています ESMPRO/AC Advance マ

WSMGR for Web External V7.2 L50 ご紹介

BIOSセットアップメニュー 一覧

(6) コンボドライブのドライブ文字の変更 コンピュータの管理 ウィンドウの右下側フレームの CD-ROM 0 DVD (E:) と書かれた箱 ( 図 02-2) にマウスのポインタを合わせ, 右ボタンをクリックしてメニューを表示する メニューから ドライブ文字とパスの変更 (C)... を選択する

EU-SD/MCシリーズ アプリケーションノート

PRIMERGY TX1320 M3 未サポートOS動作検証確認情報

SSR2011 検証済みドライバ一覧

アップデート手順概要

PRIMERGY TX1320 M1 未サポートOS動作検証確認情報

LabVIEW RTのインストールと設定

2. 生田仮想デスクトップ PC の接続方法 生田仮想デスクトップ PC に接続する方法は 次の 2 通りです 1. HTML アクセス Internet Explorer や Safari などのブラウザを用います PC に特別なソフトウェアをインストールす る必要が無いので 管理者権限をもってい

CX6_firmup

CLUSTERPRO MC RootDiskMonitor 1.0 for Windows インストールガイド 2013(Mar) NEC Corporation はじめに 製品導入の事前準備 本製品のインストール 本製品の初期設定 本製品のアンインストール

PRIMERGY TX100 S3 未サポートOS動作検証確認情報

第一章 LPC2478 ボードの概要...3 第二章 uclinux の初体験 SD カードのテスト USB メモリのテスト USB Devices のテスト network のテスト...6 第三章 uclinux のコンパイル...

情報処理演習 B8クラス

PRIMERGY TX1330 M3 未サポートOS動作検証確認情報

( ザ ゴルフウォッチスポルト / スポルトプラス共通 ) サポートツール取扱説明書 インストール編 第 1.2 版 Copyright (C) MASA Corporation, All Rights Reserved.

Ontrack EasyRecovery 11 基本的な使い方

Microsoft Word - CDDB_Manual_JPN_0801.doc

PRIMERGY TX100 S3 未サポートOS動作検証確認情報

NEC 製PC サーバ『Express5800 R120f-1E』とSanDisk『ioMemory SX /SX 』検証報告書

press-1005.OHP

microsd メモリカード (microsdhc メモリカードを含む ) を IS11LG 本体にセットして データを保存することができます また 連絡先 メール ブックマークなどを microsd メモリカードに控えておくことができます アプリケーションによっては microsdメモリカードをセ

CLUSTERPRO MC StorageSaver for BootDisk 2.1 (for Windows) インストールガイド 2016(Mar) NEC Corporation はじめに 製品導入の事前準備 本製品のインストール 本製品の初期設定 本製品のアンインストール

IceWall Remote Configuration Managerのご紹介

Z400/600/800 WS Win7 32bit SATA マニュアルインストール手順書

intra-mart QuickBinder Ver.5.0 リリース ノート 第 4 版 2016/7/15 1. バージョンアップ内容以下にこのバージョンで変更になった点を列挙します なお 各機能の詳細に関してはマニュアルを参照して下さい また 各機能の設定方法に関しては 操作説明書またはセット

UIOUSBCOM.DLLコマンドリファレンス

3 アドレスバーに URL を入力し ( 移動ボタン ) をタップします 入力した URL のホームページに移動します ネットワークへのログオン 画面が表示された場合は ユーザー名 を確 認し パスワード を入力して OK をタップしてください ホームページがうまく表示されないときは Opera B

Nios II マイコン活用ガイド マイコンの動作を確認しましょう AuCE C3 には 基本 CPU エンジン CPU0121C3880 と 対応する基本プログラムを書き込んで出荷しております 以下に AuCE C3 出荷時の状態を示します AuCE C3 FPGA Cyclone III 基本

改訂履歴 改訂日付 改訂内容 2014/11/01 初版発行 2017/01/16 Studuino web サイトリニューアルに伴う改訂 2017/04/14 Studuino web サイトリニューアルに伴うアクセス方法の説明変更 2018/01/22 Mac 版インストール手順変更に伴う改訂

ユーザーズサイトのオフライン ウイルス定義データベースを利用したオフライン更新手順書(バージョン 5 以前向け)

<4D F736F F D20836F E C C6F6E C EE682E888B582A2837D836A B2E646F63>

TOPPERS 活用アイデア アプリケーション開発 コンテスト 部門 : 活用アイデア部門アプリケーション開発部門 作品のタイトル : Toppers_JSP と Scicos_lab / (Scilab でも可 ) による 組込みメカトロニクス制御シミュレーション 作成者 : 塩出武 ( シオデタ

Microsoft PowerPoint - Session4古賀様.ppt

HULFT-WebConnectサービス仕様書

Windows2000/XPインストール手順

2. 生田仮想デスクトップ PC の接続方法 生田仮想デスクトップ PC に接続する方法は 次の 2 通りです 1. HTML アクセス Internet Explorer や Safari などのブラウザを用います PC に特別なソフトウェアをインストールす る必要が無いので 管理者権限をもってい

Microsoft Word - Cプログラミング演習(10)

『テクノス』V2プログラムインストール説明書

スライド 1

PRIMERGY TX1310 M1 未サポートOS動作検証確認情報

2. 簡単セットアップ方法概要 SRRD のインストールが完了すると メイン ( 初期 ) 画面が表示されます また SRRD を終了しても 通常はタスクバーにアイコン ( 羊のアイコン ) が残り このアイコンをクリックすると メイン画面が表示されます * RAM ディスクの作成 RAM ディスク

目次 はじめに ツールのインストール ソフトウェアを起動する 画像ファイルの選択... 7 位置の調整... 8 背景色の設定 進捗バーの設定 パスワード設定 ユーザー情報の設定 設定

Crucial Client SSDでのファームウェアアップデート手順

内容 1. 仕様 動作確認条件 ハードウェア説明 使用端子一覧 ソフトウェア説明 動作概要 ファイル構成 オプション設定メモリ 定数一覧 変数一

Transcription:

組込み向けファイルシステム FatFs for TOPPERS のご紹介 TOPPERS プロジェクト 宮城県産業技術総合センター 今井和彦 2007/11/15 TOPPERS プロジェクト 1

はじめに TOPPERS プロジェクトより配布されているファイルシステム FatFs for TOPPERS について解説します これまで ファイルシステムがサポートされていないことを理由に TOPPERS カーネルの採用を見送っていた方は これを機会にぜひご検討下さい 2007/11/15 TOPPERS プロジェクト 2

発表内容 開発の経緯 FatFs(FAT File System) FatFsの特徴 FatFsのAPI FatFs for TOPPERS 移植作業 デモ システムのご紹介 2007/11/15 TOPPERS プロジェクト 3

TOPPERS プロジェクトの目的 TOPPERS プロジェクトは組込みシステム構築の基盤となる各種のソフトウェアを開発し 良質なオープンソースソフトウェアとして公開することで 組込みシステム技術と産業の振興を図ることを目的としたプロジェクトです 2007/11/15 TOPPERS プロジェクト 4

TOPPERSプロジェクトのこれまでの成果物 ステップ 1 カーネル μitron 仕様 RTOS:TOPPERS/JSPカーネルなど OSEK 仕様 RTOS:TOPPERS/OSEKカーネル ステップ 2 ミドルウェア 通信分野 TCP/IPプロトコルスタック :TINET CAN, LIN, FlexRay 通信ミドルウェア 次は当然 ファイルシステム 2007/11/15 TOPPERS プロジェクト 5

開発の経緯 (1) 目標 TOPPERS カーネル上で動作するファイルシステム (FAT16/32) を TOPPERS ライセンスで公開する TOPPERS ラインセンスとは BSD ライセンスをベースとした独自ライセンス 自由な利用 ( 使用 複製 改変 再配布 ) 機器に組み込んで利用する際には 元のライセンス文を掲載する または TOPPERS プロジェクトに報告する ( レポートウェア ) 2007/11/15 TOPPERS プロジェクト 6

開発の経緯 (2) 既存の実装からの流用を検討 FreeBSD 自作するしかないのか ライセンスが緩い TINETもFreeBSDがベース. 非常に複雑 汎用的 : あらゆるファイルシステムに対応するため ファイルシステム単体で切り出しにくい すべてのデバイスを ファイル として扱う文化 OSの基幹部分であり 分離するのは困難 そのとき FatFs が公開された その他のフリーソフトウェア Linux, mtools, MINIX, Freedos 等 GPL ライセンスばかりで TOPPERS ライセンスには変更できない FFS: 再配布禁止 2007/11/15 TOPPERS プロジェクト 7

FatFs(FAT File System) フリーソフトウェアのファイルシステム ライセンス : 使用 改変 再配布に一切制限なし URL http://elm-chan.org/fsw/ff/00index_j.html 作者 : 赤松武史氏 サポートされる機能 FAT12/16/32 8.3 形式ファイル名とNT 小文字フラグに対応 FDISKフォーマット ( 基本区画 ) およびSFDフォーマットに対応 (512byte/sectorのみ) 未サポートの機能 VFAT( ロングファイルネーム ) 2007/11/15 TOPPERS プロジェクト 8

FatFs の特徴 2 種類の構成 フルセット版 :FatFs 省メモリ版 :Tiny-FatFs 移植性が優れている OS なしでも動作可能 様々なプロセッサで動作実績あり AVR, H8/300H, TLCS-870/C, V850ES デバイス依存部を明確に分離 記録メディアとタイマ (RTC) デバイスドライバを追加するのみ セクター単位のリード / ライト 用意されているサンプル ドライバ» MMC» Compact Flash (CF)»ATA HDD 2007/11/15 TOPPERS プロジェクト 9

FatFs の API(1) (1) f_mount - ワークエリアの登録 削除 (2) f_open - ファイルのオープン 作成 (3) f_close - ファイルのクローズ (4) f_read - ファイルの読み込み (5) f_write - ファイルの書き込み (6) f_lseek - ファイルR/Wポインタの移動 (7) f_sync - キャッシュされたデータのフラッシュ (8) f_opendir - ディレクトリのオープン (9) f_readdir - ディレクトリの読み出し 2007/11/15 TOPPERS プロジェクト 10

FatFs の API(2) (10) f_getfree - ディスク空き領域の取得 (11) f_stat - ファイル ステータスの取得 (12) f_mkdir - ディレクトリの作成 (13) f_unlink - ファイルまたはディレクトリの削除 (14) f_chmod - ファイルまたはディレクトリ属性の変更 (15) f_rename - ファイルまたはディレクトリの名前変更 移動 (16) f_mkfs - ディスクのフォーマット 2007/11/15 TOPPERS プロジェクト 11

FatFs for TOPPERS FatFs を TOPPERS/JSP 上に移植 ソフトウェア構成 ファイルシステム :FatFs(R0.04) カーネル :TOPPER/JSP カーネル Release1.4.2 デバイスドライバ : PC カード ドライバ ATA ドライバ ハードウェア構成 プロセッサ ( 型番 ):SH3(SH7727) ソフトウェア ハードウェア JSP カーネル Solution Engine (SH3) ボード ( メーカ名 ):MS7727CP01( 日立超 LSI システムズ ) PC カード コントローラ :MR-SHPC-01 V2T-F( 丸文 ) PC カード アダプタ :PCCF-ADP(I/O DATA) 記録メディア : コンパクト フラッシュ カード CF CF 2007/11/15 TOPPERS プロジェクト 12

基本方針 移植作業 (1) なるべくオリジナルのFatFsに手を加えない ( 本家のバージョンアップに対応しやすくする ) 1.FatFs 本体 データ型の定義 エンディアンの定義 2. 下位レイヤ I/F 基本的にセクタ単位のリード ライト関数を用意すればOK 今回のターゲットボードでは PCカードイネーブラ ATAドライバ 2007/11/15 TOPPERS プロジェクト 13

移植作業 (2) 1.FatFs 本体 データ型の定義 FatFsでは移植性を考慮して 処理系依存のデータ型を定義する typedef UB BYTE; /* 符号なし8ビット整数 */ typedef UB UCHAR; /* 符号なし8ビット整数 */ typedef B CHAR; /* 符号付き8ビット整数 */ typedef UH WORD; /* 符号なし16ビット整数 */ typedef UH USHORT; /* 符号なし16ビット整数 */ typedef H SHORT; /* 符号付き16ビット整数 */ typedef UW DWORD; /* 符号なし32ビット整数 */ typedef unsigned long ULONG; typedef long LONG; 2007/11/15 TOPPERS プロジェクト 14

移植作業 (3) 1.FatFs 本体 エンディアンの定義 マクロ _MCU_ENDIAN で FAT 構造にアクセスする方法を定義する 1: ワード アクセス可能 2: ワード アクセス不可能プロセッサが以下のいずれかに該当する場合は _MCU_ENDIANを2に定義する必要がある 該当しない場合は このマクロを1に定義すればよく その場合 コードサイズを削減できる プロセッサのバイト オーダーがビッグエンディアンである アラインに合っていないメモリ アクセスが禁止されている 2007/11/15 TOPPERS プロジェクト 15

2. 下位レイヤ I/F 移植作業 (4) 基本的にセクタ単位のリード ライト関数を用意すればOK 用意するAPI 一覧 1. disk_initialize ディスク ドライブの初期化 2. disk_status ディスク ドライブの状態取得 3. disk_read ディスクからの読み込み 4. disk_write ディスクへの書き込み 5. get_fattime 日付 時刻の取得 2007/11/15 TOPPERS プロジェクト 16

デモ システムのご紹介 ファイルシステムを用いた Web サーバ JSPカーネル1.4.0+FatFs0.04+TINET1.3 JSPとTINETはボード付属のバージョンを使用 ( 開発工数を削減 ) ボード : 北斗電子 HSB7727ST( プロセッサ SH7727) 記録メディア :CompactFlash(CF) アプリケーション : 神社のおみくじシステム Ethernet シリアル SH3 割込み 賽銭箱 PC ターゲットボード 2007/11/15 TOPPERS プロジェクト 17

全体像 デモ システムの概観 ターゲットボード CF 賽銭箱 賽銭センサー クリア ボタン 2007/11/15 TOPPERSプロジェクト 18

デモ システムの動作説明 (1) CompactFlash からユーザープログラムをブート ブートローダ自体も JSP+FatFs を用いて実現 ブートローダのログ表示 起動時に転送 SH3 CF S レコードファイルを予め格納 2007/11/15 TOPPERS プロジェクト 19

デモ システムの動作説明 (2) センサーによりお賽銭の投入を感知し おみくじを Web 上でアニメーション表示する CF にログを書き込む 賽銭箱 底のセンサーで感知 ログ書き込み CF Web コンテンツ読み出し ( 画像ファイル ) 2007/11/15 TOPPERS プロジェクト 20

デモ システムの動作説明 (3) CF からログファイルを読み出し Web 上で表示する ログ読み出し CF 2007/11/15 TOPPERS プロジェクト 21

ご興味をお持ちになった方へ ET 会場内 TOPPERS パビリオン (F-28) にてデモ展示中! 本日 ご紹介した FatFs for TOPPERS は TOPPERS 公式サイトからダウンロードできます ぜひ お試し下さい URL: http://www.toppers.jp/fatfs.html 2007/11/15 TOPPERS プロジェクト 22