|
|
|
|
|
|
C and Visual Studio With Introductions to Azure IoT C
SDK, Azure Sphere, and Eclipse ThreadX
|
Print Price: $29.99
|
By Sean D. Liming and John R. Malin
Practical Guide for Learning C Programming with Visual
Studio
With billions of devices connecting to the cloud, the need
for more programmers with a range of skill sets is more
present than ever. Most high schools in the United States
teach high-level languages such as Java, Python, or
Javascript. These programming languages are perfect for web
or application programming, but many of the billions of
devices run on MCUs or FPGAs, which require C programming.
Microsoft has been shifting its product and support plan for
the MCU space for some time. Azure IoT C SDK is the solution
to connect MCU devices to Azure, and there are examples of
how to write applications to run on Windows. Azure Sphere is
a system-on-chip solution with a built-in Linux distribution
that allows developers to write applications in Visual
Studio. Eclipse ThreadX, formally Azure RTOS, has a port to
Win32 so you can build test ThreadX applications with Visual
Studio on Windows. There are other books that cover the GCC
compiler; but the confluence of school curriculums, the need
for low-level programmers, and the offerings from Microsoft
makes C and Visual Studio a niche book for learning C
programming using one of the most popular IDEs in the
industry.
C and Visual Studio applies the Computer Science pedagogical
approach that is used for other programming languages to the
C language. Combined with the authors' hands-on style,
anyone familiar with a higher-level language will be able to
get up the learning curve quickly.
The first 9 chapters of the book cover the fundamentals of C
programming from data types, program flow, arrays, pointers,
data types, search, sort, memory management, and file I/O.
The last 3 chapters introduce Azure IoT C SDK, Azure Sphere,
and Eclipse ThreadX. There are over 50 hands-on exercises to
get you familiar with the C programming language and
features of Visual Studio.
|
|
Book Details
Printed Edition: 235 Pages
Publisher: Annabooks (December 2023)
Language: English
ISBN-13: 979-8-9854172-2-7
|
Book Download
CandVS-Exercises-Templates.Zip
|
|
Software Requirements
Visual Studio: https://visualstudio.microsoft.com/
There are several option tools are called out in the book
for different MCU platforms
|
|
|
Table of Contents:
1 It all Begins with
C
1.1 A Very Brief
History
1.2 Future MCU Books and Articles from
Annabooks
1.3 Book Organization and
Requirements
1.4 Computer Activity 1.1: Installing
Visual Studio 2022 and C Project
Template
1.5 Computer Activity 1.2: Writing the
First Program
1.6 Visual Studio Debugging
Features
1.7 Source Code License and
Warranty
1.8 The Standard C
Library
1.9 Summary
2 Data Types, Math, and
Strings
2.1 Data Types and Math
Operators
2.1.1 Computer Activity 2.1: Data Type
Test
2.1.2 Computer Activity 2.2: Testing
Math
2.1.3 Mixing Data Types and
Casting
2.2 Math Functions
2.2.1 Computer Activity 2.3: Math Test
2
2.3 Variables and
Constants
2.4 Bit Manipulation
2.4.1 Computer Activity 2.4 Bit
Fiddling
2.5 Random Number
Generator
2.5.1 Computer Activity 2.5: Random
Number Test
2.5.2 Computer Activity 2.6:
Dice
2.6 Strings
2.6.1 Computer Activity 2.7: Working
with Strings
2.7 User Input and
Output
2.7.1 Computer Activity 2.8: User
Input/Output
2.8 Comments in Code
2.9 Summary
3 Controlling the Program Flow and
Iteration
3.1 Flowchart Diagram
39
3.2 If-Else Statement, Relational
Operators, and Boolean Expressions
3.2.1 Computer Activity 3.1 Boolean
Test
3.2.2 Computer Activity 3.2 Coin
Flip
3.3 Nested If-Else
3.4 If-Else-If Ladder
3.4.1 Computer Activity 3.3 Coin Flip
Enhanced
3.5 Switch-Case
3.6 Loops / Iteration
3.6.1 While-Loop
3.6.2 DoWhile-Loop
3.6.3 For-Loop
3.6.4 Computer Activity 3.4
Factorial
3.6.5 Break and
Continue
3.6.6 Computer Activity 3.5 - Menu
System with User Input
3.7 Scope of Variables
3.8 Debugging
3.8.1 Computer Activity 3.6 Debugging
an Application
3.9 Summary
4 Functions and Program
Structure
4.1 Functions Passing and Returning
Data
4.1.1 Computer Activity 4.1 Temp
Converter
4.2 Creating Separate
Libraries
4.2.1 Computer Activity 4.2 -Temp
Converter 2
4.3 The C Preprocessor
4.3.1 Computer Activity 4.3 C
Preprocessor Examples
4.3.2 Computer Activity 4.4 Magic
Numbers
4.4 Summary
5 Arrays and Pointers
5.1 Arrays and the One-dimensional
Arrays
5.1.1 Computer Activity 5.1 Basic
Arrays and the Power of the Debugger
5.1.2 Computer Activity 5.2 -
Out-of-Bounds
5.1.3 Strings are char
Arrays
5.2 Two-dimensional
Arrays
5.2.1 Computer Activity 5.3
Two-dimensional Array
5.3 Pointers
5.3.1 Computer Activity 5.4 Pointers,
Variables, and Addresses
5.3.2 Computer Activity 5.5 Swapping
Variables
5.4 Pointers and
Arrays
5.4.1 Computer Activity 5.6 Basic
Pointer and Array
5.5 Pointer Arithmetic and
Manipulation
5.5.1 Computer Activity 5.7 String
Reverse
5.5.2 Computer Activity 5.8 String
Reverse with No Array
5.5.3 Computer Activity 5.9
Alternative String Reverse with No Array
5.5.4 Computer Activity 5.10 Find the
Max Value in an Array
5.5.5 Computer Activity 5.11 Pointers
to Multidimensional Arrays
5.5.6 Computer Activity 5.12 - Pointer
Efficiency
5.6 Command Line
Arguments
5.6.1 Computer Activity 5.13 Basic
Command Line Arguments
5.7 Summary
|
6
Recursion, Sort, and Search
6.1 Recursion
6.1.1 Computer Activity 6.1 - Factorial
Recursion Style
6.1.2 Computer Activity 6.2 - Iteration
versus Recursion
6.1.3 Computer Activity 6.3 - Mutual
Recursion
6.1.4 Summary of
Recursion
6.2 Algorithm Analysis Introduction
Big-O Notation
6.2.1 A Simple Example
6.2.2 Code Example of
O(1)
6.2.3 Code Example of
O(n)
6.2.4 Code Example of
O(n2)
6.2.5 The Beginning of the Big
Picture
6.3 Sort and Search
Algorithms
6.3.1 Computer Activity 6.4 Insertion
Sort vs Qsort()
6.4 Computer Activity 6.5 Linear versus
Binary Search
6.5 Summary
7 Create Complex Data
Types
7.1 Typedef
7.1.1 Computer Activity 7.1: String Data
Type
7.2 Struct
7.2.1 Computer Activity 7.2: Simple
Structure
7.2.2 Computer Activity 7.3: Pointers to a
Structure
7.2.3 Computer Activity 7.4 Passing a
Structure to a Function
7.2.4 Computer Activity 7.5:
ArrayofStructures
7.3 Bit Fields
7.4 Enumeration
7.5 Unions
7.5.1 Computer Activity 7.6:
Unions
7.6 Summary
8 File IO
8.1 Computer Activity 8.1: Write Strings
and Read Strings
8.2 Computer Activity 8.2: Saving a Data
Structure
8.3 Summary
9 Memory Management
9.1 Memory Layout
9.2 Heap and Memory
Functions
9.2.1 Computer Activity 9.1: Basic Memory
Allocation
9.2.2 Computer Activity 9.2: Array of
Values
9.2.3 Computer Activity 9.3:
Strings
9.2.4 Computer Activity 9.4:
Structures
9.3 Summary
10 Introduction to Azure IoT C
SDK
10.1 Different Azure IoT
SDKs
10.2 Computer Activity 10.1: Send a
Message to Azure IoT Hub
10.2.1 Download and Install Support Tools
10.2.2 Azure Portal Create the Azure IoT
Hub and Device
10.2.3 Downloads from Git HUB and Build
the Library for Use with Visual Studio
10.2.4 Message
Application
10.3 Summary
11 Writing C Applications for Azure
Sphere
11.1 Azure Sphere
Introduction
11.2 Avnet Azure Sphere MT3620 Starter Kit
11.3 Computer Activity 11.1: Set Up the
Azure Sphere Development Environment
11.3.1 Part 1: Set Up the SDK and Sample
Applications for Visual Studio
11.3.2 Part 2: Device
Setup
11.4 Computer Activity 11.2: Blinking LED
Application
11.5 Azure Sphere Project
Templates
11.6 Computer Activity 11.3: Arrays and
Pointers
11.7 Summary
12 Introduction to Eclipse ThreadX
12.1 GUIX and GUIX
Studio
12.2 Computer Activity 12.1: Tools
Setup
12.3 Computer Activity 12.2: Create a GUI
using GUIX Studio
12.4 Computer Activity 12.3: Building the
Libraries
12.5 Computer Activity 12.4: Creating a
Win32 Application
12.6 Summary and Book
Conclusion
A Bibliography
A.1 Books
A.2 Websites
B INDEX |
|
|
|
|
|
|
Please review our refund
policy before buying.
|
|
|
|
|
|
|
|
|
|
|