ARM-based microcontroller projects using MBED /

ARM-based Microcontroller Projects Using mbed gives readers a good understanding of the basic architecture and programming of ARM-based microcontrollers using ARM's mbed software. The book presents the technology through a project-based approach with clearly structured sections that enable read...

Full description

Bibliographic Details
Main Author: Ibrahim, Dogan (Author)
Corporate Author: ScienceDirect (Online service)
Format: eBook
Language:English
Published: Oxford : Newnes, an imprint of Elsevier, 2019.
Edition:First edition.
Subjects:
Online Access:Connect to the full text of this electronic book
Table of Contents:
  • Front Cover
  • ARM-Based microcontroller projects using MBED
  • Copyright
  • Contents
  • About the Author
  • Preface
  • Acknowledgments
  • Chapter 1: Introduction
  • 1.1. Overview
  • 1.2. Example Microcontroller-Based Control System
  • 1.3. Summary
  • 1.4. Exercises
  • Chapter 2: Microcontroller-Based Project Development Cycle
  • 2.1. Overview
  • 2.1.1. The Program Development Cycle (PDC)
  • 2.1.2. The Hardware Development Cycle (HDC)
  • 2.2. Program Development Tools
  • 2.2.1. BEGIN-END
  • 2.2.2. Sequencing
  • 2.2.3. IF-THEN-ELSE-ENDIF
  • 2.2.4. DO-FOREVER-ENDDO
  • 2.2.5. DO-ENDDO
  • 2.2.6. REPEAT-UNTIL
  • 2.2.7. Subprograms
  • 2.2.8. Calling a Subprogram
  • 2.3. Examples
  • 2.4. Summary
  • 2.5. Exercises
  • Chapter 3: The ARM Microcontrollers
  • 3.1. Overview
  • 3.2. Brief History of ARM Processors
  • 3.3. The ARM Processor Architecture
  • 3.3.1. CICS and RISC
  • 3.3.2. Why ARM?
  • Cortex-M
  • Cortex-R
  • Cortex-A
  • 3.3.3. Cortex-M Processor Comparison
  • 3.3.4. Processor Performance Measurement
  • 3.3.5. Cortex-M Compatibility
  • 3.3.6. The Cortex Core Architecture
  • 3.4. ARM Processor-Based Microcontroller Development Boards
  • 3.4.1. LPC11U24
  • 3.4.2. LPC1768
  • 3.4.3. EFM32 Zero Gecko Starter Kit
  • 3.4.4. Arch Pro
  • 3.4.5. LPC4088
  • 3.4.6. LPC1769 LPCXpresso
  • 3.4.7. LPC1347 LPCXpresso
  • 3.4.8. u-blox C027
  • 3.4.9. Teensy 3.1
  • 3.4.10. DISCO-F334C8
  • 3.4.11. STM32 Nucleo Board Family
  • 3.5. Summary
  • 3.6. Exercises
  • Chapter 4: STM32 Nucleo Development Boards
  • 4.1. Overview
  • 4.2. STM32 Nucleo Development Boards
  • 4.2.1. Nucleo-32 Development Boards
  • 4.2.2. Nucleo-64 Development Boards
  • 4.2.3. Nucleo-144 Development Boards
  • 4.3. STM32 Nucleo Expansion Boards
  • 4.4. Summary
  • 4.5. Exercises
  • Chapter 5: The Nucleo-F411RE Development Board
  • 5.1. Overview
  • 5.2. The Nucleo-F411RE Development Board.
  • 5.2.1. The Board
  • 5.2.2. The Power Supply
  • Powering Through the Micro-USB Connector
  • Powering Through External Inputs
  • Power Output
  • 5.2.3. The LEDs
  • 5.2.4. Push-Button Switches
  • 5.2.5. Current Measurement
  • 5.2.6. The ST-LINK/V2-1
  • 5.2.7. Input-Output Connectors
  • 5.2.8. Jumpers at the Bottom of the Board
  • 5.3. The Demo Software
  • 5.4. Summary
  • 5.5. Exercises
  • Chapter 6: Architecture of the STM32F411RET6 Microcontroller
  • 6.1. Overview
  • 6.2. Key Features of the STM32F411RET6 Microcontroller
  • 6.2.1. Power Modes
  • Sleep Mode
  • Stop Mode
  • Standby Mode
  • 6.2.2. Electrical Characteristics
  • 6.2.3. The Interrupt Controller
  • 6.2.4. The Analog-to-Digital Converter (ADC)
  • 6.2.5. Digital-to-Analog Converter (DAC)
  • 6.2.6. Temperature Sensor
  • 6.2.7. Timers and Watchdogs
  • 6.2.8. The Clock Circuit
  • External Clock Sources
  • Internal Clock Sources
  • Microcontroller Clock Output (MCO)
  • Low-Speed Clock Output (LSCO)
  • Configuring the Clock
  • 6.2.9. General Purpose Input and Output (GPIO)
  • 6.2.10. I2C Interface
  • 6.2.11. SPI Interface
  • 6.2.12. I2S Interface
  • 6.2.13. USART
  • 6.3. Summary
  • 6.4. Exercises
  • Chapter 7: Using the Mbed With Simple Projects
  • 7.1. Overview
  • 7.2. Registering to Use Mbed
  • 7.3. Nucleo-F411RE Development Board Pin Names
  • 7.4. Project 1-Flashing LED
  • 7.4.1. Description
  • 7.4.2. Aim
  • 7.4.3. Block Diagram
  • 7.4.4. PDL of the Project
  • 7.4.5. Program Listing
  • 7.4.6. Other Useful Mbed Functions
  • 7.4.7. Suggestions for Additional Work
  • 7.5. Project 2-LED Flashing as Morse Code SOS
  • 7.5.1. Description
  • 7.5.2. Aim
  • 7.5.3. Block Diagram
  • 7.5.4. PDL of the Project
  • 7.5.5. Program Listing
  • 7.5.6. Suggestions for Additional Work
  • 7.6. Project 3-Flashing an External LED
  • 7.6.1. Description
  • 7.6.2. Aim
  • 7.6.3. Block Diagram
  • 7.6.4. Circuit Diagram.
  • 7.6.5. Project Construction
  • 7.6.6. Program Listing
  • 7.6.7. Suggestions for Additional Work
  • 7.7. Project 4-Rotating LEDs
  • 7.7.1. Description
  • 7.7.2. Aim
  • 7.7.3. Block Diagram
  • 7.7.4. Circuit Diagram
  • 7.7.5. The Construction
  • 7.7.6. The PDL
  • 7.7.7. Program Listing
  • 7.7.8. Modified Program
  • 7.7.9. Another Modified Program
  • 7.8. Project 5-Binary Counting LEDs
  • 7.8.1. Description
  • 7.8.2. Aim
  • 7.8.3. Block Diagram
  • 7.8.4. Circuit Diagram
  • 7.8.5. The PDL
  • 7.8.6. Program Listing
  • 7.9. Project 6-Random Flashing LEDs
  • 7.9.1. Description
  • 7.9.2. Aim
  • 7.9.3. Block Diagram
  • 7.9.4. Circuit Diagram
  • 7.9.5. The PDL
  • 7.9.6. Program Listing
  • 7.9.7. Modified Program
  • 7.10. Project 7-LED Control With Push-button
  • 7.10.1. Description
  • 7.10.2. Aim
  • 7.10.3. Block Diagram
  • 7.10.4. The PDL
  • 7.10.5. Program Listing
  • 7.11. Project 8-Changing LED Flashing Rate
  • 7.11.1. Description
  • 7.11.2. Aim
  • 7.11.3. Block Diagram
  • 7.11.4. The PDL
  • 7.11.5. Program Listing
  • 7.12. Project 9-Binary Event Counting With LEDs
  • 7.12.1. Description
  • 7.12.2. Aim
  • 7.12.3. Block Diagram
  • 7.12.4. Circuit Diagram
  • 7.12.5. The PDL
  • 7.12.6. Program Listing
  • 7.13. Project 10-Using an External Button
  • 7.13.1. Description
  • 7.13.2. Aim
  • 7.13.3. Block Diagram
  • 7.13.4. Circuit Diagram
  • 7.13.5. The Construction
  • 7.13.6. The PDL
  • 7.13.7. Program Listing
  • 7.13.8. DigitalIn Modes
  • 7.13.9. Suggestions for Additional Work
  • 7.14. Project 11-RGB LED Control
  • 7.14.1. Description
  • 7.14.2. Aim
  • 7.14.3. Block Diagram
  • 7.14.4. Circuit Diagram
  • 7.14.5. The Construction
  • 7.14.6. The PDL
  • 7.14.7. Program Listing
  • 7.15. Project 12-Random Colored LED Display
  • 7.15.1. Description
  • 7.15.2. Aim
  • 7.15.3. Block Diagram
  • 7.15.4. Circuit Diagram
  • 7.15.5. The Construction
  • 7.15.6. The PDL.
  • 7.15.7. Program Listing
  • 7.15.8. Suggestions for Additional Work
  • 7.16. Project 13-7-Segment LED Display
  • 7.16.1. Description
  • 7.16.2. Aim
  • 7.16.3. Block Diagram
  • 7.16.4. Circuit Diagram
  • 7.16.5. The Construction
  • 7.16.6. The PDL
  • 7.16.7. Program Listing
  • 7.16.8. Modified Program
  • 7.16.9. Another Modified Program
  • 7.16.10. Using Switch Statement
  • 7.16.11. Suggestions for Additional Work
  • 7.17. Project 14-Powering Large Loads-DC Motor Control
  • 7.17.1. Description
  • 7.17.2. Aim
  • 7.17.3. Block Diagram
  • Using a Bipolar Transistor
  • Using a MOSFET
  • Using a Relay
  • 7.17.4. Circuit Diagram
  • 7.17.5. The PDL
  • 7.17.6. Program Listing
  • 7.17.7. Suggestions for Additional Work
  • 7.18. Summary
  • 7.19. Exercises
  • Chapter 8: Intermediate Level Projects
  • 8.1. Overview
  • 8.2. PROJECT 1-Two-Digit Multiplexed 7-Segment LED
  • 8.2.1. Description
  • 8.2.2. Aim
  • 8.2.3. Block Diagram
  • 8.2.4. Circuit Diagram
  • 8.2.5. The Program Design Language
  • 8.2.6. Program Listing
  • 8.2.7. Modified Program
  • 8.2.8. Suggestions for Additional Work
  • 8.3. PROJECT 2-Four-Digit Multiplexed 7-Segment LED
  • 8.3.1. Description
  • 8.3.2. Aim
  • 8.3.3. Block Diagram
  • 8.3.4. Circuit Diagram
  • 8.3.5. The PDL
  • 8.3.6. Program Listing
  • 8.3.7. Modified Program
  • 8.3.8. Suggestions for Additional Work
  • 8.4. Polling and Interrupts
  • 8.4.1. Polling
  • 8.4.2. Interrupts
  • 8.5. PROJECT 3-Four-Digit 7-Segment LED Counter
  • 8.5.1. Description
  • 8.5.2. Aim
  • 8.5.3. Block Diagram
  • 8.5.4. Circuit Diagram
  • 8.5.5. The PDL
  • Using the Ticker
  • 8.5.6. Program Listing
  • 8.6. PROJECT 4-Four-Digit 7-Segment LED Event Counter
  • 8.6.1. Description
  • 8.6.2. Aim
  • 8.6.3. Block Diagram
  • 8.6.4. Circuit Diagram
  • 8.6.5. The PDL
  • 8.6.6. Program Listing
  • 8.6.7. Suggestions for Additional Work
  • 8.7. PROJECT 5-7-Segment LED Dice.
  • 8.7.1. Description
  • 8.7.2. Aim
  • 8.7.3. Block Diagram
  • 8.7.4. Circuit Diagram
  • 8.7.5. The PDL
  • 8.7.6. Program Listing
  • 8.8. PC Serial Interface
  • 8.8.1. Using the Putty
  • Configuring the Putty Screen
  • 8.8.2. Mbed Serial Port Functions and Display Control Characters
  • 8.9. PROJECT 6-Volume of a Cylinder
  • 8.9.1. Description
  • 8.9.2. Aim
  • 8.9.3. The PDL
  • 8.9.4. Program Listing
  • 8.9.5. Suggestions for Additional Work
  • 8.10. PROJECT 7-Calculator
  • 8.10.1. Description
  • 8.10.2. Aim
  • 8.10.3. The PDL
  • 8.10.4. Program Listing
  • 8.11. PROJECT 8-Learn Your Times Tables
  • 8.11.1. Description
  • 8.11.2. Aim
  • 8.11.3. The PDL
  • 8.11.4. Program Listing
  • 8.12. PROJECT 9-Improving Your Multiplication Skills
  • 8.12.1. Description
  • 8.12.2. Aim
  • 8.12.3. The PDL
  • 8.12.4. Program Listing
  • 8.13. PROJECT 10-Loop Execution Times
  • 8.13.1. Description
  • 8.13.2. Aim
  • 8.13.3. The PDL
  • Using a Timer
  • 8.13.4. Program Listing
  • 8.13.5. Suggestions for Additional Work
  • 8.14. PROJECT 11-Reaction Timer
  • 8.14.1. Description
  • 8.14.2. Aim
  • 8.14.3. The PDL
  • 8.14.4. Program Listing
  • 8.15. PROJECT 12-Event Counter
  • 8.15.1. Description
  • 8.15.2. Aim
  • 8.15.3. The PDL
  • 8.15.4. Program Listing
  • 8.16. PROJECT 13-Hi-Lo Game
  • 8.16.1. Description
  • 8.16.2. Aim
  • 8.16.3. The PDL
  • 8.16.4. Program Listing
  • 8.17. PROJECT 14-Serial Interrupt
  • 8.17.1. Description
  • 8.17.2. Aim
  • 8.17.3. The PDL
  • 8.17.4. Program Listing
  • 8.18. PROJECT 15-Euro Millionaire Lottery Numbers
  • 8.18.1. Description
  • 8.18.2. Aim
  • 8.18.3. The PDL
  • 8.18.4. Program Listing
  • 8.19. Using the Analog-to-Digital Converter
  • 8.20. PROJECT 16-Digital Voltmeter
  • 8.20.1. Description
  • 8.20.2. Aim
  • 8.20.3. Block Diagram
  • 8.20.4. The PDL
  • 8.20.5. Program Listing
  • 8.21. PROJECT 17-Analog Temperature Sensor (Digital Thermometer).