NASA Home Rover 
Cerebellum Design Specifications

The cerebellum will consist of the following main components:

	a. Microcontroller: Microchip PIC 16F877
	b. Clock chip: CTS MX045, 20 MHz
	c. RS232 Level converter: DS275
	d. Dual Full H-bridge Motor Driver: Allegro UDN2998


Programming:

The microcontroller will be programmable in-circuit  via a 6-pin parallel interface.
This might be changed in the future into a serial programming interface.

Firmware:

Firmware will be written in C using the C2C C-compiler. It shall provide the following functionality:

a. Control of 2 DC-motors using 2 channels of PWM signal generated by the CCP module on the microcontroller, driving a full H-bridge. Each PWM channel is independently controllable, but their periods have to be the same. This will be set at 19.5 kHz.

b. Control of 8 hobby servo motors using an interrupt driven software control loop, running on Timer 0 of the PIC microcontroller.

c. Read from 8 analog input ports with 8-bit resolution.

d. RS232 communications using the hardware USART found on the microcontroller. Actual baud rate will be software selectable (maximum of 115.2 kbps). Communications parameters will be 8 data bits, no parity bit, 1 stop bit.

e. I2C communications using the synchronous serial port hardware found on the microcontroller. This will use 7-bit addresses and will function in master mode.