Skip to main content Skip to local navigation
Home » Category: 'programming'

programming

VPL & Java 17

VPL & Java 17

In our first year programming class for engineering students, EECS 1021, we're using modern features like jShell and var. Unfortunately, the OS that our VPL instance sits on came with an older version of Java, so we've had to modify our scripts to point to the Java 17 JDK. If you get an error like […]

Firmata & Java

Firmata & Java

Firmata is a set of Arduino projects that are aimed at helping solve a particular class of problems with embedded devices: having a main computer send and receive data from an Arduino, typically in a simple control or data-logging application. This is similar to how people use the Arduino support for Matlab. In Java we […]

Lab Kit details for EECS 1011/1021

Lab Kit details for EECS 1011/1021

EECS 1011 (and 1021) Lab Kit The EECS 1011 kit will be available for purchase from the York University Bookstore. The link for all lab kits at the Bookstore is here. As soon as it is available your course instructor will let you know. While the official kit is designed to work for most students, […]

VPL: Circuit Simulation Assignments with SPICE

VPL: Circuit Simulation Assignments with SPICE

Introduction In YorkU's EECS Department, we have access to NGSPICE on our department's Linux machines (via RemoteLab). NGSPICE is yet another variation on the venerable SPICE circuit simulator. Our the University's Moodle system, eClass, we have access to Virtual Programming Lab, a framework for making interactive exercises for students. It is typically used with programming […]

LPC802 & LPC804 Microcontroller lessons

LPC802 & LPC804 Microcontroller lessons

These are copies of the lessons and labs that I developed for the LPC802 and LPC804 microcontrollers by NXP. These are the "student" versions and contain blanks in certain places on purpose. Course Outline (EECS 3215 Winter 2020) Introduction to the design of embedded systems using both hardware and software. Topics include microcontrollers; their architecture, […]

Virtual Programming Lab

Virtual Programming Lab

Virtual Programming Lab is a plugin for Moodle (eClass at YorkU) that permits interactive programming assignments to be made for students.   There are some really good examples at Smith College on how to set it up with Python and a few with Java and C. I've posted, on YouTube, an example of how to […]

At Home Electronics Lab Kits for Engineering

At Home Electronics Lab Kits for Engineering

this is a work in progress... nothing is finalized and no decision made at this point.  Just doing a market survey for now... many people need to be consulted and this will have to be a joint decision... We'll use an internal (to York) Teams page to flesh out the details. Key characteristics Price. (low […]

Matlab and Arduino

Matlab and Arduino

The programming and embedded systems curriculum in engineering should be constantly revised as the underlying methods and technologies are constantly changing. Here, I'm exploring how we can update the systems we use in our first year programming class at the Lassonde School.    Low barriers to entry are key as many of our students have […]

Wakeup Timer on the LPC804

Wakeup Timer on the LPC804

Here is an example of running a timer on the LPC804, originally written in C and then modified to work in C++14 on MCUXpresso 11.1. Here we're using the 1MHz Low Power Oscillator to drive the Wakeup Timer on the LPC804. The same code would work as a C++ project on the LPC802 (OM40000 board) […]

C++ and the LPC802: type casting

C++ and the LPC802: type casting

It appears that the C++ compilers in MCUXpresso don't like the C-style type casting that are found in some macros used by the SDK for the LPC802. One of our students, Richard, discovered that a change needs to be done to a pair of macros that reside inside of fsl_clock.h in order for C++ to […]