マイクロコントローラー ユニット (MCU) は、組み込みシステムの中核の 1 つとして、現代の電子製品に広く普及しています。スマート ホーム、自動車エレクトロニクスから産業用制御、医療機器に至るまで、MCU は無数のインテリジェント アプリケーションの開発をサポートします。
初心者にとって、マイクロコントローラーは馴染みのある概念であると同時に、馴染みのない概念であるかもしれません。私たちは日常生活の中で、電子レンジ、エアコン、スマートウォッチなど、マイクロコントローラーで制御されるデバイスに頻繁に触れることが多いため、よく知られています。{1}マイクロコントローラーはハードウェア、ソフトウェア、通信プロトコル、組み込み開発などの分野に関係しており、初心者にとってはどこから始めればよいのかわからないことがよくあります。
この記事では、マイコンの開発の歴史、分類、応用シナリオ、コア機能、主流メーカー、学習のヒントなど、マイコンの基礎知識を体系的に紹介します。あなたがエレクトロニクス愛好家の初心者であっても、マイクロコントローラーの開発を徹底的にマスターしたいエンジニアであっても、この記事は貴重な参考になると思います。
01、マイコン開発の歴史
マイクロコントローラーユニット(MCU、Microcontroller Unit)の開発の歴史は1970年代にまで遡ります。初期の 4- ビットおよび 8 ビット アーキテクチャから今日の 32 ビットおよび 64 ビットの高性能 MCU に至るまで、MCU の計算能力、電力制御、統合は根本的な変化を遂げてきました。現在、MCU は組み込みシステムの中核となり、産業用制御、家庭用電化製品、自動車用電子機器、モノのインターネットなどの分野で重要な役割を果たしています。
1.1. MCU開発のポイント
1.1.1. 1970s: MCU の誕生
1971 年、Intel は世界初のマイクロプロセッサ Intel 4004 をリリースし、マイクロプロセッサ時代の始まりを告げました。. 1976、Intel は、CPU、RAM、ROM、およびキーボード、プリンタなどのデバイス用の I/O ポートを統合した世界初の真のマイクロコントローラである MCS-48 シリーズ (例: 8048) をリリースしました。キーボードやプリンターなどのデバイス用のポート。
1.1.2. 1980s: 8051 標準敷設
1980 年にインテルは、CISC (複雑命令セット) アーキテクチャとタイマー、割り込みコントローラ、シリアル通信を内蔵した 8051 マイクロコントローラを導入しました。-これは当時の組み込み開発の主流となりました。 8051 の成功により、多くのベンダー (Atmel、NXP、ST など) が 8051 アーキテクチャと互換性のあるマイクロコントローラーを導入し、8051 は組み込み分野における「黄埔陸軍士官学校」となり、現在でも使用されています。
1.1.3. 1990s: 16 ビットおよび 32 ビット マイクロコントローラーの台頭
16- ビット マイクロコントローラ (TI MSP430 など) が市場に参入し、低電力アプリケーションに焦点を当てました。. 32- ビット アーキテクチャが登場し始めました。たとえば、ARM の ARM7 プロセッサは、8 ビット マイクロコントローラよりも高い演算能力、高速な動作速度、より多くのペリフェラルを備えています。 PIC (Micromicro PIC16/32) と AVR (Atmel Mega) が導入されました。 PIC (Microchip PIC16/32) と AVR (Atmel Mega シリーズ) は、家電製品やスマート ホームで普及しつつあります。
1.1.4. 2000s: ARM Cortex-M が市場を支配
2004 年に、ARM は Cortex-M3 を発売しました。これにより、低消費電力かつ高-MCU の新時代が生まれました。. 2007、ST は、高-パフォーマンス、低消費電力、豊富な機能を備えた ARM Cortex-M3 コアを採用した STM32 をリリースしました。- ESPPは周辺機器として利用され、産業制御、IoT、カーエレクトロニクスなどの分野で急速に普及しています。また、家電やスマートホームエレクトロニクスの分野でもESPPは普及しています。 2007 年に ST は、高性能、低消費電力、豊富な周辺機器を備えた ARM Cortex-M3 コアを搭載した STM32 をリリースしました。これは産業用制御、IoT、自動車エレクトロニクスなどで急速に普及しました。ESP8266 と ESP32 の登場により、低コストの MCU を可能にする Wi{20}}Fi IoT の開発が推進されました。- インターネットに簡単に接続できます。
1.1.5 2010 年から現在まで: 国産 MCU の台頭、RISC-V の急速な発展
2015年以降、GD32、CH32、HK32など、国産MCUが急速に発展し、徐々に海外ブランドに挑戦しています。 CH32V、Sai Fang、Huawei Hi3861 などの RISC-V アーキテクチャが台頭し、徐々に家庭用電化製品や産業用制御の市場に参入しています。 2020年以降、AIコンピューティングやエッジコンピューティングMCU(STM32H7、ESP32-S3など)が注目を集めており、MCUのコンピューティング能力は向上し、AI推論や機械学習などのタスクを徐々にサポートしています。
1.2 MCUの開発動向
より高いパフォーマンスとより低い消費電力:32- ビット MCU が主流となり、一部の 64 ビット MCU が市場に参入し始めています。超低電力テクノロジーは、ウェアラブル デバイス、ワイヤレス センサー、その他のアプリケーション向けに常に最適化されています。
無線接続の普及:Wi-Fi、BLE、LoRa、ESP32 や nRF52 シリーズなどの他の無線通信プロトコルが広く統合されています。国内 MCU の継続的な開発: 国内メーカーは、GD32、CH32、RISC{{7}V MCU などのコスト効率の高い MCU を発売し続けており、徐々に市場を掌握しています。AI+MCU の組み合わせ: ESP32-S3 などは AI 推論をサポートしており、MCU は将来的により多くの AI コンピューティング機能を備えます。技術の継続的な進歩に伴い、MCUはより幅広い分野で役割を果たし、将来のインテリジェントハードウェアの中核となるでしょう。
02、マイコンの分類と応用
マイクロコントローラー (MCU) には多くの種類があり、アーキテクチャ、ビット数、用途などのさまざまな基準に従って分類できます。さまざまなタイプの MCU がさまざまなアプリケーション シナリオでそれぞれの利点を発揮するため、エンジニアが適切なプログラムを選択するには、その特性とアプリケーションの範囲を理解することが重要です。
2.1 ビット番号による分類
マイクロコントローラーは、CPU が処理するデータのビット数に応じて 8 ビット、16 ビット、32 ビット、さらには 64 ビットのマイクロコントローラーに分類でき、それぞれのタイプに独自の利点と応用分野があります。
2.1.1 8- ビット マイクロコントローラー
代表的な製品:8051、AVR(ATmega328Pなど)、PIC16F、STC89C、CH554
特徴:リソースが限られており、通常は数 KB のフラッシュ、数百バイトの RAM が統合されており、LED 制御、温度と湿度の収集、小型家電制御などの単純な制御に適しており、低コスト、低電力で、単純なアプリケーションの大規模な量産に適しています。-
アプリケーションシナリオ:スマート ホーム (ファン タイミング コントロールなど)、おもちゃ、電子時計、キーボード、マウス、赤外線リモコン。
2.1.2 16-ビットMCU
代表的な製品:MSP430、PIC24F、HCS12。
特徴:8- ビット MCU よりも強力な計算能力があり、より複雑なロジック制御と信号操作を処理できます。低消費電力設計に優れており、バッテリー駆動の機器に最適です。
アプリケーションシナリオ:医療機器(例:電子血圧計)、スマートメーター(例:電子水道メーター、スマートメーター)、産業用制御(例:インバーター、センサーデータ処理)。
2.1.3 32- ビット マイクロコントローラー
代表的な製品:STM32、ESP32、GD32、CH32V、NXP LPC、ATSAM。
特徴:コンピューティング能力が大幅に向上し、浮動小数点演算、DSP 処理などがサポートされています。{0} CAN バス、USB、イーサネット、Wi-Fi、Bluetooth などの豊富な周辺機器。消費電力が最適化され、高性能と低消費電力の両方を実現します。
アプリケーションシナリオ:産業オートメーション (PLC コントローラー)、IoT デバイス (スマート ホームに適用された ESP32、Wi-}Fi コントロール)、家庭用電化製品 (ハンドヘルド デバイス、スマート ブレスレット、ドローン)。
2.1.4 64- ビット マイクロコントローラー
代表的な製品:RISC{{1}V プロセッサ(Hi3861 など)などの一部のハイエンド MCU。{0}}
特徴:組み込みプロセッサのレベルに近いスーパーコンピューティング能力。高性能エッジ コンピューティング、AI 処理に適しています。-
アプリケーションシナリオ:マシン ビジョン、AI コンピューティング、ハイエンド自動運転システム、産業用エッジ コンピューティング機器。{0}}
2.2.アーキテクチャによる分類
現在、マイクロコントローラーは主に CISC (Complex struction Set Computer) と RISC (Reduced struction Set Computer) の 2 つのカテゴリに分類されます。
| 建築 | 代表的な製品 | 主な特徴 |
|---|---|---|
| CISC | 8051、写真 | 豊富な説明書があり、初期のアプリケーションに適しています |
| RISC | STM32(ARM Cortex-M)、RISC-V | 低消費電力、高性能、幅広いアプリケーション |
CISC アーキテクチャ (例: 8051):命令セットが複雑で消費電力が高い従来のアーキテクチャですが、依然として特定の分野で使用されています。
RISC アーキテクチャ (例: ARM Cortex-M):より高い実行効率とより低い消費電力を備えた簡素化された命令セットであり、最新の MCU の主流の選択肢となっています。
近年、RISC-V アーキテクチャ (Qin Heng CH32V など) が急速に発展し、32 ビット MCU 市場における ARM の優位性に挑戦しています。
2.3.アプリケーションシナリオによる分類
さまざまな分野に適したマイクロコントローラが異なります。以下は、最も一般的なアプリケーション分野の一部です。
2.3.1.産業用制御
特徴:高い安定性、高温耐性、強力な干渉防止機能を備えたマイクロコントローラーが必要です。{0}} CAN、RS485、Modbus、EtherCAT などの産業用通信プロトコルのサポートが必要です。
代表的なMCU:STM32F4/F7 (イーサネット、USB、CAN をサポート)、GD32 (高性能国内 MCU)。-
応用例:PLCコントローラー、ロボットコントローラー、センサーデータ処理。
2.3.2.モノのインターネット (IoT)
特徴:低消費電力、無線通信機能(Wi-Fi、Bluetooth、LoRa)、リモート制御、データ収集、クラウド接続を実行する機能が必要です。
代表的なMCU:ESP32 (Wi-Fi + BLE)、nRF52 (Bluetooth Low Energy BLE)、Hi3861 (RISC-V)。
応用例:スマート ホーム (例: スマート ドア ロック、スマート照明制御)、ワイヤレス センサー (例: 環境モニタリング)。
2.3.3.家電
特徴:高度な統合が必要で、通常はタッチスクリーン、ディスプレイ制御、オーディオ/ビデオ処理が含まれます。
代表的なMCU:STM32H7 (高性能、マルチメディア アプリケーション)、ESP32-S3 (AI および音声処理をサポート)。
応用例:スマートブレスレット、電子フォトフレーム、音声アシスタント。
2.3.4.カーエレクトロニクス
特徴:高い信頼性が要求され、自動車規格(AEC-Q100 認証など)に適合し、CAN バスと LIN バスをサポートします。
代表的なMCU:NXP S32K (車載グレード MCU)、STM32G4 (車載制御アプリケーションをサポート)。
応用例:自動車計器盤(電子時計)、エンジン制御、ADAS(先進運転支援システム)。
2.3.5.医療機器
特徴:低消費電力、高精度、強力な安定性。
代表的なMCU:MSP430 (超低消費電力)、STM32L4 (低消費電力 + 高い計算能力)。
応用例:心拍数モニター、血糖計、電子血圧計。
さまざまな種類のマイクロコントローラーにはそれぞれ独自の利点があります。初期の 8- ビット 8051 から最新の 32 ビット STM32、ESP32、さらには RISC-V MCU に至るまで、各世代のマイクロコントローラーは計算能力の強化、消費電力の削減、統合の最適化を続けています。 MCU を選択する際には、性能、消費電力、周辺機器、コストを総合的に考慮して、最適なソリューションを見つけることが重要です。将来的には、AIやモノのインターネットの発展に伴い、MCUはますますインテリジェントになり、その適用範囲は拡大し続けるでしょう。
03. マイコンの基本機能
マイクロコントローラー (MCU、マイクロコントローラー ユニット) は、計算、ストレージ、制御、通信などの複数の機能を組み合わせた高度に統合された組み込み制御チップです。その主な目的は、単純な LED 点滅から複雑な産業オートメーション アプリケーションに至るまで、特定のタスクを自動化することです。
完全なマイクロコントローラーには、通常、CPU (中央処理装置)、メモリー (ROM、RAM)、I/O インターフェース、タイマー/カウンター、割り込みシステム、および通信インターフェースが含まれています。これらのモジュールは連携して動作し、マイクロコントローラーが制御タスクを効率的に実行できるようにします。
3.1.1. CPU (中央処理装置)
CPU はマイクロコントローラーの「頭脳」であり、命令の実行、データの処理、さまざまな周辺機器の制御を担当します。
主な機能:プログラム命令の読み取り (フラッシュ メモリから保存されたコードの取得)、計算および論理演算 (加算、減算、乗算、除算、論理判定など) の実行、およびペリフェラル (PWM、GPIO、ADC など) の制御。
パフォーマンスパラメータ:クロック速度: 命令が実行される速度を決定します。たとえば、STM32F103 は最大 72MHz、ESP32 は最大 240MHz です。命令セット アーキテクチャ (ISA): 例: CISC (8051)、RISC (ARM Cortex-M、RISC-V)
3.1.2.メモリ(ROM、RAM、EEPROM)
メモリはマイクロコントローラの重要なコンポーネントであり、プログラム、データ、中間計算結果の保存を担当します。一般的なメモリの種類は次のとおりです。 ROM (読み取り専用メモリ)/フラッシュ: ユーザー プログラム (ファームウェア) を保存し、停電後もデータは失われません。たとえば、STM32F103C8T6 には 64KB の内部フラッシュが搭載されています。
RAM (ランダム アクセス メモリ):プログラム実行中に変数、スタックなどを保存するために使用されます。電源を切るとデータが失われます。たとえば、STM32F103C8T6 には 20KB の内部 RAM が搭載されています。
EEPROM (消去可能な読み取り専用メモリ):Wi{0}}Fi 設定やデバイス パラメータなど、電源が切断されても保持する必要があるデータを保存するために使用されます。 AVR (ATmega328P) には EEPROM が組み込まれていますが、STM32 では EEPROM をエミュレートするためにフラッシュが必要です。-
3.1.3. I/O ポート (GPIO、汎用入力/出力)
GPIO (汎用入出力) は、MCU と外部の通信の基盤です。-これらは入力モードまたは出力モードとして設定できます。
入力モード:ボタンの状態、センサーデータなどの高/低電圧信号を読み取ります。例: フォトレジスタは周囲の光の強度を測定します。出力モード:7 セグメント ディスプレイの制御など、LED、リレー、ブザーを制御します。-例: LED インジケーターの点灯。
多くの MCU は特別な I/O モードもサポートしています。PWM (パルス幅変調): LED の明るさを調整し、サーボ モーターの角度を制御するために使用されます。アナログ入力 (ADC):STM32 の 12- ビット ADC など、温度と電圧の測定に使用されます。オープンドレイン モード: I²C バス通信に使用されます。
3.1.4.タイマー/カウンター
タイマーとカウンターは、遅延、パルスカウント、PWM 生成などの正確な時間制御に使用されます。
タイマーモード:1 秒後にイベントをトリガーするなど、正確な遅延を生成します。例: 電子ストップウォッチ、タイマーアラーム。
カウンタモード:速度センサーなどの外部パルス数をカウントします。例: スピードメーター、タコメーター。
PWM生成:モーターの速度を制御し、LEDの明るさを調整します。例: DC モーターの PWM 速度制御。
一般的なタイマーのタイプ:基本タイマー (STM32 TIM6 など)、汎用タイマー (PWM 生成に使用できる STM32 TIM2/TIM3 など)、および高度なタイマー (モーター制御に使用できる STM32 TIM1 など){4}}。
3.1.5.割り込みシステム
割り込みは、ポーリングによる CPU リソースの浪費を避けるために、ボタンが押されたときに割り込みをトリガーするなど、より緊急のタスクを処理するために現在のタスクに割り込むメカニズムです。外部センサー データが到着すると割り込みをトリガーして、リアルタイムのデータ応答を確保します。-定期的にタスクを実行するためのタイマー割り込み。
一般的な割り込みタイプ:外部割り込み (ボタン検出、信号トリガー)、タイマー割り込み (1 ミリ秒ごとにトリガーするなど、時間指定されたタスク)、およびシリアル ポート割り込み (データの受信時にトリガー)。
3.1.6.通信インターフェース
マイクロコントローラーの通信インターフェイスは、マイクロコントローラーと外部デバイス間のブリッジです。さまざまなシナリオに適したインターフェイスが異なります。
| 通信方法 | 特徴 | 一般的なアプリケーション |
|---|---|---|
| UART | 低速のポイントツーポイント通信に適しています。- | センサー、シリアルポートデバッグ、Bluetoothモジュール |
| SPI | 高速、全二重 | 液晶画面、SDカード |
| I²C | 短距離および複数のデバイスに適しています | EEPROM、OLED画面 |
| CANバス | 自動車および産業用制御アプリケーションに最適 | -車載 ECU 通信 |
| USB | 高速データ送信- | USBストレージデバイス、HIDデバイス |
たとえば、スマート ブレスレットでは次のようになります。
I²C は OLED ディスプレイに接続します
SPIはフラッシュメモリチップに接続します
UART は Bluetooth モジュールに接続します
3.1.7.番犬
ウォッチドッグ タイマー (WDT) は、プログラムのクラッシュを防ぐ安全メカニズムです。
プログラムに異常が発生した場合 (無限ループに入るなど)、ウォッチドッグはシステムを再起動します。
定期的に「犬に餌を与える」(WDT をリセットする) 必要があります。そうしないと、MCU がリセットをトリガーします。
アプリケーションシナリオ: 産業用機器 (プログラムのフリーズによる障害の防止)、スマートホームデバイス (スマートドアロックなど)。
3.7.8.アナログ機能 (ADC/DAC)
ADC (アナログ-から-デジタル コンバータ) と DAC (デジタル-から-アナログ コンバータ) により、MCU はアナログ信号を処理できます。
ADC (アナログ-から-デジタル コンバーター):温度やバッテリー電圧の測定など、アナログ信号をデジタル信号に変換します。
DAC (デジタル-から-へのアナログ コンバータ):オーディオ再生や信号出力など、デジタル信号をアナログ信号に変換します。
たとえば、心拍数監視デバイスでは次のようになります。ADC はフォトダイオード センサーから信号を読み取り、パルス波形を計算します。
マイクロコントローラーの中核機能には、計算、ストレージ、I/O インタラクション、タイミング、通信、割り込み管理、およびアナログ信号処理が含まれます。最新の MCU は急速に進化しており、単純な制御にとどまらず、高性能、低消費電力、インテリジェンスを目指して進歩しています。家電制御、産業オートメーション、IoT デバイスのいずれにおいても、MCU は不可欠なコア コンポーネントです。将来的には、AI と無線通信の発展により、マイクロコントローラーの応用範囲はさらに広がるでしょう。
04. 世界をリードするマイクロコントローラーメーカー
マイクロコントローラー (MCU) 市場は競争が激しく、さまざまなメーカーがアーキテクチャ、パフォーマンス、消費電力、エコシステム サポートの点で独自の機能を提供しています。現在、世界の MCU 市場は主にいくつかの大手半導体メーカーによって支配されており、ARM エコシステムと非 ARM エコシステムの 2 つの主要な陣営に分かれています。-以下は主要な MCU メーカーとその製品ラインです。
4.1. STマイクロエレクトロニクス (STマイクロエレクトロニクス)
代表的なシリーズ:STM8、STM32(F0/F1/F4/F7/G0/H7/U5など)
建築:STM8 (8- ビット)、STM32 (ARM Cortex-M)
市場での地位:組み込み開発分野のリーダーである STM32 シリーズ MCU は、強力なパフォーマンス、豊富なエコシステム、低コストで知られており、産業用制御、家庭用電化製品、スマート ホーム、および自動車エレクトロニクスで広く使用されています。
利点:
STM32 製品ラインは、低消費電力 (L シリーズ)、高パフォーマンス (F/H シリーズ)、超低消費電力 (U シリーズ) をカバーしています。{{1}
HAL ライブラリ、STM32CubeMX 構成ツール、公式開発ボードを提供する完全なエコシステム
豊富な開発リソースと活発なコミュニティがあり、初心者に適しています
4.2.テキサス・インスツルメンツ(TI)
代表的なシリーズ:MSP430 (超低消費電力 16- ビット)、TM4C (Cortex-M4)、C2000 (デジタル信号制御)、Sitara (Cortex-A)
建築:MSP430 (16- ビット)、TM4C (ARM Cortex-M)、C2000 (DSP + MCU)
市場での地位:TI は、超低消費電力、アナログおよび混合信号、産業用制御の分野で重要な地位を占めています。{0}{1}{1} MSP430 は低電力センサーや医療用電子機器で広く使用されており、C2000 はモーター制御や DSP コンピューティングで大きな存在感を示しています。{4}
利点:
MSP430 は超低消費電力で知られており、-バッテリー駆動のデバイスに最適です-
C2000 は、モーター制御およびパワー エレクトロニクスに適した強力な DSP 機能を提供します
TI は、Code Composer Studio (CCS) IDE と豊富な公式リファレンス デザインを提供しています。
4.3. NXP (NXP セミコンダクターズ)
代表的なシリーズ:LPC (Cortex-M)、Kinetis (Cortex-M)、i.MX (Cortex-A)、S32 (自動車-グレード MCU)
建築:ARM Cortex-M、Cortex-A、PowerPC
市場での地位:NXP は、産業用制御、IoT、自動車エレクトロニクス、特に自動車エレクトロニクス(車載グレード MCU)市場で大きな市場シェアを獲得しており、強力な競争力を誇っています。{0}
利点:
LPC シリーズ MCU は、低消費電力と高集積性で知られており、IoT デバイスに適しています。
Kinetis シリーズはより高い計算パフォーマンスを提供し、産業用途に適しています。
i.MX シリーズは、高性能組み込みシステム (Linux デバイスなど) に適しています。-
車載グレードの MCU(S32 シリーズ)は、ADAS(先進運転支援システム)と車両接続市場を支配しています。{0}
4.4.マイクロチップ (マイクロチップテクノロジー)
代表的なシリーズ:PIC (8/16/32- ビット)、AVR (Arduino エコシステム)、SAM (Cortex-M)
建築:PIC (独自アーキテクチャ)、AVR (RISC)、Cortex-M
市場での地位:Microchip は主に低コスト、低消費電力のアプリケーションをターゲットとしており、家電製品、スマート コントロール、家庭用電化製品に適した PIC および AVR シリーズ MCU を備えています。{0}{1}
利点:
PIC シリーズ MCU は、その安定性、信頼性、低コストで知られています
AVR MCU (ATmega328P など) は Arduino エコシステムで広く使用されています
SAM シリーズ (Cortex-M) は、より高性能な MCU オプションを提供します。-
Microchip は MPLAB X IDE と幅広いアプリケーション ソリューションを提供します
4.5.ルネサス(ルネサス エレクトロニクス)
代表的なシリーズ:RL78 (超低消費電力 16- ビット)、RX (高パフォーマンス 32- ビット)、RA (ARM Cortex-M)、RZ (Cortex-A)、RH850 (車載グレード)
建築:RL78 (16- ビット)、RX (CISC 32 ビット)、ARM Cortex-M/A、PowerPC
市場での地位:ルネサスは産業オートメーション、自動車エレクトロニクス、家庭用電化製品で強力な市場シェアを保持しており、特に車載グレードの MCU で業界をリードしています。{0}}
利点:
RL78 シリーズは、低電力アプリケーション (スマート メーターなど) に適しています-
RX シリーズは、産業用制御に最適な高性能コンピューティング機能を提供します。{0}
RH850 シリーズは、パワートレイン システム、ADAS、ボディ制御で広く使用されている主流の車載 MCU です
公式開発ツールとリファレンス デザインの豊富なセットを提供
4.6.インフィニオン
代表的なシリーズ:XMC (Cortex-M)、AURIX (自動車-グレードの TriCore)、PSoC (プログラマブル システム-オン-チップ)
建築:Cortex-M、TriCore(自動車-グレード)、PSoC(独自のアーキテクチャ)
市場での地位:インフィニオンは、自動車エレクトロニクス、電源管理、安全制御の分野で主導的な地位を占めています。
利点:
AURIX MCU は、自動車のパワートレイン システムおよび ADAS アプリケーションで広く使用されています
PSoC シリーズは、スマート制御に適した強力なプログラム可能なアナログおよびデジタル周辺機器を提供します
XMC シリーズは産業オートメーションおよび IoT デバイスに最適な選択肢です
4.7. Silicon Labs (Xinke Technology)
代表的なシリーズ:EFM32 (Cortex-M)、Wireless Gecko (ワイヤレス MCU)
建築:ARM コーテックス-M
市場での地位:Silicon Labs はワイヤレス MCU と IoT デバイスを専門とし、そのワイヤレス SoC はスマート ホームおよびウェアラブル デバイス アプリケーションで非常に優れたパフォーマンスを発揮します。
利点:
EFM32 シリーズ MCU は、消費電力が低いことで知られています。
Wireless Gecko は、Zigbee、Bluetooth、Sub- GHz 通信をサポートしています
スマートホームやワイヤレスセンサー分野で広く応用されています
4.8.国内メーカー(中国MCUの急速な発展)
近年、国産マイコンが急速に台頭しており、主なメーカーとしては以下のようなものが挙げられます。
ギガデバイス:GD32 (STM32 と互換性あり)、産業用制御および家庭用電化製品で広く使用されています
華達半導体:家電製品やスマートデバイスを中心に採用されているHC32シリーズ
ハンシュンチップ:家電・AIoT分野をターゲットとしたHS32
チンヘン (CH32):USB およびワイヤレス通信をサポートする、RISC-V MCU の大手メーカー
北京順正:X2000 (MIPS ベース)、主に AIoT に適用
現在、世界の MCU 市場は、ST、TI、NXP、Microchip、Renesas、Infineon などの大手メーカーによって独占されています。国内の MCU も急速に発展しており、特に低消費電力、無線通信、自動車グレードのアプリケーションで画期的な進歩を遂げています。{{1}将来的には、RISC-V アーキテクチャ MCU が競争の新たな焦点になる可能性があり、世界のマイクロコントローラー市場は引き続き非常にダイナミックです。
05. マイコンを学ぶためのヒント
マイクロコントローラー(MCU)は組み込みシステムの中核として機能し、電子エンジニアにとって必須の学習科目です。{0}しかし、多数のモデル、複雑なレジスタ構成、周辺ドライバに直面すると、初心者は圧倒されてしまうことがよくあります。どうすればすぐに始めて、短期間で開発テクニックを習得できるでしょうか?以下は、よくある落とし穴を避けるためにマイクロコントローラーを学習するための効果的なヒントです。
5.1.初心者向けに適切なマイクロコントローラーを選択する
多くの初心者は、「8- ビット、16- ビット、または 32- ビットの MCU を学ぶべきか?」という質問に悩んでいます。実際には、エントリーレベルの MCU を選択する場合、鍵となるのはビット数ではなく、よく発達したエコシステム、豊富なリソース、開発者にとって使いやすい機能です。以下にいくつかの推奨事項を示します。
超-低-コストのエントリー-レベル:STC89C52 (51 マイクロコントローラー、初心者の練習に最適)
初心者に最適な選択肢:STM32F103 (豊富なリソース、STM32 を始めるための古典的なモデル)
工業用-グレードのアプリケーション:GD32、NXP Kinetis、Renesas RX(現実世界のプロジェクトに近い)-
IoTの方向性:ESP32 (WiFi + Bluetooth を統合、IoT に最適)
おすすめ:最初からハイエンド MCU (STM32H7 や i.MX RT など) を選択しすぎないでください。そうしないと、複雑なクロック構成、DMA、キャッシュ、その他のメカニズムによって落胆する可能性があります。{0}
5.2. C言語の基礎を固める
マイクロコントローラーのプログラミングは 99% の時間 C 言語に依存しています。基礎がしっかりしていないと、周辺機器のドライバを書いたり、レジスタを操作したりするのは非常に困難になります。以下を習得することに重点を置くことをお勧めします。
ポインタ:レジスタとメモリ マップド I/O ポートの操作に不可欠{0}
構造:ペリフェラル レジスタ構造 (STM32 の GPIO_InitTypeDef など) を解析するために使用されます。
ビット単位の演算: Used for register configuration (e.g., GPIOx->ODR |= (1<< 5))
メモリ管理:スタックを理解して再帰や配列のオーバーフローなどの問題を回避する
実践に関する提案:
volatile キーワードを使用して、メモリ マップされたレジスタを操作します。{0}
ペリフェラル構成構造体の typedef 構造体定義について理解します。
公式マイクロコントローラー ライブラリのソース コード (STM32 HAL ライブラリなど) を読み、C 言語の使用を分析します。
5.3.最も基本的なマイクロコントローラー周辺機器を理解する
マイクロコントローラーの中核機能は、周辺機器を制御することです。以下に、いくつかの重要な周辺機器とそのアプリケーションを示します。
GPIO (汎用入力/出力)-- LED、ボタンの制御
USART (シリアル通信)- シリアル デバッグ、ホスト コンピューターとの通信
I2C/SPI (外部センサー通信)- OLED、EEPROM、センサーを接続する
ADC (アナログ-から-デジタル変換)- 電圧および温度センサー信号の取得
PWM (パルス幅変調)- サーボ制御、モーター速度制御、LED 輝度調整
タイマー- 正確な時計と定期的なタスクの生成
DMA (ダイレクト メモリ アクセス)- データ転送効率の向上
学習に関する推奨事項:
First, directly configure GPIO using registers (e.g., STM32's GPIOx->MODER) の基礎となる原則を理解します。
次に、公式ライブラリ (HAL、LL ライブラリなど) を学習し、レジスタ-ベースの構成とライブラリ関数の違いを比較します。
実践的なプロジェクト(LCD ディスプレイ、超音波測距、LED の PWM 制御など)を通じて徐々に理解を深めます。
5.4.理論的な議論を避け、実践的なプロジェクトを通じて学びます
開発ドキュメントを暗記するのは非効率的な学習です。最善のアプローチは実践して学ぶことです。初心者に適した実践的なプロジェクトをいくつか紹介します。
LEDランニングライト(GPIO)
シリアルポートデバッグアシスタント (USART)
I2C OLED ディスプレイ (I2C)
DS18B20 温度センシング (1 線式 + ADC)
PWM輝度調整(PWM+タイマー)
超音波距離測定 (GPIO + タイマー)
MPU6050 姿勢検出 (I2C + データフィルタリング)
学習方法:
最初にレジスタを使用して実装します(低レベルの原則)-
次に、公式の HAL ライブラリ (エンジニアリング アプリケーション) を使用して実装します。
最後に、同時タスク管理を追加するために RTOS (FreeRTOS など) への移植を試みます。
5.5.公式マニュアルとリファレンスコードを読む
最も信頼できるリソースは特定のチュートリアルではなく、MCU 公式ドキュメントです。例えば:
データシート:チップの電気的特性とピン定義を紹介します。
リファレンスマニュアル:レジスタの構造や周辺機能を詳しく解説
アプリケーションノート:特定のアプリケーションシナリオをカバーする公式サンプルコード
デベロッパー フォーラムと GitHub オープンソース プロジェクト-: 実用的なコードにアクセスし、業界がソリューションを実装する方法を確認します
推奨される読む順序:
まず、データシートを確認してチップの基本パラメータを理解します。
リファレンス マニュアルと組み合わせると、特定のペリフェラル (GPIO、USART、ADC など) を理解できます。
公式コードをダウンロードして初期化プロセスを分析し、構成を登録します
オープンソース プロジェクトを参照して、コード標準とエンジニアリング管理スキルを向上させます。{0}
6. 非効率な試行錯誤を避けるためにデバッグ スキルをマスターする
MCU プロジェクトを開発する場合、コーディングよりもデバッグのスキルが重要です。一般的なデバッグ ツールには次のものがあります。
シリアル ポート印刷デバッグ (printf/RTT): 最も単純な方法ですが、リアルタイム パフォーマンスに影響します。-
J-Link/SWD オンライン デバッグ: シングルステップ実行、ブレークポイント、変数モニタリングをサポート-
ロジックアナライザー (Saleae):I2C、SPI、および UART 信号を分析する
オシロスコープ:PWM波形とADC信号を表示
GDB/OpenOCD:Linux 上の組み込みシステムをデバッグする
デバッグのヒント:
問題が発生した場合は、まず回路をチェックし、波形を調べ、コードを解析します。やみくもに解決策を試みないでください
ブレークポイントと変数監視を使用してプログラムの異常を特定する
ロジック アナライザーとオシロスコープを組み合わせてハードウェア信号をデバッグしてみる
7. 継続的に学習し、業界のトレンドを常に最新の状態に保つ
MCU分野は急速に進化しています。従来の 8/16/32- ビット MCU に加えて、RISC-V アーキテクチャは近年、次のように大幅な成長を遂げています。
国内の RISC-V MCU (例: Qinheng CH32V307、GD32VF103)
低電力 AIoT MCU(AI コンピューティングをサポートする ESP32-S3 など){0}}
車載グレードの MCU-(NXP S32、Renesas RH850 など)
学習に関する推奨事項:
MCU フォーラム、WeChat 公式アカウント、GitHub (STM32 開発者コミュニティなど) をフォローしてください。
RTOS (FreeRTOS、Zephyr) を学び、マルチタスク管理をマスターする
組み込みシステムにおける Rust のアプリケーションを調査して、より安全な MCU 開発方法を発見します。




