Resources: Hardware and Software Senior Design – Spring 2012 Microcontrollers Useful for analog-digital conversions, timing, counting pulses, serial communications, PWM, digital I/O, and much more! Code can be interrupt driven Possible applications Perform an A-D conversion on a signal and send that data to a PC Control an LCD display Receive information from a RF ID reader Interpret signals from a numeric keypad *Pictures from http://www.electronic-kits-and-projects.com Tips for using Micros Program in C Read all the documentation for the part!!!! Code in small steps Best first step is to make an LED blink Refer to code examples for help For digital I/O Be sure voltages are within permissible range Check if microcontroller can sink or source enough current Development boards are a great way to get your hardware running fast! TI MSP430 Ultra low power Micro Free samples from TI (we have a university agreement and can get samples and programmers) Free IDE based on eclipse with integrated debugging Free GCC compiler Many RTOS solutions available Hardware debugging makes finding problems in code easier Some development boards have integrated wireless ZigBee support ez430-R2500 Many Examples Very easy to use USB programmers/Debuggers *Picture from http://www.ti.com/ ATMEL ATMEGA Microcontrollers Many Different microcontrollers – most commonly used for projects are MEGA168/MEGA128 Powerful user community = Arduino project Many open source tools, hardware and libraries, entire tool chain runs on Linux/Windows/Mac Several simple serial boot loaders to load programs, programmers are easy to build Software USB support More limited hardware debugging *Picture from http://www.atmel.com/ Arduino Open source microcontroller Arduino UNO available in the ECE store Based on ATMEL processor IDE based on the Processing language Small boards are easy to use but have limited I/0 Larger boards have more I/0 but are costly *Pictures from arduino.cc Microchip PICs Available in lab: PIC16F887 Many other types available to order Two excellent resources PIC data sheet PICC Compiler Help Receive two PICs for free Disadvantage: Closed compiler/toolchain *Picture from http://ww1.microchip.com/downloads/en/DeviceDoc/39582b.pdf Other Microcontrollers BASIC Stamp Programmed using BASIC Can be used when high performance is not necessary ARM (LPC, TI, etc) Very Advanced toolchain, very powerful microcontrollers with a lot of features Hard to program the hardware Cypress PSoC GUI based programming software Development Kits Available *Pictures from http://www.basicx.com/ and http://www.ti.com/ DSPs TI TMS320C54x Same DSPs as used in ECE 420 Programmable in assembly Simulink or C Useful for audio processing TI TMS320C6713 Floating point DSP Useful for image and video processing NATIONAL INSTRUMENTS CVS Real time vision processing system programmed in Labview *Images from http://www.ni.com/vision/cvs.htm FPGAs We have several new NI FPGA boards Useful when very high speed calculations are needed Power hungry Consider using a microcontroller first Great for projects which require a lot of recursive or parallel calculations XBee Radios Low-power wireless sensor networks Zigbee/IEEE 802.15.4 compliant ISM 2.4 GHz wireless Serial interface (9600 to 115200) 10 uA sleep current 100 feet indoor range (may vary) Advanced features include toggling pins on remote radio, Over the air programming of features, and many integrated functions in the radio hardware (Series 2) Other Radio Chips Lynx Simple wireless data transmitters and receivers Available in lab Wifi and Bluetooth Serial interface to microcontrollers One starting point for products www.sparkfun.com * Pictures from http://www.linxtechnologies.com/ and www.sparkfun.com Miscellaneous Parts Large selection of components in the lab Check the inventory on the website or speak with your TA NI myDAQ 12V SLA batteries Various motors GPS receivers LCDs Resistors, Capacitors, Inductors, diodes, transistors, etc. Board Layout Software Eagle Installed on lab computers Free download for board size < 4x3in x 2 layer Tutorial on class drive Orcad Installed on lab computers More complicated, lots of options * Picture from Kieran Levin SENSORS! Interface between: Real World Temperature Humidity Proximity Light Acceleration Switches Etc. Your Circuit Solutions Limited Inputs Limited input ranges Limited bandwidth Limited accuracy Amplification Clamping within a voltage range to avoid damage Debouncing Filtering Current to voltage conversion Etc. SENSOR CHALLENGES: Challenge Potential Approaches Inadequate voltage / current Op Amp, buffer, transistors Noise Hardware or software filtering Switch Bouncing S/R Latch Capture Signal Sample & Hold Limited Sampling Rate New sensor DATASHEETS! Find them from manufacture or supplier websites. Without a datasheet it is hard to design around an unknown part Some Good places to look Datasheet Repositories • www.alldatasheet.com