E N D
1. eZ430X
2. BYU CS/ECEn 124 BYU eZ430X 2 Topics to Cover… MSPF2274
eZ430X Development Board
Peripherals
Peripheral Devices
Low Pass Filter
Headers
Jumpers
Lab 7: Simon
Coding Assembler
3. BYU CS/ECEn 124 BYU eZ430X 3 MSP430 Typical Applications
4. BYU CS/ECEn 124 BYU eZ430X 4 MSP430 Roadmap
5. BYU CS/ECEn 124 BYU eZ430X 5 IMPORTANT!!!
6. BYU CS/ECEn 124 BYU eZ430X 6 MSP430F2274
7. BYU CS/ECEn 124 BYU eZ430X 7 eZ430X Development Board
8. BYU CS/ECEn 124 BYU eZ430X 8 eZ430X Development Board
9. BYU CS/ECEn 124 BYU eZ430X 9 Computrol Facilities
10. BYU CS/ECEn 124 BYU eZ430X 10 Printed Circuit Boards
11. BYU CS/ECEn 124 BYU eZ430X 11 Apply Solder Paste
12. BYU CS/ECEn 124 BYU eZ430X 12 Robots Place Parts
13. BYU CS/ECEn 124 BYU eZ430X 13 Discrete Parts Added
14. BYU CS/ECEn 124 BYU eZ430X 14 Flow Soldered
15. BYU CS/ECEn 124 BYU eZ430X 15 276? Solder Bath
16. BYU CS/ECEn 124 BYU eZ430X 16 Final Inspection
17. BYU CS/ECEn 124 BYU eZ430X 17 Peripherals A/D Converter (ADC10)
Operational Amps (OA0-3) (Not covered)
Ports (P1-P4)
Power Module
Digitally Controlled Oscillator (DCO)
Very Low Frequency Oscillator (VLO)
Timers A/B
USCI A/B
USART – Universal Serial Asynchronous Rx/Tx
SPI – Serial Peripheral Interface
i2c – Inter-Integrated Circuit
Watchdog+
18. BYU CS/ECEn 124 BYU eZ430X 18 ADC10
19. BYU CS/ECEn 124 BYU eZ430X 19 Digital I/O
20. BYU CS/ECEn 124 BYU eZ430X 20 Timer_A/B
21. BYU CS/ECEn 124 BYU eZ430X 21 USART Serial Port
22. BYU CS/ECEn 124 BYU eZ430X 22 I2c – Inter-Integrated Circuit Inter-Integrated Circuit
2-wire serial interface (Serial data SDA, Serial clock SCL)
master/slave (slaves have unique 7-bit address)
100-400 kbit/sec (relatively slow)
Master provides clock
23. BYU CS/ECEn 124 BYU eZ430X 23 Watchdog Timer
24. BYU CS/ECEn 124 BYU eZ430X 24 Peripheral Devices Switches (Push Buttons)
LED’s (2 + 4)
LCD (100 x 160 pixels)
FRAM (8 kb)
LCD Backlight
Potentiometers (Left & Right)
Thermistor (10k ?)
Accelerometer (3-axis ADXL345)
Sonar Transponder (Optional)
25. BYU CS/ECEn 124 BYU eZ430X 25 Switches Switches
P2.0-3
Internal pull-ups
Require debouncing
26. BYU CS/ECEn 124 BYU eZ430X 26 LED’s LED’s
P2.0-1, P3.3, P4.6
Use PWM for brightness
0 = OFF, 1 = ON
27. BYU CS/ECEn 124 BYU eZ430X 27 LCD LCD - 100 x 160 pixels transflective display
Transflective polarizers have both reflecting and transmitting properties and offer the most versatile viewing characteristics.
They can be viewed in direct sunlight and when combined with a backlight in low light conditions.
28. BYU CS/ECEn 124 BYU eZ430X 28 LCD LCD - 100 x 160 pixels display
29. BYU CS/ECEn 124 BYU eZ430X 29 LCD lcd.c Prototypes
int lcd_init(void);
void lcd_volume(int volume);
void lcd_backlight(int backlight);
int lcd_display(int mode);
void lcd_clear(int value);
void lcd_image(const unsigned char* image,
int column, int page);
void lcd_blank(int column, int page,
int width, int height);
void lcd_cursor(int column, int page);
char lcd_putchar(char c);
void lcd_printf(char* fmt, ...);
30. BYU CS/ECEn 124 BYU eZ430X 30 FRAM FRAM
Ferroelectric Non-volatile RAM
8192 x 8 bits
45 year retention
i2c serial bus
Unlimited R/W cycles
31. BYU CS/ECEn 124 BYU eZ430X 31 LCD/FRAM - Graphics graphics.c
int lcd_FRAM_init(void);
void lcd_circle(int x0, int y0, int r0);
unsigned char lcd_point(unsigned int x,
unsigned int y, int flag);
int FRAM_init(int size, int data);
unsigned char FRAM_read(unsigned int address);
int FRAM_write(unsigned int address,
unsigned char datum);
int read_FRAM_point(unsigned int x,
unsigned int y);
int write_FRAM_point(unsigned int x,
unsigned int y, int value);
32. BYU CS/ECEn 124 BYU eZ430X 32 LCD Backlight LCD Backlight
P4.2 / TA2 (Jumper F)
Use PWM for dimming
33. BYU CS/ECEn 124 BYU eZ430X 33 Potentiometers Potentiometers
Use VREF+ (2.5v) internal reference and Vss (GND)
Linear potentiometers return 0-1023 values
ADC10 Channels:
12 = left potentiometer (P4.4, Jumper A1)
13 = right potentiometer (P4.3, Jumper G1)
34. BYU CS/ECEn 124 BYU eZ430X 34 Thermistor Thermistor
10k thermistor
Non-linear resistance
ADC10 Channels:
10 = internal temperature
15 = thermistor (Jumper C1)
35. BYU CS/ECEn 124 BYU eZ430X 35 Accelerometer ADXL345 Accelerometer
3-axis acceleration, ?2 g, ?4 g, ?8 g, or ?16 g
Dynamic acceleration (motion)
Static acceleration (gravity)
Polysilicon surface-micromachined structure
36. BYU CS/ECEn 124 BYU eZ430X 36 Sonar Transponder MaxBotix EZ0/1 Sonar Transponder
Sonar range from 6 to 254 inches (1 inch resolution)
Analog/serial digital output
37. BYU CS/ECEn 124 BYU eZ430X 37 Low Pass Filter Digital equivalent of an analog low pass RC filter
38. BYU CS/ECEn 124 BYU eZ430X 38 J1 Header
39. BYU CS/ECEn 124 BYU eZ430X 39 Jumpers
40. BYU CS/ECEn 124 BYU eZ430X 40 Simon Lab
41. BYU CS/ECEn 124 BYU eZ430X 41 Simon Lab
42. BYU CS/ECEn 124 BYU eZ430X 42 How To Code Assembler… Understand the problem (obviously)
Until you are comfortable in assembly, (and even afterwards), write out your solution in something familiar
English
Flowchart
Pseudo-code
Java, C, Ruby – the pseudo-code doesn’t really matter!
Then, translate to assembler
43. BYU CS/ECEn 124 BYU eZ430X 43