UCI MICRO-CONTROLLER
STUDY GROUP

FALL 2022


This page was originally designed to support the UCI Walking Machines graduate class. We meet once a week to expand our knowledge of basic electronics and software control of devices. This group began with the goal of designing, testing, and evaluating motor and servo control systems that could be used to add locomotion to the walkers. Since its inception, we have expanded into basic electonics, microcontrollers, and software application development. Lesson 10 introduces Visual Studio 2022. We learn how to control Arduino with Windows 10/11 desktop apps! Lesson 11 shows how to program Arduino UNO ATMega328p microcontroller in C and Assembler using Microchip Studio.

1/25/2022: Added Bluetooth demo #2 in Lesson 10. (VS 2022 BT Simple Walkthrough)
1/28/2022: Added SQL Database and desktop app (Lesson 10)
8/16/2022: Added new Lesson 11 on how to program Arduino in C and Assembler using Microchip Studio
8/31/2022: Converted .wmv files to .mp4

 

 

Return to Main Menu 

Arduino Resources

  1. Download & Install Arduino IDE

  2. Please read "Welcome to Arduino" information.

  3. Getting started with Arduino UNO

  4. Arduino Data types

  5. Arduino UNO 3 Specs

Parallax Basic Stamp Downloads

  1. Get your IDE software from Parallax and install it. Let it add USB drivers and associate your .bs2 programs. (PC or MAC)

  2. USB Propscope Software Download

Quick Links

 

Study Group Resources

Using a Sony TV remote to control your critter

Featured Tools & Electronics Items & Tutorials

Topic/Lesson

The Details

  • Lesson 1
    Getting Arduino IDE set up. Learning about basic circuits
    .
    Create our first sketch & learn basic layout skills.
  • Introduction to Electronic Circuits & Arduino Programming
  • Programming
    • Our first Arduino sketch: Blinky. We will make our first Arduino program to blink the LED on our breadboard.
      • Setup & loop sections
      • Variables
      • Delay command
      • DigitalWrite command
      • Setting Pin outputs high and low
    • Downloads & Images
  • Lesson 2
    Using DC motors. How to use diodes & transistors to control a motor.

    Working with H-Bridges to drive DC Motors.
  • H-Bridge using switches.
  • Lesson 3
    Introduction to servos, Serial monitor, & C++ control structures and loops.
  • PWM in more detail

 

 

  • Lesson 4
    Introduction to IR control. Decoding the IR stream with a TV remote.
  • Viewing ocilloscope images of decoded signals.

 

 

  • Lesson 6
    Integrated Controller
    • The Cytron H-Bridge motor controller shield.
    • A complete solution for the walkers
  •  A Complete Walker controller solution: Introducing the IR Cytron Arduino Motor Driver Projects
    • Let's check out the Cytron Motor Drive Shield. This is a Arduino shield that controls 2 DC brushed motors with a minimum of effort. Power is supplied by a 1500mAh Li-Ion quad copter battery pack (or equivalent). Power from this battery powers the Arduino also.
      • Hook up 6 wires and build your IR circuit and the hardware is ready to go!
    • We will add our IR motor controller circuit and code to create a complete Critter Controller system for dual motor walkers.
      • Parts:
        • Arduino UNO or equivalent
        • IR Receiver
        • 220 ohm resistor
        • 47uF electrolytic capacitor
        • .1 uF (#104) ceramic capacitor
        • 2 DC Brushed motors (no encoder needed)
    • IR Receiver OUTPUT connects to UNO Pin#11.
    • IR Power and Ground to 5V on UNO and ground to UNO
    • Place a 47uF capacitor across the IR V+ and V- power pins. This eliminates EMI that can affect the sensor. Be sure the + lead is connected to the V+ pin.
    • Connect the 220 ohm resistor from the IR OUTPUT pin and Pin #11 on the UNO. This limits current on the IR sensor.
    • Place the .1uF across the 5V+ and Ground on the breadboard. This blocks high frequency noise on the power line coming from the UNO.
  • Programming & Downloads and Images
  • Lesson 6 download (code and images)

 

  • Lesson 8
    Introduction to digital electronics and logic gates
      • AND|OR|XOR gate logic chips
      • Voltage Dividers
      • Current Sources
      • Transistors: Digging Deeper
      • The 555 timer chip
      • Discreet 555 Kit
      • Current Mirrors

 

DIGGING DEEPER INTO INTEGRATED CIRCUITS & THE LM555

  • Lesson 9
    Introduction to operational amplifiers (OP-AMPS)
  • Using Comparators
  • Introduction to passive and active RC Filters

 

  • Lesson 10
    Introduction to Arduino and C# programming
  • Introduction to Visual Studio & Arduino Platform development

 

 

  • Introduction to Microchip Studio 7 and C Programming
    • GETTING STARTED HERE:
    • Download Microchip Studio here. This takes a while so be patient. You only need to include AVR Microcontrollers for our class. Pin to your start and/or taskbar
    • Download the simulator herePin to your start and/or taskbar
    • Install AVRDUDE 6.3 to a new folder called C:\AVRDUDE (This uploads C code in MC Studio to UNO board. We can't use the version used in the Arduino IDE.)
    • See my notes on AVRDUDE
    • START CODING HERE:
  • Introduction to Assembly Language
  • Using Loops in Assembler
  • For-Loop video good place to start!
  • 3-BlinkyWithASMLoops project
  • Look here for how to create the external tool in MC Studio to upload to your UNO board.
  •  

    Copyright © 2021-2022 Ronald P. Kessler, Ph.D.
    All rights reserved.
    Revised: August 31, 2022