MSP430 Microcontroller Basics

Book description

The MSP430 microcontroller family offers ultra-low power mixed signal, 16-bit architecture that is perfect for wireless low-power industrial and portable medical applications. This book begins with an overview of embedded systems and microcontrollers followed by a comprehensive in-depth look at the MSP430. The coverage included a tour of the microcontroller's architecture and functionality along with a review of the development environment. Start using the MSP430 armed with a complete understanding of the microcontroller and what you need to get the microcontroller up and running!

  • Details C and assembly language for the MSP430
  • Companion Web site contains a development kit
  • Full coverage is given to the MSP430 instruction set, and sigma-delta analog-digital converters and timers

Table of contents

  1. Front Cover
  2. MSP430 Microcontroller Basics
  3. Copyright Page
  4. Table of Contents
  5. Preface (1/2)
  6. Preface (2/2)
  7. Chapter 1. Embedded Electronic Systems and Microcontrollers
    1. 1.1 What (and Where) Are Embedded Systems?
    2. 1.2 Approaches to Embedded Systems
    3. 1.3 Small Microcontrollers
    4. 1.4 Anatomy of a Typical Small Microcontroller
    5. 1.5 Memory
    6. 1.6 Software
    7. 1.7 Where Does the MSP430 Fit?
  8. Chapter 2. The Texas Instruments MSP430
    1. 2.1 The Outside View—Pin-Out
    2. 2.2 The Inside View—Functional Block Diagram
    3. 2.3 Memory
    4. 2.4 Central Processing Unit
    5. 2.5 Memory-Mapped Input and Output
    6. 2.6 Clock Generator
    7. 2.7 Exceptions: Interrupts and Resets
    8. 2.8 Where to Find Further Information (1/2)
    9. 2.8 Where to Find Further Information (2/2)
  9. Chapter 3. Development
    1. 3.1 Development Environment
    2. 3.2 The C Programming Language (1/2)
    3. 3.2 The C Programming Language (2/2)
    4. 3.3 Assembly Language
    5. 3.4 Access to the Microcontroller for Programming and Debugging
    6. 3.5 Demonstration Boards
    7. 3.6 Hardware
    8. 3.7 Equipment
  10. Chapter 4. A Simple Tour of the MSP430
    1. 4.1 First Program on a Conventional Desktop Computer
    2. 4.2 Light LEDs in C
    3. 4.3 Light LEDs in Assembly Language (1/2)
    4. 4.3 Light LEDs in Assembly Language (2/2)
    5. 4.4 Read Input from a Switch (1/3)
    6. 4.4 Read Input from a Switch (2/3)
    7. 4.4 Read Input from a Switch (3/3)
    8. 4.5 Automatic Control: Flashing Light by Software Delay (1/2)
    9. 4.5 Automatic Control: Flashing Light by Software Delay (2/2)
    10. 4.6 Automatic Control: Use of Subroutines (1/2)
    11. 4.6 Automatic Control: Use of Subroutines (2/2)
    12. 4.7 Automatic Control: Flashing a Light by Polling Timer_A (1/2)
    13. 4.7 Automatic Control: Flashing a Light by Polling Timer_A (2/2)
    14. 4.8 Header Files and Issues Brushed under the Carpet
  11. Chapter 5. Architecture of the MSP430 Processor
    1. 5.1 Central Processing Unit
    2. 5.2 Addressing Modes (1/2)
    3. 5.2 Addressing Modes (2/2)
    4. 5.3 Constant Generator and Emulated Instructions
    5. 5.4 Instruction Set (1/3)
    6. 5.4 Instruction Set (2/3)
    7. 5.4 Instruction Set (3/3)
    8. 5.5 Examples (1/2)
    9. 5.5 Examples (2/2)
    10. 5.6 Reflections on the CPU and Instruction Set
    11. 5.7 Resets (1/2)
    12. 5.7 Resets (2/2)
    13. 5.8 Clock System (1/3)
    14. 5.8 Clock System (2/3)
    15. 5.8 Clock System (3/3)
  12. Chapter 6. Functions, Interrupts, and Low-Power Modes
    1. 6.1 Functions and Subroutines
    2. 6.2 What Happens when a Subroutine Is Called?
    3. 6.3 Storage for Local Variables
    4. 6.4 Passing Parameters to a Subroutine and Returning a Result
    5. 6.5 Mixing C and Assembly Language
    6. 6.6 Interrupts
    7. 6.7 What Happens when an Interrupt Is Requested?
    8. 6.8 Interrupt Service Routines (1/2)
    9. 6.8 Interrupt Service Routines (2/2)
    10. 6.9 Issues Associated with Interrupts
    11. 6.10 Low-Power Modes of Operation (1/2)
    12. 6.10 Low-Power Modes of Operation (2/2)
  13. Chapter 7. Digital Input, Output, and Displays
    1. 7.1 Digital Input and Output: Parallel Ports (1/2)
    2. 7.1 Digital Input and Output: Parallel Ports (2/2)
    3. 7.2 Digital Inputs (1/2)
    4. 7.2 Digital Inputs (2/2)
    5. 7.3 Switch Debounce (1/3)
    6. 7.3 Switch Debounce (2/3)
    7. 7.3 Switch Debounce (3/3)
    8. 7.4 Digital Outputs
    9. 7.5 Interface between 3V and 5V Systems
    10. 7.6 Driving Heavier Loads
    11. 7.7 Liquid Crystal Displays
    12. 7.8 Driving an LCD from an MSP430x4xx (1/2)
    13. 7.8 Driving an LCD from an MSP430x4xx (2/2)
    14. 7.9 Simple Applications of the LCD (1/3)
    15. 7.9 Simple Applications of the LCD (2/3)
    16. 7.9 Simple Applications of the LCD (3/3)
  14. Chapter 8. Timers
    1. 8.1 Watchdog Timer
    2. 8.2 Basic Timer1 (1/2)
    3. 8.2 Basic Timer1 (2/2)
    4. 8.3 Timer_A (1/3)
    5. 8.3 Timer_A (2/3)
    6. 8.3 Timer_A (3/3)
    7. 8.4 Measurement in the Capture Mode (1/4)
    8. 8.4 Measurement in the Capture Mode (2/4)
    9. 8.4 Measurement in the Capture Mode (3/4)
    10. 8.4 Measurement in the Capture Mode (4/4)
    11. 8.5 Output in the Continuous Mode (1/3)
    12. 8.5 Output in the Continuous Mode (2/3)
    13. 8.5 Output in the Continuous Mode (3/3)
    14. 8.6 Output in the Up Mode: Edge-Aligned Pulse-Width Modulation (1/4)
    15. 8.6 Output in the Up Mode: Edge-Aligned Pulse-Width Modulation (2/4)
    16. 8.6 Output in the Up Mode: Edge-Aligned Pulse-Width Modulation (3/4)
    17. 8.6 Output in the Up Mode: Edge-Aligned Pulse-Width Modulation (4/4)
    18. 8.7 Output in the Up/Down Mode: Centered Pulse-Width Modulation
    19. 8.8 Operation of Timer_A in the Sampling Mode
    20. 8.9 Timer_B
    21. 8.10 What Timer Where?
    22. 8.11 Setting the Real-Time Clock: State Machines (1/3)
    23. 8.11 Setting the Real-Time Clock: State Machines (2/3)
    24. 8.11 Setting the Real-Time Clock: State Machines (3/3)
  15. Chapter 9. Mixed-Signal Systems: Analog Input and Output
    1. 9.1 Comparator_A (1/5)
    2. 9.1 Comparator_A (2/5)
    3. 9.1 Comparator_A (3/5)
    4. 9.1 Comparator_A (4/5)
    5. 9.1 Comparator_A (5/5)
    6. 9.2 Analog-to-Digital Conversion: General Issues (1/2)
    7. 9.2 Analog-to-Digital Conversion: General Issues (2/2)
    8. 9.3 Analog-to-Digital Conversion: Successive Approximation
    9. 9.4 The ADC10 Successive-Approximation ADC
    10. 9.5 Basic Operation of the ADC10 (1/3)
    11. 9.5 Basic Operation of the ADC10 (2/3)
    12. 9.5 Basic Operation of the ADC10 (3/3)
    13. 9.6 More Advanced Operation of the ADC10 (1/2)
    14. 9.6 More Advanced Operation of the ADC10 (2/2)
    15. 9.7 The ADC12 Successive-Approximation ADC (1/2)
    16. 9.7 The ADC12 Successive-Approximation ADC (2/2)
    17. 9.8 Analog-to-Digital Conversion: Sigma–Delta (1/2)
    18. 9.8 Analog-to-Digital Conversion: Sigma–Delta (2/2)
    19. 9.9 The SD16_A Sigma–Delta ADC (1/3)
    20. 9.9 The SD16_A Sigma–Delta ADC (2/3)
    21. 9.9 The SD16_A Sigma–Delta ADC (3/3)
    22. 9.10 Operation of SD16_A (1/4)
    23. 9.10 Operation of SD16_A (2/4)
    24. 9.10 Operation of SD16_A (3/4)
    25. 9.10 Operation of SD16_A (4/4)
    26. 9.11 Signal Conditioning and Operational Amplifiers (1/2)
    27. 9.11 Signal Conditioning and Operational Amplifiers (2/2)
    28. 9.12 Digital-to-Analog Conversion (1/2)
    29. 9.12 Digital-to-Analog Conversion (2/2)
  16. Chapter 10. Communication
    1. 10.1 Communication Peripherals in the MSP430
    2. 10.2 Serial Peripheral Interface (1/2)
    3. 10.2 Serial Peripheral Interface (2/2)
    4. 10.3 SPI with the USI (1/2)
    5. 10.3 SPI with the USI (2/2)
    6. 10.4 SPI with the USCI (1/2)
    7. 10.4 SPI with the USCI (2/2)
    8. 10.5 A Thermometer Using SPI in Mode 3 with the F2013 as Master (1/2)
    9. 10.5 A Thermometer Using SPI in Mode 3 with the F2013 as Master (2/2)
    10. 10.6 A Thermometer Using SPI in Mode 0 with the FG4618 as Master (1/2)
    11. 10.6 A Thermometer Using SPI in Mode 0 with the FG4618 as Master (2/2)
    12. 10.7 Inter-integrated Circuit Bus (1/2)
    13. 10.7 Inter-integrated Circuit Bus (2/2)
    14. 10.8 A Simple I²C Master with the USCI_B0 on a FG4618 (1/2)
    15. 10.8 A Simple I²C Master with the USCI_B0 on a FG4618 (2/2)
    16. 10.9 A Simple I²C Slave with the USI on a F2013 (1/2)
    17. 10.9 A Simple I²C Slave with the USI on a F2013 (2/2)
    18. 10.10 State Machines for I²C Communication (1/2)
    19. 10.10 State Machines for I²C Communication (2/2)
    20. 10.11 A Thermometer Using I²C with the F2013 as Master (1/2)
    21. 10.11 A Thermometer Using I²C with the F2013 as Master (2/2)
    22. 10.12 Asynchronous Serial Communication (1/2)
    23. 10.12 Asynchronous Serial Communication (2/2)
    24. 10.13 Asynchronous Communication with the USCI_A (1/2)
    25. 10.13 Asynchronous Communication with the USCI_A (2/2)
    26. 10.14 A Software UART Using Timer_A (1/2)
    27. 10.14 A Software UART Using Timer_A (2/2)
    28. 10.15 Other Types of Communication
  17. Chapter 11. The Future: MSP430X
    1. 11.1 Architecture of the MSP430X
    2. 11.2 Instruction Set of the MSP430X (1/2)
    3. 11.2 Instruction Set of the MSP430X (2/2)
    4. 11.3 Where Next?
    5. 11.4 Conclusion
  18. Appendix A: Kickstarting the MSP430
    1. A.1 Introduction to EW430
    2. A.2 Developing a Project in C (1/2)
    3. A.2 Developing a Project in C (2/2)
    4. A.3 Debugging with the Simulator
    5. A.4 Debugging with the Emulator
    6. A.5 Developing a Project in Assembly Language
    7. A.6 Tips for Using EW430
    8. A.7 Tips for Specific Development Kits
  19. Appendix B: Further Reading
    1. Books and Articles
    2. Newsletters, Magazines, and Journals
  20. Index (1/3)
  21. Index (2/3)
  22. Index (3/3)

Product information

  • Title: MSP430 Microcontroller Basics
  • Author(s): John H. Davies
  • Release date: August 2008
  • Publisher(s): Newnes
  • ISBN: 9780080558554