Wednesday May 14 2014
BlinkMtr03 will be a 3-axis controller. This means adding two more A3967s and replacing the MSP430 with a version that provides more GPIO pins. There are 4 unused pins on BlinkMtr02, but that would leave nothing for control inputs. The MSP430F1121A could be used for 2-axis control with an I2C input, or for a 3-axis controller where the motions were preprogrammed (signage or art?).
BlinkMtr03 will need to have the following GPIO:
Signal | Dir | Port | Description | |
---|---|---|---|---|
1 | /MTR_RESET | OUT | P2.0 | Driver reset (all axes) |
2 | MTR_STOP | OUT | P2.1 | Motor stop (all axes) |
3 | MTR_MS1 | OUT | P2.2 | Step size (all axes) |
4 | MTR_MS2 | OUT | P2.3 | Step size (all axes) |
5 | MTR1_DIR | OUT | P2.4 | X direction |
6 | MTR1_STEP | OUT | P2.5 | X step |
7 | MTR2_DIR | OUT | P2.6 | Y direction |
8 | MTR2_STEP | OUT | P2.7 | Y step |
9 | MTR3_DIR | OUT | P3.0 | Z direction |
10 | MTR3_STEP | OUT | P3.1 | Z step |
11 | ESTOP | IN | P3.2 | Limit detection (any axis) |
12 | I2C_CLK | IO | P3.3 | Control communication |
13 | I2C_DATA | IO | P3.4 | Control communication |
14 | RUN | IN | P3.5 | Run programmed movements |
-- | OPTIONAL | |||
15 | JOY_X- | IN | P3.6 | Joystick 1 left |
16 | JOY_X+ | IN | P3.7 | Joystick 1 right |
17 | JOY_Y- | IN | P4.0 | Joystick 1 up |
18 | JOY_Y+ | IN | P4.1 | Joystick 1 down |
19 | JOY_BTN1 | IN | P4.2 | Joystick 1 button |
20 | JOY_Z- | IN | P4.3 | Joystick 2 up |
21 | JOY_Z+ | IN | P4.4 | Joystick 2 down |
22 | JOY_BTN2 | IN | P4.5 | Joystick 2 button |
This is a total of 14 or 22 GPIOs, not including JTAG ports (5). If A minimum of 20 GPIO requires the MSP430F122 (Digikey 296-15851-1-ND) with 22 GPIO, 32VQFN package (5x5mm) at $3.69 each. The next step up in the 1 series is the MSP430F135 with 48 GPIO, 64VQFN (mm) at $8.38 each.
I tried a different search method, this time starting with Digikey and using their product selector to narrow down, then sorting on price. This popped out today's blue light special, the MSP430F2112IRHBT