TENSY 3.2 開発ボードのピン配置を理解する
TENSY 開発ボードは、愛好家、小型ロボットのデザイナー、エンターテイメント設定の作成者を対象とした、小規模なプロジェクトに人気があります。 そのようなボードの 1 つは、PJRC の TEENSY 3.2 開発ボードです (Teensy LC、Teensy 3.5、Teensy 3.6 などの他のボード)。 このボードはブレッドボードと互換性があり、さまざまなプロトタイプや設計を実装するための 32 ビット ARM Cortex-M4 マイクロコントローラー ユニットを搭載した K20 サブファミリーの USB 開発ボードです。 72 MHz の中央処理速度で動作し、高品質オーディオ インターフェイス用の I2S とタッチ センサー インターフェイスも備えています。 TENSY 3.2 開発ボードのピン配置を理解することは、その機能を効果的に活用するために重要です。 ピン配列図は各ピンの機能に関する貴重な情報を提供し、開発者が外部コンポーネントや周辺機器を正しく接続できるようにします。 この記事では、TEENSY 3.2 ピン配列の包括的なガイドを提供し、そのピン図、ピン構成、機能、アプリケーションを詳細に説明します。 開発ボードについて学ぼうとしている初心者であっても、TEENSY 3.2 の機能の活用を目指す経験豊富な開発者であっても、この記事は Teensy 3.2 を効果的に活用する方法を理解するのに役立ちます。
TENSY 3.2 開発ボードの概要
Teensy 3.2 は、ブレッドボードでの使用に適した形式で ARM Cortex 処理能力を提供するように設計された 32 ビット Arduino 互換開発ボードで、愛好家に最適です。 サイズが小さいにもかかわらず、ほとんどの点で同様のサイズの Arduino Nano を上回る優れたパフォーマンスを提供します。 TENSY 3.2 は TENSY 3.1 のアップグレード バージョンで、フラッシュ メモリ容量が 2 倍になっています。 TENSY 3.2 は小さいサイズにもかかわらず強力で、MK20DX256VLH7 マイクロコントローラー ユニットを内蔵しています。 34 個の GPIO ピンとシリアル データ送信用の通信ポートを備えています。 ただし、TEENSY 3.2 開発ボードの裏面に示されているように、はんだ付けなしでアクセスできるのは 24 個の GPIO ピンのみで、残りのピンははんだ付け接続が必要です。 このボードはエネルギー効率が高く、幅広い入力電源をサポートしています。 全体として、TEENSY 3.2 はシンプルで使いやすく、さまざまな趣味のプロジェクトに優れたパフォーマンスを提供します。
その他の開発ボード: Arduino、STM32、ESP12、ESP31、Raspberry Pi、ESP8266
TENSY 3.2 開発ボードのピン配置
Teensy 3.2 のピン図
以下の図は、TEENSY 3.2 開発ボードのフロントエンドからのピン配置を示しています。
以下の図は、TEENSY 3.2 の裏側からのピン配置図を示しています。
Teensy 3.2 ピン構成
ピンのカテゴリ |
ピン名 |
詳細 |
力 |
VIN、3.3V、アナログ GND、GND |
VIN – 外部電源使用時の電源電圧ピン (3.6V ~ 6.0V) 3.3V – オンボードレギュレータからの安定化出力電圧 (最大 250mA) アナログ GND – ADC および DAC の GND として機能し、GND に接続可能 GND – グランドピン
|
アナログピン |
A0~A9、A14 |
ピン A0 ~ A9 および A14 は、13 ビット分解能のアナログ入力として機能できます。 |
入出力ピン |
D0 – D23 |
24 I/O ピン ブレッドボード対応 |
シリアル |
TX1, RX1 TX2, RX2 TX3, RX3 |
3つのシリアルポート |
外部割り込み |
D0 – D23 |
すべてのデジタルピンには割り込み機能があります |
PWM |
D3 – D6 D9 –D10 |
合計 22 個の PWM ピン |
SPI |
DIN, DOUT, SCK, CS |
SPIポート |
内蔵LED |
D13 |
汎用 GPIO インジケーターとして機能する LED |
I2C |
SCL0, SDA0 |
集積回路間通信ポート |
できる |
TX, RX |
CANバスポート |
タッチセンシング |
D0 – D1 D15 – D19 D22 – D23 |
静電容量式タッチセンシングに使用可能 |
デジタルピン
デジタル入力ピン
Teensy 3.2 のデジタル ピンは信号を受信できます。 デフォルトでは、これらのピンは低電力のためにオフになっています。 入力モードに設定するには、pinMode 関数を INPUT とともに使用します。 その後、digitalRead を使用して入力を読み取ることができます。 Teensy 3.2 ピンは 0 ~ 5V の信号を受け入れ、5V 耐性があります。 デジタル ピンを 5V より高く駆動しないでください。
入力プルアップおよびプルダウン抵抗
すべてのデジタル ピンには、オプションのプルアップ抵抗とプルダウン抵抗があります。 これらの抵抗は、外部回路によってアクティブに駆動されていないときにピンをロジック HIGH またはロジック LOW に保つために使用されます。 通常、これらの抵抗は押しボタンやスイッチで使用されます。 これらのピンを内蔵抵抗を使用して入力モードに設定するには、pinMode 関数を INPUT_PULLUP または INPUT_PULLDOWN とともに使用します。
ピン変更割り込み
すべてのデジタル ピンは変化を検出できます。 変更が自動的に検出されたときに関数を実行するには、attachInterrupt を使用します。 割り込みはクリーンな信号に対してのみ使用してください。 バウンス ライブラリは、ノイズや機械的なチャタリングを伴う押しボタン、スイッチ、信号の変化を検出する場合に推奨されます。
デジタル出力ピン
Teensy 3.2 のすべてのデジタル ピンは出力ピンとして機能します。 pinMode 関数を OUTPUT または OUTPUT_OPENDRAIN とともに使用して、これらのピンを出力モードに設定します。 出力モード中にピンを制御するには、digitalWrite 関数とdigitalToggle 関数を使用します。 出力HIGHレベルは3.3V、推奨最大出力電流は10mAです。
パルス幅変調 (PWM)
Teensy 3.2 の 12 個のデジタル ピンはパルス幅変調 (PWM) をサポートしています。 PWM は、モーター速度、薄暗い照明、LED の制御、または高速パルスで平均電力を制御できるその他のアプリケーションに使用できます。 PWM を制御するには、analogWrite 関数を使用します。 PWM 周波数は、analogWriteFrequency 関数を使用して 3 グループの PWM ピンに対して制御できます。
スルーレート制限
Teensy 3.2 のこのオプション機能は、長いワイヤがデジタル出力ピンに接続されている場合の高周波ノイズを大幅に低減します。 これにより、ピンの電圧変化の速度が遅くなり、長いワイヤで問題を引き起こす可能性がある望ましくない高周波の影響を軽減できます。
LEDピン
Teensy 3.2 のピン 13 にはオレンジ色の LED が接続されています。 この LED はステータス情報を表示するのに役立ちます。 ピン 13 を入力として使用する場合は、外部信号がロジック HIGH のときに LED を駆動できることを確認してください。 pinMode INPUT_PULLUP をピン 13 で使用しないでください。
アナログピン
アナログ入力
Teensy 3.2 には、センサーやその他のアナログ信号を読み取るためのアナログ入力として使用できる 21 個のピンがあります。 基本的なアナログ入力は、analogRead 関数を使用して実現されます。 デフォルトの解像度は 10 ビット (入力範囲 0 ~ 1023) ですが、アナログ読み取り解像度で調整できます。 ハードウェアでは最大 16 ビットの解像度が許可されていますが、実際にはノイズのため、通常は最大 13 ビットしか使用できません。 ADC ライブラリを使用すると、アナログ入力のより高度な使用が可能になります。 さらに、アナログ入力はオーディオ ライブラリを使用してオーディオ信号を受信できますが、オーディオ シールドを使用する場合と比べて音質は低くなります。
アナログ範囲と基準電圧
AREF ピンはアナログ入力範囲を設定します。 抵抗により、AREF はデフォルトで 3.3V になります。 外部シャントタイプのリファレンスチップを接続して、より低いリファレンス電圧を得ることができます。 あるいは、analogReference(INTERNAL) を使用してアナログ範囲を 1.2V に設定することもできます。
5 ボルトの許容誤差
デジタル機能を備えたアナログ入力ピンは、デジタル機能が使用されていない場合でも 5V 耐性です。 AREF よりも高く駆動されると、これらのピンは最大読み取り値を測定します。 ただし、デジタル機能のないアナログ入力ピン (A10、A11、A12、A13、A14) は 5V 耐性がありません。 アナログ専用ピンを 3.3V を超える電圧で駆動しないでください。
差動およびプログラミングゲインアンプ
ピン A10 と A11、および A12 と A13 は差動アンプを備えています。
アナログコンパレータ
これらのコンパレータを使用すると、ロジック ローとハイの電圧しきい値を正確に定義して、アナログ信号をデジタルに変換できます。
アナログ出力 / デジタル - アナログ (DAC)
1 つの真のアナログ出力 DAC がピン A14 にあります。 これは、analogWrite または Audio ライブラリで使用できます。
静電容量式タッチセンシング
12 ピンでグランド結合容量を測定できます。 この目的には、タッチパッド (ピン) 機能が使用されます。 Teensy GND がアース、またはユーザーが保持する導電性エンクロージャに接続されている場合、これらのピンを電極に接続して、タッチセンサー式ユーザー インターフェイスを作成できます。 CapacitiveSensor ライブラリを使用して他のピンでもタッチ センシングを実行できますが、これらの 12 ピンの内蔵ハードウェアの方が正確で、はるかに高速です。
通信ピン
USBデバイス
- Teensy の主な通信インターフェイスはメイン USB ポートで、USB デバイス/ペリフェラル モードで 12 Mbit/秒の速度で動作します。 Teensyduino ソフトウェアは、PC または Mac とのさまざまなタイプの USB 通信をサポートしており、[ツール] > [USB タイプ] メニューから選択できます。 複数の種類の USB デバイスを同時に使用できます。
- シリアル - コンピュータによって COM ポート (Windows) またはシリアル デバイス (Mac、Linux) として認識されます。シリアルは、デフォルトで最も一般的に使用される通信タイプです。 バイトは USB の最大速度で両方向に転送されます (ボー レート設定は無視されます)。 Teensyduino には、高速 USB シリアル データ転送用に高度に最適化されたコードが含まれています。 通常、Arduino シリアル モニターで使用されますが、Teensy の USB シリアル モードは、CoolTerm などのシリアル ポート用に設計されたソフトウェアと互換性があります。 Teensy では、シリアル デバイスは「シリアル」としてアクセスされます。 デュアルおよびトリプル シリアル モードでは、追加のシリアル デバイスは「SerialUSB1」と「SerialUSB2」です。
- エミュレートされたシリアル - シリアルなしの USB タイプ設定では、HID インターフェイスを使用してシリアル通信をエミュレートします。 これらのモードでは、PC または Mac は COM ポートまたはシリアル デバイスを検出しませんが、シリアルを使用することはできます。 Print () を実行すると、Arduino シリアル モニターにテキストが送信されます。
- MIDI - 楽器デバイス。 MIDI は、ノブ、スライダー、ボタンを音楽およびサウンド制御ソフトウェアに接続するためによく使用されます。 MIDI メッセージは両方向に送信できます。 Teensyduino の MIDI は「クラス コンプライアント」であり、内蔵ドライバーのみを使用して Macintosh、Linux、および Windows との互換性を保証します。 MIDIx4 および MIDIx16 モードは、4 または 16 個の仮想 MIDI ポート/ケーブルを提供します。 コンピュータに表示される MIDI デバイス名はカスタマイズできます。
- オーディオ - 双方向ステレオ オーディオ ストリーミング。コンピュータによって USB サウンド カードとして認識されます。 コンピューターのサウンド設定を使用して、サウンドを再生するプログラムを Teensy にストリーミングしたり、サウンドを録音または処理するプログラムを USB マイクを使用しているかのように受信したりできます。 USB オーディオは Teensy オーディオ ライブラリで使用するように設計されており、コンピュータのサウンドを Teensy で設計したオーディオ処理システムと統合できます。
- キーボード - これは標準の 104 キー USB キーボードです。 プログラムはキーストロークをコンピュータに送信し、ほぼすべてのソフトウェアを制御できるようにします。 メディアコントロールキー(再生、一時停止、音量など)も使用できます。 [ツール] > [キーボード レイアウト] メニューは、多くの US 以外のキーボード レイアウトをサポートしています。
- マウス - 特別な USB マウスをエミュレートします。 デジタイザー ペンと同様に、通常のマウスの相対的な動きと画面の絶対位置をコンピュータに送信できます。 マウス ボタンとスクロール ホイールもサポートされています。
- ジョイスティック - このタイプは、6 軸 (X、Y、Z、Zr、Slider1、Slider2)、32 個のボタン、および 1 つのハット スイッチを備えたジョイスティック/ゲーム コントローラをエミュレートします。 ジョイスティックに反応するゲームやその他のソフトウェアを制御する場合に便利です。
- タッチスクリーン - 最大 10 個の指の位置を検出できるタッチスクリーンをエミュレートします。
- MTP ディスク - ファイルを共有する電話またはカメラとしてコンピュータによって認識されるメディア転送。
- Flight Sim - X-Plane フライト シミュレーター ソフトウェアとの統合を可能にします。 シミュレーター内の変数とコントロールは、Teensy で実行されているコード内の変数にリンクされます。
- Raw HID - コンピュータ上のカスタム作成ソフトウェアとの 64 バイト メッセージの通信を可能にします。
シリアル
Teensy 3.2 は、MIDI、GPS レシーバー、DMX 照明、ESP ワイヤレス モジュールなどのシリアル デバイスを接続するための 3 つのシリアル ポートを提供します。3 つのシリアル ポートはすべて完全に独立しており、データを同時に転送できます。 (一部の Arduino ボードで行われているように) USB と共有されるものはありません。 Serial1 と Serial2 には、高速ボーレートでのパフォーマンスを向上させる FIFO が含まれています。
I2C
Teensy 3.2 には I2C (信号 SDA および SCL) 用の 2 つのポートがあり、I2C 通信を使用するさまざまなチップに接続できます。 Wire ライブラリは I2C に使用されます。 同じ SDA/SCL ワイヤに接続されている各 I2C チップには、一意のアドレスが必要です。 複数の I2C ポートを使用すると、同じアドレスで複数のチップを簡単に使用できます。 すべての I2C ポートは、100、400、および 1000 kbit/秒の速度をサポートします。
SPI
Teensy 3.2 は SPI (信号 MOSI、MISO、SCK) 用に 1 つのポートを提供し、SPI 通信を使用する高速チップ、SD カード、ディスプレイへの接続を可能にします。 SPI ライブラリは、SPI のソフトウェア サポートを提供します。 より高速な転送を持続するために、FIFO が組み込まれています。 各 SPI チップにはチップ セレクト (CS) 信号が必要です。 SPI を使用するほとんどのライブラリは、任意のデジタル ピンを使用できます。 SPI ポートは特別なハードウェア制御の CS ピンを提供し、特別に最適化されたライブラリはこれを使用してパフォーマンスを向上させます。
できる
Teensy 3.2 には CAN バス用のポートが 1 つあり、CAN 通信を使用する自動車および産業用制御システムへの接続が可能です。 Teensy 3.2 と CAN バス間の電気インターフェイスを完成するには、CAN トランシーバー チップを追加する必要があります。
ピンの特別な機能
入出力:
Teensy 3.2 は、10mA の電流シンク/ソース容量を持つ 34 個の GPIO ピンを提供し、これらのピンではプルアップ抵抗を有効にすることができます。
ほとんどのピンには追加機能もあります。
シリアル ポート - UART プロトコルを使用してデータを送受信します。
- I2C ポート - Wire ライブラリで IIC プロトコルを使用した 2 線式通信用。
- SPI - SPI ライブラリとの高速シリアル通信用。
- PWM - 8 ビットのパルス幅変調方形波を出力し、次の 2 つの関数を使用して制御します。
1.analogWrite() - PWM 波形のデューティ サイクルを設定します。
2.analogWriteResolution() - PWM 解像度を 2 ビットから 16 ビットに変更します。 - アナログ ピンは、次の 3 つの機能を使用して制御できます。
1.analogRead() - アナログ入力に対応する整数値を読み取ります。
2.analogReference() - ADC の基準電圧源を選択します。
3.analogReadResolution() - ADC 変換の解像度を設定します。 - タッチ センシング ピン - 静電容量式タッチ センシング用。タッチパッド () 機能を使用して制御されます。
ピン 13 には LED が内蔵されています。
これらの特別な機能とそれに対応するピンは、Teensy 3.2 の上記のピン図に示されています。
TEENSY 3.2の特徴
- 12ビットDACを搭載し、正確な電圧レベルを生成します。
- 64 のリクエスト ソースによる即時アクセスのための 16 個のダイレクト メモリ アクセス コントローラが含まれています
- 迅速なエラー検出のための巡回冗長検査機能を備えています
- リアルタイムクロック機能用に32 kHz発振器を内蔵
- さまざまな遅延要件に対応する 8 つの異なるタイマーを提供
- パルス符号変調データ伝送用にオーディオデバイスを接続するための I2S (Inter-IC-Sound) インターフェイスを統合
- ウォッチドッグおよび JTAG (Joint Test Action Group) インターフェイスが含まれています
- 使いやすさと本物のアクセシビリティを実現するヒューマン マシン インターフェイスを提供します
- 各マイクロコントローラー ユニット チップには、セキュリティ目的のため固有の識別番号が付いています。
TEENSY 3.2仕様
タイプ |
価値 |
マイクロコントローラー |
MK20DX256 |
動作電圧 |
3.3V |
VINピンの推奨入力電圧 |
3.6V to 6.0V |
アナログ入力 |
21 |
デジタル I/O ピン |
34 |
I/OピンからのDCソース/シンク |
10mA |
フラッシュメモリー |
256KB |
SRAM |
64KB |
EEPROM |
2KB |
周波数(クロック速度) |
72MHz |
コミュニケーション |
I2C, SPI, UART, CAN, USB |
Teensy 3.2 開発ボードに電力を供給する方法
Teensy 3.2 開発ボードに電力を供給するには 3 つの方法があります。
- 内蔵のUSBマイクロコネクタを使用します。
- 5V レギュレータなどの外部電源から 3.6V ~ 6V の電圧を供給します。 この方法をお勧めします。
- 3.3V ピンに 3.3V を直接供給します。 電源ラインがマイクロコントローラーに直接接続されており、スパイクやリップルが損傷を引き起こす可能性があるため、この方法はお勧めできません。
Teensy 3.2 をプログラムする方法
Teensy 3.2 をプログラムするには、C エディターまたは Arduino ソフトウェアを使用できます。 ただし、後者は使いやすさとセットアップが迅速であるため、初心者に好まれることがよくあります。
Arduino ソフトウェアは次のリンクからダウンロードできます。
ソフトウェアをダウンロードしてインストールした後、USB マイクロ ポートを使用して Teensy 3.2 をコンピュータに接続します。
最初のプログラムをアップロードする:
Arduino ソフトウェアで、[ツール] > [ボード] に移動し、メニューから [Teensy 3.2] を選択します。 次に、[ツール] > [ポート] で、正しい COM ポートを選択します。
Teensy 3.2 の内蔵 LED は Arduino ボードと同様にピン 13 に配置されているため、基本的な点滅スケッチを使用できます。 コードを以下に示します。
void setup() {
pinMode(13, 出力); // デジタルピン 13 を出力として設定します
}
void ループ() {
デジタル書き込み(13, HIGH); // デジタルピン 13 をオンに設定します
遅延(1000); // 1秒待ちます
デジタル書き込み(13, LOW); // デジタルピン 13 をオフに設定します
遅延(1000); // 1秒待ちます
}
Teensyduino アドオンを Arduino IDE に追加
Arduino IDE を使用して TENSY 3.2 開発ボードをプログラムするには、次の手順に従います。
- 次のリンクからアドオンをダウンロードします: [Teensyduino をダウンロード]。 このアドオンは、Linux、Windows、macOS で利用できます。 オペレーティング システムに一致する Teensyduino バージョンをダウンロードしてインストールします。 Teensyduino インストーラーは、Arduino IDE で使用する Teensy 開発ボードに必要なすべてのファイルを追加します。
- アドオンが正常にインストールされると、次のような画面が表示されます。 「完了」ボタンをクリックします。
- Arduino IDE を開き、「ツール > ボード」メニューから「Teensy」を選択します。
- LED 点滅の例を開きます。 TENSY の MCU にプログラムをアップロードするには、「ツール」メニューから「TEENSY 3.2」ボードを選択し、コード/スケッチをマイクロコントローラー ユニットにアップロードする通信ポートを選択します。 作成されたプログラムのほとんどは TENSY と互換性があります。 互換性を確認するには、点滅スケッチをアップロードし、ボード上の D13 というラベルの付いた内蔵 LED を観察します。
TEENSY 3.2 開発ボード アプリケーション
TENSY 3.6 開発ボードは、その高い処理能力と高度な機能により、さまざまなアプリケーションで使用される強力で多用途のプラットフォームです。 以下に、そのアプリケーションの詳細な説明を示します。
ラピッドプロトタイピング:
- TENSY 3.6 開発ボードは、電子システムやプロジェクトのラピッド プロトタイピングに広く使用されています。
- 高速プロセッサと広範な周辺機器サポートにより、新しいアイデアやコンセプトを迅速に実装およびテストするのに最適です。
ハードウェア アクセラレーションによる暗号化:
- TENSY 3.6 開発ボードは、ハードウェア アクセラレーションによる暗号化サポートを備えており、安全な通信とデータ暗号化を必要とするアプリケーションに適しています。
- その暗号化機能により、開発者は安全な通信プロトコルとデータ暗号化アルゴリズムを簡単に実装できます。
ロボット工学:
- ロボット工学アプリケーションでは、TEENSY 3.6 開発ボードはさまざまなロボット システムの制御と調整に使用されます。
- 高い処理能力とリアルタイム機能により、センサー データの処理、モーター制御、ロボット工学における意思決定などのタスクに最適です。
LEDストリップ:
- LED ストリップでは、高い処理能力とダイレクト メモリ アクセス (DMA) 機能により、TEENSY 3.6 開発ボードがよく使用されます。
- このボードは LED ストリップを効率的に制御および管理できるため、複雑な照明効果やパターンを簡単に実装できます。
GPS レシーバーと ESP WiFi モジュール:
- TENSY 3.6 開発ボードは、さまざまなアプリケーションの GPS 受信機および ESP WiFi モジュールとともに一般的に使用されます。
- これらのモジュールとの互換性により、位置ベースのサービス、IoT デバイス、およびその他の無線通信システムの開発が可能になります。
Teensy 3.2 開発ボード データシート
Teensy 3.2 開発ボードのデータシートをダウンロードします。
結論
結論として、TEENSY 3.2 開発ボードは、幅広い組み込みプロジェクトに強力で多用途なプラットフォームを提供します。 32 ビット ARM Cortex-M4 プロセッサ、十分なメモリ、さまざまな周辺機器のサポートを備えた TENSY 3.2 は、コンパクトでエネルギー効率を維持しながら、要求の厳しいタスクを処理できます。 Arduino IDEおよびシールドとの互換性により、初心者でも簡単に始めることができます。 全体として、TEENSY 3.2 は、革新的で機能豊富な組み込みシステムを作成したい人にとって最適な選択肢です。
それでもお困りですか?お問い合わせください: [email protected]