コンテンツにスキップ

Week 4 - Embedded Programming (revised in 2026)#

  • Author: Yosuke Tsuchiya
  • Created: 02/11/2026

Agendas#

  1. Review the Class lecture
  2. Brief Overview of Electronics
  3. Check the assignments
  4. Discussion for this week plan
  5. Demonstration of Embedded Programming
    • Arduino
    • Micro Python

Overview of Electronics#

See also other resources in local session (it provide in the session)

Assignments#

Also check the Assessment Page

Group Assignment#

  • demonstrate and compare the toolchains and development workflows for available embedded architectures

どのマイコンボードでもよいので、プログラミングのワークフロー、開発環境の構築手順等をドキュメンテーションする

Past Group Documentations

  • 2025: Arduino, M5Stack Core, XIAO RP2040
  • 2023: ARDUINO ( XIAO SAMD21; XIAO ESP32; ATmega328P), Micropython (Xiao RP2040)
  • 2022: Raspberry Pi, micro:bit
  • 2021: ESP32, micro:bit
  • 2020: ESP8266, micro:bit, Scratch GPIO on Raspberry Pi, ESP32-WROOM2,
  • 2019: STM32 F103, Raspberry Pi,
  • 2018: Raspberry Pi, micro:bit

Individual Assignment#

  • browse through the data sheet for a microcontroller
  • write and test a program for an embedded system using a microcontroller to interact (with local input &/or output devices) and communicate (with remote wired or wireless connections)
  • extra credit: try different languages &/or development environments

Programming Ideas

There is no need to program the code from scratch - but you need to write an original program. Let’s start by changing Neil’s code.

Minimam Requirement: to interact (with local input &/or output devices) and communicate (with remote wired or wireless connections)

  • Push Button -> Blink LED
  • Serial Communication: Put character from PC -> reply something.
  • using some input/output equipments (sensors, motors…)
    • You don’t need to do it with connecting your final project in this class. Input/Output devices will be trated in detail later.

Past Individual Assignment

Here would be old fasion…

Equipments for Sessions#

以下、このセッション向けに用意しているものです

dev board

  • Seeed Studio XIAO: RP2040 x 2, ESP32-C3 x2, RP2350 x 1 , SAMD XIAO
  • Raspnerry Pi Pico: Pico, Pico WH, Pico2
  • QPAD x 2
  • Barduino 2.0
  • ATTiny3216 Dev Board (+UPDI-FTDI Convert module + FTDI module)
  • Shoko Kudomi’s Dev Board

Sensors, Acctuators

  • LED(砲弾LED)各種
  • タクトスイッチ
  • Neopixel
  • SSD1306 OLEDディスプレイ
  • ILI9341 ディスプレイ
  • サーボモーター

Resources#

Dev Board

Datasheet

Programming Environment

Support Documents

Programming Ideas#

There is no need to program the code from scratch - but you need to write an original program. Let’s start by changing Neil’s code.

Minimam Requirement: Programming to interact (with local input &/or output devices) and communicate (with remote wired or wireless connections)

  • Push Button -> Blink LED
  • Serial Communication: Put character from PC -> reply something.
  • using some input/output equipments (sensors, motors…)
    • You don’t need to do it with connecting your final project in this class. Input/Output devices will be trated in detail later.

Advice#

プログラミングスキルを身につけるコツ

  • 写経:
    • サンプルコードを読みながら、実際に手で書き写し、実際に動作させるを繰り返しながら身につけていく
    • ただひたすら書いていたら意味なし。ちゃんと考えて、実際にコードを動作させながら書き写す作業を行う
    • 生成AIから作ったコードも、ただコピペするのではなく、実際に読み、書き、実行することが大切
  • 良いプログラムをたくさん写経する
  • 書いて実行するを繰り返す トライアンドエラーを実践