The Primus micromouse will use the dsPIC30F4011 processor from microchip. It has plenty of power and resources for just about any micromouse and is relatively easy to get and use. Here is a list of the proposed functions for each processor pin on the controller board
dsPIC30F4011 Pin Functions for Primus | ||
Pin | Functions | Primus (NOKIA LCD) |
1 | /MCLR | reset |
2 | EMUD3/AN0/VREF+/CN2/RB0 | left forwardsensor |
3 | EMUC3/AN1/VREF-/CN3/RB1 | left diagonal sensor |
4 | AN2/SS1/CN4/RB2 | left side sensor |
5 | AN3/INDX/CN5/RB3 | right side sensor |
6 | AN4/QEA/IC7/CN6/RB4 | UP button |
7 | AN5/QEB/IC8/CN7/RB5 | DN button |
8 | AN6/OCFA/RB6 | right diagonal sensor |
9 | AN7/RB7 | right forward sensor |
10 | AN8/RB8 | battery voltage monitor |
11 | VDD | VDD |
12 | VSS | VSS |
13 | OSC1/CLKI | 8MHz resonator |
14 | OSC2/CLKO/RC15 | 8MHz resonator |
15 | EMUD1/SOSCI/T2CK/U1ATX/CN1/RC13 | left stepper count input |
16 | EMUC1/SOSCO/T1CK/U1ARX/CN0/RC14 | right stepper count input |
17 | FLTA/INT0/RE8 | GO button |
18 | EMUD2/OC2/IC2/INT2/RD1 | diagonal emitters |
19 | OC4/RD3 | LED_A |
20 | VSS | VSS |
21 | VDD | VDD |
22 | OC3/RD2 | side emitters |
23 | EMUC2/OC1/IC1/INT1/RD0 | forward emitters |
24 | SCK1/RF6 | LCD clock |
25 | PGD/EMUD/U1TX/SDO1/SCL/RF3 | programmer and LCD Data |
26 | PGC/EMUC/U1RX/SDI1/SDA/RF2 | programmer clock |
27 | U2TX/CN18/RF5 | Serial TX |
28 | U2RX/CN17/RF4 | Serial RX |
29 | C1TX/RF1 | LCD command/data |
30 | C1RX/RF0 | LCD select |
31 | VSS | VSS |
32 | VDD | VDD |
33 | PWM3H/RE5 | Motor Enable |
34 | PWM3L/RE4 | LED_B and speaker |
35 | PWM2H/RE3 | right motor direction |
36 | PWM2L/RE2 | right motor step |
37 | PWM1H/RE1 | left motor direction |
38 | PWM1L/RE0 | left motor step |
39 | AVSS | AVSS |
40 | AVDD | AVDD |
Primus will use the Nokia LCD display from a 3410 cellphone. Note that this is not the common screen from a 3310. the 3310 screen can only do 84×48 pixels. To display the maze we need a bigger screen and the 3410 display can do 96×64 pixels. They are easy to find on the web.
You will see there are six sensor inputs but three emitter outputs. The emitters are fired in pairs to save processor pins. There is provision for three user buttons, a serial interface, the LCD and a battery monitor as well as a speaker and a couple of LED indicators.If you wanted to build Primus without the LCD then two of the buttons are probably redundant also as they are used for the menus on the mouse. The LCD is well worth the trouble and, while you may have thought of using a common 16×2 alphanumeric display, the nokia screens are cheaper, smaller, lighter and much more flexible.