Embedded Systems
Contraband Detector
Programmed in assembly for a controller using an 8051. The processor
read scintillation counts from a gamma ray source. The counts / time were
linearized and displayed on an LCD. Various button options allowed self
calibration, range changes, annunciation, etc.
Phone Billing Printer
Wrote multi (3) task system for a 6502 uP in assembly code. System monitored
the number dialed from up to 3 cordless phones. Accumulated billing based
upon area code and time off hook. Printed bill when user hung up. Task
switched every 1ms using multitasker I designed.
Plutonium Detector
Z80 uP took particle energy measurements from a sensor by reading an
A/D. Readings were stored in a histogram array. By solving several linear
equations, subtracting out a background reading & adjusting for the
sensors profile, the signature of plutonium was displayed. Included alarms,
calibration and self tests.
Protocol Converter / Bridge
Z8 program to convert intermittent serial data from a home security system
into a stored database of status information. This was sent to an annunciator
system (unsolicited or on demand) over another serial link. Key strokes
from the annunciator were sent in the other direction.
Reverse Vending Machine
80186 controlling the receipt of cans and the vending of money. Done
in assy language using macros I designed to function as a rule based state
machine. Rules were tailored to allow multiple cans to flow through the
system at the same time. Included LED sensors, motor controllers, barcode
reader and switch inputs. The uP interfaced a host PC over a serial link.
Downed Pilot Beacon
8051 assembly language program queried GPS module & sent position
& unit ID as well as morse code ID to RF modulator in COSPAS/SARSAT
format. Included audio phrase enunciation of position.
LVDT Monitor
80552 took A/D samples @ 1KHz & scaled based upon 1 of 3 modes in
MM, Mil or Deg. Allowed calibration. Complete menuing on small LCD display.
Included EEPROM parameter storage.
Video Compression Controllers
Programmed multiple compression boards that talked to each other and
to a master board that was linked to a Unix GUI. Each board was dedicated
to a different type of Video or Audio stream. Helped specify FPGA interface.
Data was packetized and interlaced for single stream satellite uplink.
Also programmed controller for downlink decompression interfacing proprietary
ASIC.
|