Course Software
This is the minimum software package to get you going with programming in assembly language and C. The C compiler is a bit messy to install. RTFM.
AsmIDE
Lightweight freeware integrated editor and assembler for the HC12.
Download the installation zip file for the latest version from the
author's page.
To install, unpack the contents of the ZIP file in a folder like
Program Files\AsmIDE\, then create a shortcut and manually
add it to your Start menu.
SimHC12 Simulator
Students enrolled in MPRO1131 and EMBS6100 are entitled to a licensed copy of the HCS12 simulator. Others can purchase a copy from Prof. Tom Almy's site). The original freeware version of the HC12 simulator is also available there.
The HCS12 simulator requires a Java Runtime Environment. The JRE is installed on all DC-UOIT lab PCs and Mobile Learning laptops. If you don't have it, download JRE from Sun's Java site.
GNU C Compiler for 68HC12
To compile C programs you will need a C compiler. The GNU-m68hc11 C compiler (GCC) is able to run under Windows to cross-compile C programs for the HC12 and HCS12 architectures.
Get a Windows .EXE installer package from the
project download page.
Accept the default installation directory C:\usr.
GCC was originally written to run on UNIX/BSD/Linux, so it is a command line program with dozens of arcane command line options and parameters. You really need an integrated development environment (IDE) to run it if you are not familiar with the behaviour of C compilers. See Embedded GNU, below.
Embedded GNU
Eric Engler has written a nice little integrated development environment
(IDE) that hides the ugly details of the gcc command line. Get Embedded GNU from the
author's site.
When it first runs, EmbeddedGNU will prompt you for a few settings. Set the
COM port to the same settings that work with AsmIDE for assembler. If you
don't have any programs that use the .prj file name extension,
you can associate that extension with Embedded GNU. Unless you have a native C
compiler like Visual C++ or Bloodshed Dev-C++ that you use often, associate
.c and .h files with Embedded GNU.
GNU Embedded Library
C programs expect the support of the standard C library for input/output, math and operating system support. The GNU Embedded Library (GEL) provides the usual C functions, and some support for hardware-oriented tasks.
Developers wishing to use GEL must compile it for their target board and development environment from the source code distribution. The Dragon12 is partly supported as the Axiom axcmd12. The support doesn't extend to the correct routines for serial port I/O. Building GEL is outside the scope of this course. See instead the GEL installation instructions by Eric Engler, author of EmbeddedGNU and AsmIDE.
Simple Drawing Program
Mayura Draw is a shareware package that I used to produce some of the images in the labs and lectures. It doesn't have a lot of the features of the more advanced packages but it's lightweight and gets the job done. It also exports Encapsulated Postscript (EPS) files for inclusion in LaTeX documents.