====== Controller ====== [{{ :images:hardware:arm-can:modules:controller_enclosure.jpg?250|Controller module}}] /* [{{ :images:hardware:arm-can:main_board_1.jpg?250|Board front view}}] [{{ :images:hardware:arm-can:main_board_2.jpg?250|Board back view}}] */ ===== Features ===== **MCU** * Texas Instruments (former Luminary Micro) LM3S5632 * 32-bit 50Mhz ARM Cortex-M3 * 128 KB flash, 32 KB SRAM * CAN 2.0 controller * USB 2.0 host/device controller **Ports** * 4 x ADC input (0-3 V measuring range) * 4 x PWM output (drives up to 600 mA load) * 2 x CAN connector on 1 bus (10 pin header) * 1 x SPI * 1 x I2C * 1 x UART * 1 x JTAG (20 pin header) * 1 x USB device / host (Micro-AB) Every pin has I/O functionality (except PWM) ADC and PWM have 3 pin headers with ground and +5 V **On-board features** * 1 x 350 mW RGB LED * 1 x Push-button * ZigBee expansion board (optional) **Electrical** * Supply voltage 5 ± 0,25 V * Powered from CAN bus, DC jack or USB device port * Can draw up to 2 A from CAN bus or DC jack and up to 500 mA from USB port after enumeration. This includes on-board electronics. * Reverse voltage and overcurrent (2 A) protection. **Physical** * Dimensions 61 x 50,6 x 13,2 mm * Weight ~18 g * Optional housing (increases height) ~~CL~~ ===== Connectors ===== [{{ :images:hardware:arm-can:connectors:controller_connectors.png|ARM-CAN connectors}}] The following chapters describe each of the connectors on ARM-CAN Controller module. To recognize the connectors the Controller has to be held as shown on the picture. ~~CL~~ ==== PWM ==== [{{ :images:hardware:arm-can:connectors:controller_pwm1.png|PWM1 connector}}] [{{ :images:hardware:arm-can:connectors:controller_pwm2.png|PWM2 connector}}] PWM1/2 connector has standard RC-servo compatible pinout. In both connectors there are two vertically placed RC-servo pinouts (signal, supply, ground) therefore up to 4 RC-servos can be driven. Controller board supplies up to 2 A total (not counting other consumers) from PWM supply pins. PWM1/2 connector can also be used to drive DC motor which should be connected between leftmost PWM signal pins. Those signals are driven by 5V 600 mA MOSFET half-bridges and can form a full H-bridge. Because of transistors PWM signals can only be used as output. ~~CL~~ ==== ADC==== [{{ :images:hardware:arm-can:connectors:controller_adc1.png|ADC1 connector}}] [{{ :images:hardware:arm-can:connectors:controller_adc2.png|ADC2 connector}}] Both ADC1 and ADC2 connectors have two RC-servo like pinouts. There are ground, supply and input-output pins. It is easy to connect simple sensors like potentiometer, thermistor, IR distance sensor and ultrasonic distance sensor to these pins. I/O pins can be used as +5 V compatible inputs or outputs with +3.3 V high level. These connectors can also be used to control RC-servos with software PWM when the servo accepts 3.3 V signal. ~~CL~~ ==== COMM==== [{{:images:hardware:arm-can:connectors:controller_communication.png|COMM connector}}] COMM connector is a combination of UART, SPI and I2C interfaces. Beside the +5 V supply it contains +3.3 V supply which supplies up to 700 mA. COMM connector is intended to connect with ARM-CAN User Interface and that is why it also features 2 ADC and 1 PWM pins, which are used by the joystick and speaker. ==== JTAG ==== [{{:images:hardware:arm-can:connectors:controller_jtag.png|JTAG connector}}] ARM-CAN Controller board has a standard 20-pin JTAG connector with essential pins for programming and debugging. Although the kit contains ARM-CAN programmer, other standard ARM debuggers can be used. ==== CAN ==== [{{ :images:hardware:arm-can:connectors:controller_can.png|CAN connector(s)}}] ARM-CAN Controller board contains two identical CAN 10-pin header connectors. Both of the connectors are on the same bus, therefore CAN network can be formed by daisy-chaining several Controllers. There is no CAN signal terminator on the Controller board so external terminators should be used. Microcontroller CAN RX and TX pins which connect to the on-board CAN translator are marked with orange color on the image. ~~CL~~ ==== USB ==== [{{:images:hardware:arm-can:connectors:controller_usb.png|USB pins}}] ~~CL~~ The controller board incorporates the USB micro-AB connector on the right side. Although micro-AB is intended for OTG applications the same connector can be used for device-only and host-only applications. USB inteface has ESD protection on bus and 750 mA fuse on supply line. USB power supply is bi-directional. When the controller acts as a USB device, current from the USB bus to controller board flows through a Schottky diode, when the controller is used as a host, external power switch to USB bus can be opened with USB_EPEN high signal. ~~CL~~ ==== RGB LED ==== [{{ :images:hardware:arm-can:connectors:controller_rgb.png|RGB LED pins}}] In the middle of the controller board there is a 350 mW RGB LED. Each of the three colors are driven by separate signal. Green LED has a pull-up resistor which lights up green led by default. It can be turned off when microcontroller pin is configured as output with low signal. ~~CL~~ ==== Buttons ==== [{{ :images:hardware:arm-can:connectors:controller_btn.png|BTN pin}}] There are two buttons on board. The left one resets microcontroller when pressed; the right one is used as a custom button for user application. The button has an RC filter which filters button bounces. ~~CL~~ /* ===== Schematics ===== * {{:datasheets:arm-can:controller.pdf|Schematics}} */