8031 Projects

combined timeline

Project Timelines

CAN CPU package on board

Philips P87C592 CAN board:   Layout was dated September, 1998.


8031 PCB layout

8031 card for student projects

How did we get into this?

Our introduction to the 8031 family was after years of working with 68000 and Unix workstations. It was not a high priority, however, there are many places where a small processor would have been very useful; switch interfaces, driving a 4×40 character LCD, keypad scanning or simply an intelligent peripheral.

The limiting factor in taking these further was the high price of 8051 C compilers and every vendor had different programming requirements (voltages, package pinouts). Both boards I designed used external program storage, but the cost was then almost the same as for a 68008 board.


CAN PCB layout

CAN project for distributed outputs

There were three 8031 projects: A wire wrap prototype board; a simple board for students to use (shown top left) as something available locally at low-cost; and a 128-output card on CAN (shown bottom left). The intention was to produce an output card that could be used to drive small loads (like LEDs). One application would be “pick-by-light” displays.

Although several quick projects were done with an 8051 and three pages of C code, the processor had limited internal memory to run a real-time kernel, so all the polling was in a while (1) loop. Greater levels of integration meant reduced visibility into the processor operation as the memory access was no longer available to a logic analyzer. In-circuit emulators were not much use when trying to get something going in two weeks before moving on to the next project (most likely a different processor), as the costs would never be recouped. Programming was therefore done in small incremental steps always keeping one spare switch and LED for comfort in debugging. Many years later, we would be using 32-bit ARM processors to take up these roles, but with JTAG debuggers and programmers, similar cost for silicon, and plenty of resources.