マイコンプログラミング基礎

#プログラミング言語・ツール

マイコンプログラミング基礎 C言語・アセンブリから実機センサー制御まで一気通貫で習得

マイコンの「なぜ動くか」まで、実機で理解する。

Overview

研修概要

マイコンプログラミング基礎は、組み込み開発の実務に直結する「C言語によるマイコン制御」と「アセンブリ言語によるCPU動作原理の理解」を習得することを目標とした実践型研修です。演習比率は約70%のハンズオン構成で提供します。

C言語基礎確認からアセンブリ命令の実行、LED・ボタン・センサー・LCDを使った実機制御演習まで一気通貫で扱うことで、デバッグ力の向上と組み込みエンジニアとしての実装基盤を確立させます。

Issues

こんな課題を持つ企業におすすめ

開発現場

  • マイコン・組み込み系の知識を持つエンジニアが育っていないため、IoT機器開発や制御システムを外注に依存し続けている。
  • C言語でコードは書けてもCPUのレジスタやメモリがどう動くか理解できていないエンジニアが多く、デバッグや最適化に時間がかかっている。
  • OJT頼みの組み込み教育になっており、先輩が忙しいと若手への育成が止まる体制課題を抱えている。
  • GPIO・ADC・UARTといったハードウェアインターフェースを体系的に学ぶ機会がなく、実機制御で手が止まることが多い。
  • STM32CubeIDE等のデバッガを使ったトラブルシューティングが教育されておらず、感覚的なデバッグに頼っている。
Goals

本研修の到達目標

For Engineers

開発現場

  • 1 CPUとメモリの動作原理を理解します アセンブリ言語(ARM)の基本命令を学び、作成したプログラムの動作によりマイコンの仕組みを理解できるようになります。
  • 2 デバッガを使いこなして実装できます ブレークポイント設定・ステップ実行・レジスタ確認・メモリウォッチをSTM32CubeIDEで操作し、バグを根拠をもって追えるようになります。
  • 3 実機でセンサーとデバイスを制御できます LED・ボタン・ブザー・光センサー・LCD等の周辺機器をGPIO・ADC・UART・I2C・PWMを通じてC言語で制御できるようになります。
Features

本研修の特長

Feature 01

C言語→アセンブリ→実機制御の一貫した学習フロー

C言語の基礎確認からアセンブリ言語によるCPU動作の理解、実機センサー制御まで一本の流れで習得します。知識が断片化せず、「なぜ動くか」を理解したまま実装力を積み上げられる独自の構成です。

Feature 02

演習比率約70%のハンズオン中心設計

STM32マイコン・センサーキット・ICEを使った実機演習を中心に構成します。講義を聞くだけでなく、手を動かして確かめることで、研修後すぐに実務で使えるスキルを身につけられます。

Feature 03

原理理解と実装力を同時に積み上げる演習設計

「動けばいい」で終わらせず、CPUの内部動作をアセンブリで確かめながらC言語の実装力を積み上げます。なぜそう動くかを理解した上でコードを書く習慣が身につくため、研修後の自走力と応用力が高まります。

Curriculum

研修カリキュラム

期間:5日間 / 使用言語:C言語・アセンブリ(ARM Cortex-M) / IDE:STM32CubeIDE

日程 章・学習テーマ 学習内容・習得スキル
1日目 アセンブリ言語入門①
環境構築・IDEの基本操作

PCへのマイコンボード(ARM-First)とICE(ST-LINK/V2)の接続、STM32CubeIDEのインストールと基本操作を学びます。GPIOの設定方法を確認し、内蔵LEDを点滅させて動作確認を行います。

アセンブリ言語入門②
命令セット・デバッガ操作

アセンブリ命令の基本構文(データ処理・ロードストア・算術・分岐)を学びます。デバッグパースペクティブでブレークポイント設定・ステップ実行・レジスタ確認・メモリウォッチを体験します。

2日目 組み込み実習①
電子回路基礎・デジタル出力

電圧・抵抗・電流・回路の基礎知識とブレッドボードの使い方を学びます。抵抗とLEDで回路を組み、GPIOを出力設定してLEDを点滅させます。

組み込み実習②
デジタル入力・外部割り込み

GPIOを入力プルアップ設定し、スイッチ操作で信号を読み取ってLEDを制御します。NVICによる外部割り込みを発生させ、プログラムの遷移をLEDの変化で確認します。

組み込み実習③
タイマ回路

タイマ機能を利用した割り込みによる動作をLEDの点滅で確認します。周期的なイベント駆動処理の基本を習得します。

3日目 組み込み実習④
USB-PC通信・printfデバッグ

USB接続機能を利用してPC側の端末エミュレーター(TeraTerm)と通信します。printfデバッグの手法を体験し、実機デバッグの感覚を身につけます。

組み込み実習⑤
アナログ入力・出力回路

可変抵抗器を利用した電圧変化をAD変換で読み取りPC側へ表示します。DA変換を利用した電圧変化でLEDの照度を変化させます。PWMを利用した疑似アナログ出力も体験します。

組み込み実習⑥
I2C通信・気圧センサ

I2C接続の気圧センサを利用してPCへ現在の気圧を表示させます。I2Cプロトコルの仕組みと実装方法を習得します。

4日目 センサー演習①
LED・タクトスイッチ・ブザー

GROVE ベースシールド・Arduino Sensor Kitを使用します。LEDの点灯・点滅制御、スイッチ状態の検知とLED連動、ブザーのOn/OffおよびPWMによる音程変化を実装します。

センサー演習②
ロータリー可変抵抗・光センサー

アナログ入力による変化をUART出力でモニターします。光センサーの値を読み取り、明暗に応じたLED制御を実装します。ロータリー可変抵抗でLED照度のコントロールも行います。

センサー演習③
温度センサー・気圧計(I2C)

I2C接続で温度センサーと気圧計の値を読み取り、UART出力でモニターします。複数デバイスのI2C制御を体験します。

5日目 センサー演習④
LCDドライバ作成・表示制御

LCD Keypad ShieldのLCDドライバをゼロから作成します。初期化・クリア・カーソル制御・文字出力・文字列出力などの関数を実装し、気圧と気温をLCDに表示させます。

総合演習・上級者課題

習得した制御技術を組み合わせた総合演習を行います。上級者向けには温湿度センサー(DHT11/DHT20)の利用、ラップタイムウォッチ、トレーシングカー制作などの発展課題に取り組みます。

研修内容のカスタマイズについて 本研修で使用するマイコンボード・センサーキット・IDEについては、御社の実際の開発環境やプロジェクトの技術スタックに合わせてカスタマイズした内容での実施も可能です。日数・カリキュラムの調整もお気軽にご相談ください。
Environment

必要な受講環境と前提知識

受講環境

本研修では以下の機材・ソフトウェアを使用します。実機ハンズオン演習のため、各受講者に1セットの機材をご用意します。

マイコンボード ARM-First(CQ出版社 STM32F405RGT6搭載)
ICE(デバッガ) ST-LINK/V2(RoHs compliant)
IDE STM32CubeIDE 1.18.1(STマイクロエレクトロニクス提供・無償)
センサーキット GROVE ベースシールド / Arduino Sensor Kit
ホストPC Windows PC(USBポート3口以上:マイコンボード・ICE・マウス)
その他機材 ブレッドボード・配線・LED・LCD・抵抗・ボリューム・タクトスイッチ・センサー類・回路部品
参考書籍 「定番STM32で始めるIoT実験教室」(CQ出版社)

前提知識

  • C言語の基礎:変数・条件分岐・ループ・関数の理解が必須です。完全初心者の場合はC言語入門研修の先行受講を推奨します。
  • 組み込み・ハードウェア知識:組み込み開発やマイコンの経験は不要です。電子回路・ハードウェアの基礎知識がある場合はよりスムーズに受講できます。
Contact

お問い合わせ

本研修に関するご質問・お申し込みは、以下のフォームよりお問い合わせください。
担当者より2営業日以内にご連絡いたします。