STM32F103C8フロント
これは48ビット32ビットマイクロコントローラーです。 そして、これはArduinoを使用している人にとっては素晴らしいアップグレードオプションです。
規模を拡大するため、Arduino Proの隣に置きました。これは、通常のArduino Unoよりも小さいものです。
マイクロコントローラ自体のサイズはまったく同じです。脚のピッチは0.8ではなく0.5mmであるため、32ではなく48の同じケースに収まります。しかし、ボードは小さく、納品時の価格は10ドルからです。
そして、機能についてはどうですか?
Arduino
32 kBフラッシュ
2 kB RAM
1 kB EEPROM
Arduinoの最大20 MHzの8ビットATMEL AVRアーキテクチャは、16 MHzで動作します。 1 MIPS / MHz
供給電圧は8MHzで5Vまたは3.3Vであり、5V耐性ではありません。
汎用ピンGPIO-20
それらの:
PWM-6(サーボ制御用ハードウェアPWM-2)
ADC入力-6(10ビット)
周辺機器:
I2Cバス
SPIバス
1 UART
1x 16ビットタイマー
2x 8ビットタイマー
まあ、少し詳細:割り込みコントローラ、ウォッチドッグ。
SPI-4線式インターフェース(MOSI、MISO、SCK、RST)またはブートローダーを以前にフラッシュした場合はUARTを介してプログラムされます。これには最大2kbのフラッシュが必要です。
STM32F103C8
64 kBフラッシュ(STM32F103CBを入れた場合は128 kb(2.6ユニットから))
20 kB RAM
32ビットARM CORTEX-M3アーキテクチャ、最大72MHz、1.25MIPS / MHz
電源電圧3.3V(2.7-3.6)、ほぼすべてのピンは5V耐性です。 ボードには3.3Vの電圧レギュレータがあり、外部の5VまたはUSBから給電されます。
汎用ピンGPIO-26
それらの:
PWM-12(すべてサーボ制御に適しています)
ADC入力-6(12ビット、1μs)
周辺機器:
3x USART
2x I2C
2x SPI(18Mbit / s)
1 x CAN 2.0B
USB 2.0 FS(フルスピード-12Mbit)
3 x 16ビットタイマー+ 1 PWMタイマー
DMA-7チャネル(ADC、SPI、I2C、USART)
RTC-リアルタイムクロック(32768 Hzの水晶は既にはんだ付けされています)、MKがスリープまたは停止しているときでもバッテリーで動作できます。
バックアップレジスタ-MKが主電源からオフになっている時間のクロックとともに、バッテリで駆動されるレジスタ
CRC-チェックサム計算ユニット
96ビットの一意のID MK
SWD経由でプログラム可能-2線式インターフェースまたはJTAG(業界標準)。
ハードウェアデバッグがあります-プロセッサレジスタを調べ、周辺全体のステータスを確認し、プログラムをステップ実行し、RAMとフラッシュの値を手動で変更し、いつでも変数の値を確認し、ブレークポイントを設定できます。
消去できない有線ブートローダーもあり、通常のUARTを介してMKをフラッシュし、ジャンパーを再配置できます。
ボード機能
機能はシックです。 欠点のうち、トレーニングの入門基準が高いだけです-MKには機会が非常に多く、すぐに対処することはできません。 しかし、詳細なドキュメントがあり、例があります。 それらは、AVR Atmega、特にその配線を備えたArduinoほど原始的ではありませんが、特に複雑でもありません。
一般的に、私の意見では、ボードは価格を含むすべての点で Arduino を上回っています。 STM32 MKシリーズSTM32F100、F101、F102、F103、F104、F105、F107はすべて1つのケースで完全にピン互換であるため、配線を変更せずにチップを交換するだけでボードの機能を拡張できます。 48、64、100、144の脚から選択できます。 そして、古いシリーズ(F4など)にはもっとあります。
昨日、このボードのUSB HIDを使用して、このMKに適応した変更なしのプロジェクトを見つけました。 その結果、USBボードをコードで接続します。 ドライバーをインストールする必要はありません。ボードは標準のHIDデバイスと見なされます。 USBサポートは完全にハードウェアで、最大8つのエンドポイントです。 PCとの双方向通信に1つのエンドポイントを使用しています。 Delphiプログラムは、LEDを制御し、通常のHIDレポートの形式でボタンの状態を受け取ることができます。 パケット交換は、ヘッダーをいじり、パケットの先頭と末尾を検索する必要があるUARTストリームよりもはるかに便利です。 COMポートがプログラムによって占有されている場合、誰も接続できません。 デバイスを無効にすると、プログラムはCOMポートを正しく閉じることができなくなります。 USB HIDにはこのような問題はありません。 完全にホットプラグ。 私はそれを引き出し、デバイスを挿入しました。プログラムは再起動せずにその場で再接続できます。
MKでは、すべてが割り込みで機能するため、ほとんどの場合は休止しているだけで、便利なものを使用できます。AVR用のV-USBとは異なり、MKはUSBのソフトウェアエミュレーションにほとんど対応しておらず、欠陥があります。
まあ、視覚愛好家のために、私たちはLEDを点滅させます:)
すぐに私のサイトにSTM32の開発ツールとIDE EmBlocksをツールチェーンとともに投稿し、ColinkExをサポートするために最終決定し、私がよく使用するMK:STM32F103VE、STM32F103C8、STM32F100RBの下でテンプレートを少しコーミングします