トップ工作室>電子系>ARMマイコンボード〜設計など改訂版


ARMマイコンボード〜設計など改訂版
[2008.09.05]



2006年11月、元版 2008年9月、大幅に改訂しました

マイコンボードを作りたい
 ロボコンで使われるようなマイコンは、日本ではH8が主流なようです。が、それなりに重い処理をさせる場合、CISC型で内蔵RAMも小さいH8ではやはり力不足。AVRもいいけど、もっと速度や機能がほしいと感じるように。ここでもっとパワーのあるマイコンを考えると、日本では(研究室とかでも)大抵SHマイコンになります。ですがSHマイコンは大食らいでコアが数百mAも使っていたり、どうも個人的には馴染めません。(補足:低消費電力版もありますが08.04.03)
 そこで世界シェアNo.1で低消費電力な、ARMマイコンを使用してみようと実験を開始しました。

ARMマイコンとは
 他のマイコンに比べて、トランジスタ数が少なめで消費電力が低い、内蔵周辺機器の幅が広い等の利点があり、密かに身の回りの電化製品等に浸透しています。GBA、NDSのようなゲーム機やPDA、USB機器、携帯電話などもかなりの割合がARMマイコンです。ARM社の開発したコア部分のライセンスを取得した企業が、独自の周辺機器を取り付けて開発しているので自分の目的にあったものを選べます。

 ただ、日本語の書籍などが少ないのと、製造社ごとに周辺機器が違うために人のソースをコピペして使いにくい、というのが場合によっては短所かもしれません。
参考
 ARM社の公式サイト
 http://ja.wikipedia.org/wiki/ARMアーキテクチャ





石の選択
 先述したとおり、ARMマイコンは世界的にはトップシェアのはずなのに、日本のアマチュアレベルではほとんど見かけません。最近ようやくベステクからARMのマイコンボードが出たようですが…。
 数年前までは秋葉原では秋葉原では全く見かけなかったのですが、最近は秋月にもARMマイコンボードが売っているくらいに浸透しているようです。今回はARM7TDMIコア搭載のAtmelのAT91SAM7Sシリーズを使用することにしました。
 …なんと(AT91SAM7S32など省ピン版以外では)USBで直接プログラムの書き込みができます。内蔵ROMにSAM-BAというプログラムが入っていて、USBやシリアル通信でFLASHやSRAMの中身を書き換えたり、色々できて便利です。
 それから、Atmel社はデータシートが読みやすい、と思います。これが実は重要な選考ポイント。

 ちなみに価格は、55MHz動作、SRAM64KBのSAM7S256で1600円くらい。
SRAM8KB、省ピンのSAM7S32で800円くらい。
回路設計
 いつも使用している、回路・基板CADのEAGLE Light Editionを今回も使用しました。非商用利用ならフリーで使用できます。回路は基本的にデータシートの推奨回路をそのまま組み合わせて使用します。

メモ
・SAM-BAを使用したUSBでのFLASH書き込みに対応させる場合、USBのプルアップをON/OFFするトランジスタの論理がデータシートの回路だと逆になっています。
・設計する際は、AtmelのサイトのSAM7Sシリーズ関連PDFのページからAT91SAM7S-EK Evaluation Board User Guideと、AT91SAM7S Microcontroller Series Schematic Check Listが参考になりました。

アートワーク

で、最終的にAT91SAM7S32を採用してこんなかんじに。

部品の値の決定
 値をちゃんと決めないといけない部品がいくつかあります。データシートやら公式の資料を一通り読めば分かりますが。

水晶発振子+キャパシタ
 まずは水晶まわり。このSAM7Sシリーズで内蔵ROMのSAM-BAを使ってUSBによるFLASH書き込みをする場合、水晶は18.432MHzにしなければなりません。ロードキャパシタは、マイコンのピンに静電容量が40pFもあるため、水晶のデータシートに書いてあるロードキャパシタ値から40pF差し引いてつける必要があります。精密な動作周波数が必要な場合、ロードキャパシタが40pF以下のものを使用すると問題があります。更に、外付けのロードキャパシタは10pF以下にする必要があるようです。
PLLフィルタ
 内蔵PLLユニットを使ってメインクロックをつくるので、PLLフィルタはかなり重要です。これはAtmelの公式サイト内のSAM7Sシリーズ関連PDFのページにあるExcelファイルで簡単に計算できます。
USBのプルアップ
 これは単にUSBの規格上決まっているものなので、1.5Kオームで固定。
各所の電源電圧
 コア電圧は内蔵レギュレータを使うので1.8V固定ですが、I/O電圧は1.8V〜3.3Vで変えられます。PLL電圧はコアと同じで固定、FLASHは3V以上必要なので、3.0Vにしました。
I2Cバスのプルアップ
 データシートの推奨値はだいたい1.5Kオームになっているので、それで行きましょう。

こんなかんじで設計は完了です。



ARM®、ARM7TDMI® は、ARM Limited. の登録商標です。
Atmel®、SAM-BA™ は、Atmel Corporation の登録商標、商標です。



トップ工作室>電子系>ARMマイコンボード〜設計など改訂版
Copyright (c) Doramanjyu.com - どら饅頭.com , All rights reserved.