The RPC-330 embedded controller has I/O that includes two quadrature encoder or counter inputs, eight A/D inputs and two A/D output lines with 12-bit resolution, 34 digital lines, and two RS-232/485 serial ports. Computations are performed in floating point Basic or C. The Basic accesses up to 1 MB of RAM and flash EPROM for data logging and program storage. More than 500K of start-up program can be automatically run on power up. Both 20-MHz multimode counters interface to X1, X2 or X4 quadrature encoders or other high frequency devices. Up/down converters interrupt the program when a preset, 24-bit count is reached. Two operational amplifiers buffer, amplify and filter inputs from sensors. The 12-bit resolution A/D accommodates eight single-ended or four differential inputs with ranges of 0V to 5V or ±2.5V. Inputs are protect to ±15V. Outputs are 12-bits resolution with ranges of 0V to 5V, 0V to 10V or ±5V. The board is programmed using a PC with a serial port or a terminal, and operates as part of a network using the RS-485 port.