CF カード制御プログラム 開発用の実験ボード

第5章
PIC マイコンによる Windows 形式
のファイル・システムを実現する
CF カード制御プログラム
開発用の実験ボード
芹井 滋喜
Serry Shigeki
本章では,CF カードの制御プログラムの開発方法
をマスタします.
(MOD-MP3,ソリトンウェーブ)を基板に追加接続
して,保存した MP3 ファイルの再生もしてみました.
第 4 章でも解説したとおり,CF カードは Windows
なおここでいうファイルとは,曲名などの属性データ
が読めるいわゆるファイル形式でデータを保存する使
い方が一般的です.実験では,MP3 モジュール
と連続する音楽データをひとまとめにしたデータの塊
のことです.
第1話 ★ ハードウェアの開発
CF カード学習用実験基板の製作
■ 回路の説明
● 電源回路
写真 5 − 1 に示すのは製作した実験基板を使用中の
ようすです.図 5 − 1
( p.162)に CF カード学習用実験
電源は 3.3 V 単一です.理由は,PIC18LF4550 が
3.3 V でも 5 V でも動作するということと,MP3 デコ
基板の回路図を示します.
ーダ IC の電源電圧の最大定格が 3.6 V だからです.
基板に PIC18F4550 を実装したまま書き込み器を接
続し,ICSP(In Circuit Serial Programming)と呼ば
れる手法でプログラムを書き込める仕様にするために
は,5 V のリニア・レギュレータ IC を追加して,
PIC18LF4550
PIC18LF4550 を 5 V で動作させる必要があります.さ
らに,動作電圧が互いに異なる PIC18LF4550 と MP3
モジュール間の通信ラインすべてに,3.3 V と 5 V を
変換するレベル・コンバータ(74VHCT244 など)を挿
入しなければなりません.
ICSP 書き込み器は,プログラムをダウンロードす
る際,PIC18LF4550 の電源端子の電圧を 5 V に強制的
に引き上げます.実験基板のように,3.3 V 単一で
PIC18LF4550 と MP3 モジュールを動作させる場合,
書き込み器を接続して PIC18LF4550 にプログラムを
MP3モジュール
MP3モジュール
CFカード用ソケット
CFカード用ソケット
写真 5 − 1 製作した実験基板に MP3 モジュールと CF カード・
ソケットを接続したようす
ダウンロードすると,MP3 モジュールに搭載されて
いるデコーダ VS1002d の電源端子に 5 V が加わって
壊れる危険があります.ICSP で書き込む場合は,必
ず MP3 モジュールを取り外してください.
Keywords
TrueIDE モード,SPI,データ・ロガー,ファイル・システム,FAT,セクタ,クラスタ,ディレクトリ・エントリ,Tiny − FatFs,
PIC18LF4550,VS1002d,MOD-MP3
160
2007 年 2 月号
特集*実験研究! 大容量メモリ・カード
表 5 − 1 使用した PIC18LF4550 の主な仕様と内蔵機能
● ワンチップ・マイコン PIC18LF4550
次の条件を考慮して決定しました.
機 能
(1)ファイル・システムを搭載できるくらいプログ
ラム用の ROM 容量が大きい
(2)端子の数が 40 ピン程度ある
(3)高速で動作するもの
(4)開発環境も含めて入手性が良いこと
値など
動作周波数
DC 〜 48MHz
プログラム・メモリ
32768 バイト
データ・メモリ
2048 バイト
データ EEPROM
256 バイト
割り込み
20
これらの条件を踏まえ,マイクロチップ・テクノロ
ジーの PIC18LF4550 を採用しました.最大 48 MHz で
I/O ポート
A,B,C,D,E
タイマ
4個
動作し,SRAM が 2048 バイト,プログラム・メモリ
PWM
1 チャネル
は 32 K バイトあります.入出力ピンも最大で 34 本を
使用できます.PIC18LF4550 は,USB のデバイス・
拡張 PWM
1 チャネル
コントローラも内蔵しています.
図 5 − 2 に PIC18LF4550 のピン配置を,表 5 − 1 に機
能一覧を示します.
通信
MSSP,拡張 USART
USB モジュール
1個
10 ビット A − D コンバータ
13 入力
コンパレータ
2個
パッケージ
40 ピン PDIP
44 ピン QFN
44 ピン TQFP
● PIC18LF4550 のピン割り当て
MCLR/VPP /RE3
RA0/AN0
RA1/AN1
RA2/AN2/VREF -/CVREF
RA3/AN3/VREF +
RA4/T0CK I /C1OUT/RCV
RA5/AN4/SS/HLVD I N/C2OUT
RE0/AN5/CK1SPP
RE1/AN6/CK2SPP
RE2/AN7/OESPP
VDD
VSS
OSC1/CLK I
OSC2/CLKO/RA6
RC0/T1OSO/T13CK I
RC1/T1OS I /CCP2/UOE
PC2/CCP1/P1A
VUSB
RD0/SPP0
RD1/SPP1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
PIC18LF4550
CF カードの 9 番ピンの  ̄
O ̄をグラウンドに接続する
E
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
RB7/KB I 3/PGD
RB6/KB I 2/PGC
RB5/KB I 1/PGM
RB4/AN11/KBI 0/CSSPP
RB3/AN9/CCP2/VPO
RB2/AN8/ I NT2/VMO
RB1/AN10/ I NT1/SCK/SCL
RB0/AN12/ I NT0/FLT0/SD I /SDA
VDD
VSS
RD7/SPP7/P1D
RD6/SPP6/P1C
RD5/SPP5/P1B
RD4/SPP4
RC7/RX/DT/SDO
RC6/TX/CK
RC5/D+/VP
RC4/D−/VM
RD3/SPP3
RD2/SPP2
図 5 − 2 CF カードの制御用マイコンとして採用した PIC マイコン PIC18LF4550 のピン配置
(USB モジュールを内蔵する)
用語解説
1
ファームウェア
組み込み機器などでハードウェア制御を行うプログラム
組み込み用CPUのプログラムは,
開発者から見ると,普通のソフト
ウェアであっても,ユーザから見
ると(ある特定の機能の)一つのハ
ードウェアに見える.
このようなプログラムをファーム
ウェアという
をファームウェア(firmware)と呼びます.ハードウェアと
ソフトウェアの中間という意味で,このように呼ばれてい
るようです.マイコンのプログラムは,開発を終わって書
き込んでしまえば,通常はユーザがこれを書き換えること
はありません.つまりユーザから見れば,このマイコンは
一つの専用ハードウェアとみなすことができます.最近の
組み込み用のマイコンはフラッシュ・メモリ搭載の製品が
多くあり,ファームウェアのアップデートをユーザが行え
るような製品も増えてきました.
2007 年 2 月号
組み込み機器(PDAなど)
図 5 − A ファームウェアは機器の ROM に存在する
161