As an Amateur Radio Operator, I have done several projects relating to the control of an Amateur station. The Dunfield Amateur Repeater Controller (DARC) is one such project which I have published.
This device is based on an 8031 processor, 8K ROM memory, 32K of battery backed up code memory, and 32k of general purpose RAM. There is an assortment of digital inputs and outputs for general purpose control as well as an audio path which incorporates DTMF tone detection, tone generation and an telephone line interface. Here is a look inside.
The software makes use of my C-FLEA virtual 16 bit machine. The on-board 8031 provides the C-FLEA implementation as well as a background kernel which provides low-level support for all of the hardware devices.
The application program is written in C, and stored in the on-board non-volatile memory. It is designed to be easily modified by the station operator in order to taylor the operation of the controller to his particular needs.
The base application that I provided with the design performs these standard repeater functions: