Skip to main content Skip to local navigation
Home » Category: 'embedded' (Page 3)

embedded

Microcontroller Labs (TP) at INSA Strasbourg

On this page you will find the documents for the “TP” (Practical Time) lab that I instructed at the INSA Strasbourg Engineering School in Strasbourg, France while I was on sabbatical from York University.  Links to videos and other material are included in the PDFs.  The lab uses the Microchip Curiosity board, with built-in debugger […]

The LED on my PIC16 board won’t light up!

I’m getting set to teach a lab course at INSA Strasbourg in France, using PIC16 microcontrollers.  My colleagues and I have made the decision to update the course from using the classic PIC16F84 to the more capable PIC16F1619.  The ‘1619 is a bit more complex (a downside) but has debugging capability, like breakpoints (a big […]

Getting Started with the Adafruit Metro M0 Express

I bought the Adafruit Metro M0 Express because it has both a debugger port soldered on and has a SAMD21 chip on it.  While it has a bootloader and CircuitPython on it, I’m actually only interested in using it as a potentially student-friendly development platform for learning C / C++ on the Cortex M0+. I […]

Interrupts, Bit Clearing and Setting in XC8

While testing out the PIC16F88 replacement for the PIC16F84 on the INSA microcontroller teaching board I ran into issues with two things not working as per the standard sources of examples (e.g. Microchip’s Developer Wiki): Interrupt Service Routines Bit setting, clearing via structures These examples appear to have been written for versions of XC8 prior […]

Embedded Systems course in Karlsruhe, Germany

I’ll be teaching the IP 411 “Embedded Systems for Engineering Applications” class at HS Karlsruhe in October as part of my sabbatical activities.  It will take place over four days: Fri 12 October 2018, 2 pm – 5.30 pm Sat 13 October 2018, 9 am – 5.30 pm Fri 19 October 2018, 2 pm – 5.30 […]

Debugging with Breakpoints: Simulation is not the Real Thing

As my deadline for producing teaching material for the PIC16 boards at INSA Strasbourg approaches, I’m running into real world debugging issues. Now, it’s important to point out that I’m trying to make sure that my teaching material is debugging-focused and provides an opportunity for self-directed learning. The first attempts at running a program on […]

Programming the INSA PIC16 Board

After a few months twiddling PIC16 bits in simulation I need to get three, three-hour lab sessions written up for the PIC16F84.  The school has provided me with two versions of their PIC16F84A boards, one designed for Mechatronics students and one for EE students. The board designs date to the dawn of the Arduino era […]

Choosing a platform for teaching microcontroller programming

While planning a book on programming microcontrollers I’ve been trying to settle on a small group of microcontrollers that could be used for examples. Every couple of years I do this to myself.  Below are a few examples, including the ubiquitous Arduino UNO with an 8-bit chip, as well as the FRDM-KL25Z and Adafruit Metro […]

A Simple Program on Three Simple Microcontrollers: Compare and Contrast

Introduction Here we’re going to “kick the tires” on examining a simple example program, using three 8-bit microcontrollers: the classic PIC16F84A, it’s updated cousin found on the Microchip Curiosity Board, the PIC16F1619, and the ATMEGA328P made famous by the Arduino UNO. We’ll be using a “debugging first” approach to programming that is intended to enable students […]

Is Assembler the Latin of Programming Languages?

How bad and outdated is Assembler?  For many of us, Assembler is the Latin of programming languages.  Below, I talk about my changing perspective on this. In preparation for the embedded systems course I’ll be helping to teach at the INSA in Strasbourg I’m reviewing my PIC-based teaching material, mostly based on the PIC32.  This […]