R8C/Tinyはルネサステクノロジが開発したM16C(三菱)をベースにしたマイコンです。 豊富な周辺機能、C言語向けの命令群を持ちながら、手ごろな価格で入手することができます。 CPU自体は16bitなので、(8bitの)AVRやPICと比べるとかなり強力です。 また、周辺機能もかなり豊富ですし、ROM/RAMのサイズも比較的大きいです。 AVRやPICじゃ力不足だけど、H8はちょっと大げさ、なんていうときにもってこいだと思います。 とはいえ、価格的にはAVRよりちょっと高いくらいなので、気軽に使うことができます。
100716 | 「レジスタバンクをKPITで使う」の項を追加しました。 |
090825 | v0901とv0902の一部のヘッダファイルとスタートアップルーチンの変更点 |
090701 | しばらく見てない間に、v0902がリリースされてました。 |
秋月で入手できるものも含めて新しいデバイスに対応しているようです。 |
最近(080404現在)になって秋月電子でデバイスが手に入るようになりました。 基本的に表面実装しかないので、変換基板等用意しないといけないのが面倒かもしれません。 (面実装が入手できるというのは利点とも考えられますが)
Group | Number | ROM /RAM | Flash | USART | I2C | AD | DA | TMR 16 | TMR 8 | DTC | Package | 価格 |
---|---|---|---|---|---|---|---|---|---|---|---|---|
R8C/24 | R5F21246SNFP | 32k/2k | 2 | 1 | 12 | 0 | 2 | 3 | LQFP52-0.65 | 400@秋月 | ||
R8C/25 | R5F21256SNFP | 32k/2k | 2k | 2 | 1 | 12 | 0 | 2 | 3 | LQFP52-0.65 | 450@秋月 | |
R8C/26 | R5F21262SNFP | 8k/512 | 2 | 1 | 12 | 0 | 1 | 3 | LQFP32-0.8 | 350@秋月 | ||
R8C/26 | R5F21266SNFP | 32k/1.5k | 2 | 1 | 12 | 0 | 1 | 3 | LQFP32-0.8 | 400@秋月 | ||
R8C/27 | R5F21276SNFP | 32k/1.5k | 2k | 2 | 1 | 12 | 0 | 1 | 3 | LQFP32-0.8 | 430@秋月 | |
R8C/29 | R5F21294SNFP | 16k/1k | 2k | 1+1 | 1 | 4 | 0 | 1 | 3 | LSSOP20-0.65 | 300@秋月 | |
R8C/2A | R5F212AASNFP | 96k/7k | 3 | 1 | 12 | 2 | 4 | 3 | LQFP64-0.5 | 500@秋月 | ||
R8C/2B | R5F212BASNFP | 96k/7k | 2k | 3 | 1 | 12 | 2 | 4 | 3 | LQFP64-0.5 | 550@秋月 | |
R8C/2D | R5F212DCSNFP | 128k/7.5k | 2k | 3 | 1 | 20 | 2 | 4 | 3 | LQFP80-0.5 | 650@秋月 | |
R8C/38C | R5F2138ACNFP | 96k/8k | 4k | 3 | 1 | 20 | 2 | 5 | 3 | 1 | LQFP80-0.5 | 450@秋月 |
開発には、ルネサスが出しているHew(High-performance Embeded Workshop) という統合開発環境を利用することができます。 また、Cコンパイラはルネサス純正のものとGCCのものがあり、 どちらのコンパイラでも Hewのツールチェーンに登録して使用することができます。 ただし、ルネサス純正のコンパイラは60日の試用期間がすぎると、 リンクできるプログラムサイズが64kに制限されます。
私はGCCのコンパイラを使ってますが、よくよく考えるとR8CのROM容量では 64kで十分な気もします。(しかも、Section設定がわからなくて結局フルで使えてない) 今のところ、ルネサス純正のコンパイラの方が効率の良いコードを生成しますし、 最新のデバイスの対応も早いと思うのでそちらのほうをオススメします。
書き込みはH8と同様シリアルで行うので、特別なライタなどは必要ありません。 R8CのTxD1/RxD1とパソコンのシリアルポートをつなぐだけで書き込みができます。 書き込みには、ルネサスが配布しているFlashStarterを使用します。