| bin/ |
Contains the two ROM image binaries, uC.bin and lwip.bin. Linking against these ROM images will ensure that the
correct symbols defined in the binary are used. These symbols are defined in the ROM images, but actually refer to code located on the
memory modules connected to each NMIX 68332-based board. We do this to limit the time spent uploading code to the 68332-based board.
|
| include/ |
Contains c headers for libraries that will be used in more than one lab. They will also serve as references
for the students. Three subdirectories for i/o, uC/OS-II, and lwip are provided. |
| lab1/ |
Your first lab directory. A template and makefile have been placed in this directory.
The main source file is called lab1.c and after running make will produce the lab1.s19 file.
The lab1.s19 file contains the S-records that must be uploaded to the 68332-based board.
make will also produce the file lab1.map. This map file contains a memory map showing the location of all global
symbols in memory. The map files will be used extensively in debugging.
|
| lab2/ |
Your second lab directory. This directory will be provided once lab #2 is released. Download and untar it at the same level as
the lab #1 directory. |
| lab3/ |
Your third lab directory. This directory will be provided once lab #3 is released. Download and untar it at the same level as
the lab #1 directory. |
| lab4/ |
Your fourth lab directory. This directory will be provided once lab #4 is released. Download and untar it at the same level as
the lab #1 directory. |
| lib/ |
This directory contains code that is used in every lab. You should read and
understand how each of the functions in this directory work.
| boot.s | The assembly language bootloader for every lab program.
go 10000 will call this code which initializes memory, I/O space
and runs the main program. This file is always linked in first in the list of files for ld to link together.
The makefile for each lab ensures that this file is linked in first. The source files provided will not run correctly if
the boot.o file is not linked in first. |
| boot_only.s | A program for initializing memory and I/O space without running a user program. Each lab folder
from 1-4 contains a target that uses boot_only.s. Use make mem only if the linker complains about your text region
being full. |
| scope.s | Routines for triggering oscilloscope channels for testing and debugging. |
| lab.ld | The linker script for the m68332 system for use in the laboratories. |
| mem.ld | The linker script for the m68332 system for use in linking the mem target for expanding RAM. |
| sci.s | Routines for reading keystrokes from stdin over the serial port. These routines presume that uC/OS-II
is running. They will not work in stand alone mode.
|
|
| src/ |
Contains the entire source code for uC/OS-II, lwip and a small inout/output library in three subdirectories called
uC, lwip and io. The lwip directory
contains the source code
for the light weight IP stack. The uC directory contains the source code for the uC/OS-II Real Time Operating System.
The io directory contains one file called io.c that contains all the io routines that will be used in the labs.
This source code is included as a reference for the student. Do not compile any of this code or link against this in
your solution code. The uC.bin and lwip.bin are precompiled binaries for you to link against instead. lwip.bin includes
the compiled io code as well.
|