ECE 4760: Laboratory 3

Infrared key and lock


You will build a IR remote key and base-lock. Your project will have to act as both the base-lock and the remote key (but not at the same time, except for testing). The key will lock/unlock someone else's base-lock, if authorized. Their key will lock/unlock your base-lock, if authorized. You will be required to use a multitasking kernel and write your program as tasks within the kernel API.


For this assignment you must write your code for a multitasking kernel called Tiny Real Time (TRT).
Look through the examples on the TRT page to see how to use the API and to download the kernel.
The author's page may also be useful
You must edit the trtSettings.h file!

If the kernel continually resets then:

One possibility is the following task layout, but you can use anything that works for you:

IR control link
Use this IR packet system which will require that you include the timer0 ISR for full-duplex IR handling.
You will port the transmit and receive routines to TRT. At the very least you will need to:


Write two to four tasks using the TRT kernel API and construct a circuit which will:

To test, you can use the loopback function of test mode.
To demo you must operate with the TAs reference IR transceiver lock/key.
Your project should be able to act as both lock and key separately.
You will demo all the features above to your TA. Your program should not need to be reset or reprogrammed during the demo.

Your written lab report should include the sections mentioned in the policy page, and :

Copyright Cornell University September 30, 2013