Skip to main content Skip to local navigation
Home » Page 9

Blog posts

VPL: Basic Custom Evaluation Example

VPL: Basic Custom Evaluation Example

Sometimes you need to go beyond the default settings in VPL. That means creating a custom "run" and "evaluate" setup. Here, I'll simplify a great example by Dominique Tiebaut, Emeritus prof at Smith College, written for an assignment in C. (archive) We'll check a "hello world" example in C, but won't use the default evaluate.cases […]

Debuggers, MPLAB X and the Arduino

Debuggers, MPLAB X and the Arduino

This page is about programming ATMEGA328 chips, like the one found on the Arduino UNO, using modern (post 2015) tools like MPLAB X and the Snap or PICKit4 debuggers. As of July 2021 there is a little hiccup in how to do this. Hopefully in the future Microchip will fix the issue and render this […]

VPL: Simplest Working Example

VPL: Simplest Working Example

Virtual Programming Lab can be a little intimidating to use, but once you get the swing of things, it's pretty good. So, let's get you started with the simplest possible working example. We assume that: you have Moodle working at your institution someone has installed VPL on Moodle and you don't need or have access […]

Pedagogy in a Pandemic: Teaching without Exams

Pedagogy in a Pandemic: Teaching without Exams

This is the first semester that I've taught 100% online.  The Fall 2020 lockdown and the YorkU strike in 2018 gave me a taste of what it would be like and alerted me to the need for restructuring of my classes in order to make them more favourable to learning.  During the pandemic, students are struggling but […]

Modifying an Arduino for MPLAB X

Modifying an Arduino for MPLAB X

To allow the UNO to be programmed by the PICKit 4 via the ICSP header (circled in blue, below), we need to cut the reset signal trace that links the '328P processor to the USB Bridging chip that is also found on the UNO, the MEGA16U2. There are also two other wires that we won't […]

2020/21's First Year Students: Arduinos, Matlab and Java

2020/21's First Year Students: Arduinos, Matlab and Java

Introduction The 1st year programming courses in the Lassonde School at YorkU were revamped for the 2020/21 school year so that students could do hands-on lab activities from home.  The students took two programming classes: Matlab procedural programming in Fall 2020 Java object-oriented programming in Winter 2021 In both courses the students used Arduino-compatible hardware […]

“Home Security and Automation” Project Description

“Home Security and Automation” Project Description

[What the project is to achieve, a half to one page. Please describe the educational component of the project.] Home security projects are relatively common for engineering and computer science students.  They typically focus on a superficial and limited technical implementation. The objective of this project is to learn how to design a system that […]

A Project to Compare C and C++

A Project to Compare C and C++

I want to spend my sabbatical year re-thinking my perspective on C++ and Assembler and how to teach engineering and computer science material using those two languages. To keep myself focused I'll need a target application, ideally with hardware.  In fact, two applications would be ideal: Controlling chip heat Alarm system The first application would […]

Rethinking C, C++ and Assembler

Rethinking C, C++ and Assembler

I don't like Assembler programming.  I was forced to use it in 1997 in EE 380 on the Motorola 68000 with Prof NelsonDurdle at the University of Alberta.  Ditto, for C++.  My C professor, Prof. Martin Mintchev, in EE 445 convinced me that it was bloated and terrible.  So, since that time, I've been programming in C on […]

Welcome to my Classroom

Welcome to my Classroom

The Teaching in Focus (TiF) conference at York was held online in 2021 due to the pandemic.  Here's a list of the abstracts.  My "Welcome to my Classroom" talk was based on the work I did in EECS 1011, 1021 and 2021: Giving students rapid and accurate feedback is vital. We can do so with […]