Home Page Icon
Home Page
Table of Contents for
Cover image
Close
Cover image
by Dogan Ibrahim
ARM-based Microcontroller Projects Using mbed
Cover image
Title page
Table of Contents
Copyright
About the Author
Preface
Acknowledgments
Chapter 1: Introduction
Abstract
1.1 Overview
1.2 Example Microcontroller-Based Control System
1.3 Summary
1.4 Exercises
Chapter 2: Microcontroller-Based Project Development Cycle
Abstract
2.1 Overview
2.2 Program Development Tools
2.3 Examples
2.4 Summary
2.5 Exercises
Chapter 3: The ARM Microcontrollers
Abstract
3.1 Overview
3.2 Brief History of ARM Processors
3.3 The ARM Processor Architecture
3.4 ARM Processor-Based Microcontroller Development Boards
3.5 Summary
3.6 Exercises
Chapter 4: STM32 Nucleo Development Boards
Abstract
4.1 Overview
4.2 STM32 Nucleo Development Boards
4.3 STM32 Nucleo Expansion Boards
4.4 Summary
4.5 Exercises
Chapter 5: The Nucleo-F411RE Development Board
Abstract
5.1 Overview
5.2 The Nucleo-F411RE Development Board
5.3 The Demo Software
5.4 Summary
5.5 Exercises
Chapter 6: Architecture of the STM32F411RET6 Microcontroller
Abstract
6.1 Overview
6.2 Key Features of the STM32F411RET6 Microcontroller
6.3 Summary
6.4 Exercises
Chapter 7: Using the Mbed With Simple Projects
Abstract
7.1 Overview
7.2 Registering to Use Mbed
7.3 Nucleo-F411RE Development Board Pin Names
7.4 Project 1—Flashing LED
7.5 Project 2—LED Flashing as Morse Code SOS
7.6 Project 3—Flashing an External LED
7.7 Project 4—Rotating LEDs
7.8 Project 5—Binary Counting LEDs
7.9 Project 6—Random Flashing LEDs
7.10 Project 7—LED Control With Push-button
7.11 Project 8—Changing LED Flashing Rate
7.12 Project 9—Binary Event Counting With LEDs
7.13 Project 10—Using an External Button
7.14 Project 11—RGB LED Control
7.15 Project 12—Random Colored LED Display
7.16 Project 13—7-Segment LED Display
7.17 Project 14—Powering Large Loads—DC Motor Control
7.18 Summary
7.19 Exercises
Chapter 8: Intermediate Level Projects
Abstract
8.1 Overview
8.2 Project 1—Two-Digit Multiplexed 7-Segment LED
8.3 Project 2—Four-Digit Multiplexed 7-Segment LED
8.4 Polling and Interrupts
8.5 Project 3—Four-Digit 7-Segment LED Counter
8.6 Project 4—Four-Digit 7-Segment LED Event Counter
8.7 Project 5—7-Segment LED Dice
8.8 PC Serial Interface
8.9 Project 6—Volume of a Cylinder
8.10 Project 7—Calculator
8.11 Project 8—Learn Your Times Tables
8.12 Project 9—Improving Your Multiplication Skills
8.13 Project 10—Loop Execution Times
8.14 Project 11—Reaction Timer
8.15 Project 12—Event Counter
8.16 Project 13—Hi-Lo Game
8.17 Project 14—Serial Interrupt
8.18 Project 15—Euro Millionaire Lottery Numbers
8.19 Using the Analog-to-Digital Converter
8.20 Project 16—Digital Voltmeter
8.21 Project 17—Analog Temperature Sensor (Digital Thermometer)
8.22 Project 18—Digital Thermostat
8.23 Project 19—ON/OFF Temperature Controller
8.24 Project 20—Light Level Meter
8.25 Project 21—Changing LED Flashing Rate With a Potentiometer
8.26 Project 22—Sound Level Meter
8.27 Using the Digital-to-Analog Converter
8.28 Project 23—Generating Fixed Voltage
8.29 Project 24—Sawtooth Waveform
8.30 Project 25—Triangular Waveform
8.31 Project 26—Sine Waveform
8.32 Project 27—Arbitrary Periodic Waveform
8.33 Project 28—Waveform Generator
8.34 Using the PWM
8.35 Project 29—Melody Maker
8.36 Project 30—Electronic Organ
8.37 Project 31—Varying the LED Brightness
8.38 Summary
8.39 Exercises
Chapter 9: Motor Control Projects
Abstract
9.1 Overview
9.2 Project 1—Simple Brushed DC Motor Control
9.3 Project 2—Changing the Motor Rotation Direction
9.4 Project 3—Simple Servo Motor Control
9.5 Project 4—Simple Stepper Motor Control
9.6 Summary
9.7 Exercises
Chapter 10: Using Liquid Crystal Displays (LCDs)
Abstract
10.1 Overview
10.2 Project 1—Displaying Text on the LCD
10.3 Project 2—External Interrupt-Driven Event Counter
10.4 Project 3—Ultrasonic Height Measurement
10.5 Project 4—Calculator Using a Keypad
10.6 Summary
10.7 Exercises
Chapter 11: I2C Bus Projects
Abstract
11.1 Overview
11.2 Nucleo-F411RE I2C GPIO Pins
11.3 Project 1—TMP102 Temperature Sensor
11.4 Summary
11.5 Exercises
Chapter 12: SPI Bus Projects
Abstract
12.1 Overview
12.2 Nucleo-F411RE SPI GPIO Pins
12.3 Project 1—Generating Square Wave
12.4 Summary
12.5 Exercises
Chapter 13: UART Projects
Abstract
13.1 Overview
13.2 Nucleo-F411RE UART GPIO Pins
13.3 Project 1—Two Nucleo Boards Communicating Through UART
13.4 Summary
13.5 Exercises
Chapter 14: Advanced Projects
Abstract
14.1 Overview
14.2 Wi-Fi
14.3 Project 1—Android—Nucleo Board Communication Using the Wi-Fi Expansion Board
14.4 Project 2—Android—Nucleo Board Communication Using the ESP-01
14.5 Project 3—Android—Nucleo Board Communication Using Bluetooth
14.6 Summary
14.7 Exercises
Chapter 15: Mbed RTOS Projects
Abstract
15.1 Overview
15.2 Task Scheduling
15.3 Mbed RTOS Implementation
15.4 Project 1—Different Flashing a Pair of LEDs—Using Mbed Thread
15.5 Project 2—Refreshing a 7-Segment Display
15.6 Mbed Task Synchronization—Mutex, Semaphore, and Signals
15.7 Project 3—Car Park Controller—Using Signals
15.8 Mbed Queue and MemoryPool
15.9 Mbed Mail
15.10 Mbed RTOS Timer
15.11 Summary
15.12 Exercises
Chapter 16: Internet of Things (IoT)
Abstract
16.1 Overview
16.2 Internet of Things (IoT)
16.3 Project 1—Home IoT Project
16.4 Summary
16.5 Exercises
Chapter 17: STM32 Nucleo Expansion Boards
Abstract
17.1 Overview
17.2 High-Power Stepper Motor Board (X-NUCLEO-IHM03A1)
17.3 Two-Axis Stepper Motor Board (X-NUCLEO-IHM02A1)
17.4 Low-Voltage Three-Phase Brushless DC Motor Board (X-NUCLEO-IHM11M1)
17.5 Motion MEMS and Environmental Sensor Expansion Board (X-NUCLEO-IKS01A2)
17.6 Project 1—Measuring and Displaying the Humidity, Temperature, Atmospheric Pressure, and Dew Point Using the X-NUCLEO-IKS01A2 Expansion Board
17.7 Multifunctional Expansion Board (X-NUCLEO-IKA01A1)
17.8 Bluetooth Low-Energy Expansion Board (X-NUCLEO-IDB04A1)
17.9 Three-Phase Brushless DC Motor Board (X-NUCLEO-IHM07M1)
17.10 Bipolar Stepper Motor Driver Board (X-NUCLEO-IHM05A1)
17.11 Low-Voltage Stepper Motor Driver Expansion Board (X-NUCLEO-IHM06A1)
17.12 Brushed DC Motor Driver Expansion Board (X-NUCLEO-IHM13A1)
17.13 Project 2—Brushed DC Motor Speed Control Using the X-NUCLEO-IHM13A1 Expansion Board
17.14 Project 3—Brushed DC Motor Speed Control Using a Potentiometer With the X-NUCLEO-IHM13A1 Expansion Board
17.15 Industrial Digital Output Expansion Board (X-NUCLEO-OUT01A1)
17.16 Project 4—Controlling LEDs With the X-NUCLEO-OUT01A1 Expansion Board
17.17 CR95HF NFC Card Reader Expansion Board (X-NUCLEO-NFC03A1)
17.18 M24LR Dynamic Tag Expansion Board (X-NUCLEO-NFC02A1)
17.19 Ranging and Gesture Detection Sensor Expansion Board (X-NUCLEO-53L0A1)
17.20 Project 5—Measuring Distance to an Object Using the X-NUCLEO-53L0A1 Expansion Board
17.21 Summary
17.22 Exercises
Appendix: STM32 Nucleo-F411RE Pin Layout
Bibliography
Index
Search in book...
Toggle Font Controls
Playlists
Add To
Create new playlist
Name your new playlist
Playlist description (optional)
Cancel
Create playlist
Sign In
Email address
Password
Forgot Password?
Create account
Login
or
Continue with Facebook
Continue with Google
Sign Up
Full Name
Email address
Confirm Email Address
Password
Login
Create account
or
Continue with Facebook
Continue with Google
Next
Next Chapter
Title page
Add Highlight
No Comment
..................Content has been hidden....................
You can't read the all page of ebook, please click
here
login for view all page.
Day Mode
Cloud Mode
Night Mode
Reset