データシートを読む(デバイスを知る)
マイクロチップテクノロジー社によって提供されるデータシートは、PICマイコンの最良の情報源のひとつです。前書きから「デバイスを知る」ための情報を得ることができます。
4-3-1.データシート
PICマイコンの開発元であるマイクロチップテクノロジー社によって提供されるデータシートは、PICマイコンの最良の情報源のひとつと言えます。データシートは、デバイス毎に用意されており、回路設計に必要なピンの配置・電気的特性や、プログラミングに役立つメモリ構成・各機能の使用方法などさまざまな情報が記載されています。
下図「PIC16F1827のデータシート(表紙)」は、「4-2.PIC16F1827」でダウンロードしたPIC16F1827のデータシートの表紙です。このデータシートを使って、データシートの読み方を紹介します。なお、紹介するデータシートは2011/04/29に発行されたものです。将来、内容が改訂されることがありますので注意してください。
PIC16F1827のデータシート(表紙)
PIC16(L)F1826/27 Data Sheet - DS41391D (表紙)
PICマイコンのデータシートでは、前書きとして、最初の数ページにそのデバイスを知るための特徴がまとめられています。この部分を読むことで、そのデバイスにどのような特徴があり、何ができるのか、そのイメージをつかむことができます。前書きに記されている情報は、次のようなものです。
- デバイスの概要
- ファミリータイプ
- ピン配置図
- ピン割り当て表
ただし、前書きの情報だけでは、回路設計やプログラミングなど「デバイスを使う」ことはできません。あくまでも「デバイスを知る」ことを目的としたものです。
4-3-2.デバイスの概要
3ページ目にこのデバイスの概要が記載されています。このページを見ると、デバイスの持つ特徴や内蔵された機能について知ることができます。PIC16F1827のデータシートでは、6つの項目に分かれ、各々の特徴が記されています。
- High-Performance RISC CPU
(高性能なRISC CPU) - Flexible Oscillator Structure
(柔軟なオシレーター構造) - Special Microcontroller Features
(特殊なマイクロコントローラー機能) - Extreme Low-Power Management PIC16LF1826/27 with nanoWatt XLP
(nanoWatt XLPによるPIC16LF1826/27の超消費電力機能) - Analog Features
(アナログ機能) - Peripheral Highlights
(周辺機能の特徴)
PIC16F1827のデータシート(デバイスの概要)
PIC16(L)F1826/27 Data Sheet - DS41391D (Page.3)
Flexible Oscillator Structure(柔軟なオシレーター構造)には、高精度32MHz内部オシレーター・31kHz低消費電力内部オシレーター・3つの外部クロックモードなど、選択できるオシレーターについて記されています。
PIC16F1827のデータシート(Flexible Oscillator Structure)
PIC16(L)F1826/27 Data Sheet - DS41391D (Page.3)
Special Microcontroller Features(特殊なマイクロコントローラー機能)には、デバイスの動作可能な電源電圧の範囲・システムの信頼性を高める機能・コードの保護機能などについて記されています。
PIC16F1827のデータシート(Special Microcontroller Features)
PIC16(L)F1826/27 Data Sheet - DS41391D (Page.3)
Analog Features(アナログ機能)とPeripheral Highlights(周辺機能の特徴)を見ると、このデバイスに内蔵された機能について知ることができます。アナログ機能として、12チャンネルの10ビットADC(アナログデジタルコンバーター)・コンパレーターモジュール・参照電圧モジュールなどを内蔵しています。
PIC16F1827のデータシート(Analog Features)
PIC16(L)F1826/27 Data Sheet - DS41391D (Page.3)
また、周辺機能として、16本の入出力端子(うち1つは入力のみ)・8ビット/16ビットタイマー・CCPモジュール・ECCPモジュール・シリアル通信(I2C・SPI)などを内蔵していることがわかります。合わせて、各機能の特徴が記されています。
PIC16F1827のデータシート(Peripheral Highlights)
PIC16(L)F1826/27 Data Sheet - DS41391D (Page.3)
4-3-3.ファミリータイプ
4ページ目にファミリータイプの一覧があります。PICマイコンは、ベースになるデバイスと同じ特徴を持ちながら、メモリーのサイズを増やしたり、内蔵する機能を追加したものをファミリーとして扱い、同じデータシート上にファミリーの情報をまとめて記載しています。
PIC16F1827のデータシート(ファミリータイプ)
PIC16(L)F1826/27 Data Sheet - DS41391D (Page.4)
このファミリータイプの一覧には、デバイス毎のメモリーサイズや内蔵している機能の数が記されています。PIC16F1827は、ベースとなるPIC16F1826と比較して、プログラムメモリー・データメモリー(SRAM)が増え、ECCP・CCPといった機能が追加されています。
4-3-4.ピン配置図
4ページ目~5ページ目にかけて、ピン配置図が記載されています。ピンの配置は、PDIP・SOIC・SSOP・QFN/UQFNといったパッケージの形状によって異なるので、形状毎にピン配置図が記されています。パッケージの形状については「1-4.PICマイコンのパッケージ」を参考にしてください。
下図「PIC16F1827のデータシート(ピン配置図)」は、PICA Tower(ピカタワー)に搭載されているPIC16F1827と同じ形状であるPDIPのものです。パッケージの切り欠きを上にして、左上のピンから反時計回りに1~18までの番号が振られています。
PIC16F1827のデータシート(ピン配置図)
PIC16(L)F1826/27 Data Sheet - DS41391D (Page.4)
また、番号とは別に、ピンの持つ機能に応じて名前が付いています。このピン配置図では、入出力端子としての機能が割り当てられたピン(RA0・RA1など)・電源(VDD・VSS)などが記されています。入出力端子としての機能が割り当てられたピンの数(RA0~RA7・RB0~RB7)が、ファミリータイプの一覧で示された数16と一致していることがわかります。
4番ピンの名称が「RA5/MCLR/VPP」となっているのは、このピンに複数の機能があることを示します。この端子には、入出力端子「RA5」・リセット「MCLR」・書き込み用電圧「VPP」の機能があります。このようにPICマイコンは、ひとつのピンに複数の機能を持たせ、設定によって使い分けられるようになっています。
4番ピン以外のピンにも複数の機能がありますが、とても多いため次項の「ピン割り当て表」にまとめられています。
4-3-5.ピン割り当て表
6ページ目にピン割り当て表が記載されています。この表を見ると、ピンに割り当てることができる機能と、その名称を知ることができます。
PIC16F1827のデータシート(ピン割り当て表)
PIC16(L)F1826/27 Data Sheet - DS41391D (Page.6)
例えば、PDIPパッケージの18番ピンには、入出力端子(I/O)としてのRA1が割り当てられていますが、アナログデジタルコンバーター(A/D)の機能を割り当てるとAN1になります。また、タッチセンサー(Cap Sense)の機能を割り当てるとCPS1になります。
4-3-6.目次
7ページ目に目次が現れます。この目次以降のページが「デバイスを使う」ための情報です。
PIC16F1827のデータシート(目次)
PIC16(L)F1826/27 Data Sheet - DS41391D (Page.7)
データシートの前書きを読むことで、PIC16F1827がどのようなPICマイコンなのか、そのイメージをつかむことができたのではないでしょうか。目次以降は、さらに詳しい情報が掲載されています。回路設計やプログラミング時に役立つものです。
では、PICA Tower(ピカタワー)でのプログラミングに必要な環境を「4-4.プログラミング環境を準備する」で見てみましょう。
PICマイコン関連のおすすめ品
data-sheetを使用した、赤・緑・青・黄のLED27個を円柱状に光らせる3Dイルミネーションキットです。data-sheetのプログラムは書き換えが可能で、C言語によるプログラミングが学習できます。詳しいマニュアルは株式会社イーケイジャパンよりダウンロードできます。
エレキット ピカ・タワー AW-864
エレキットのアートする電子工作シリーズ。 LED(発光ダイオード)を使用した3Dイルミネーションキットです。LEDは赤・緑・青・黄の4色、全部で27個使用して、円柱状に配置したLEDを光らせます。
PICマイコンのプログラミング(C言語)について、最新の開発環境を使って解説した役立つ一冊です。
PIC16F1ファミリのアーキテクチャ、新しい開発環境であるMPLAB IDE Xの使い方、C言語によるPICのファームウェア開発方法、内蔵モジュールの使い方と具体的な製作例などについて詳細に解説しています。