ECE students working on mbed
projects. A C++ program in Microsoft’s Visual Studio.
Teaching/Learning Goals
The purpose of this course is for you to have the skill to write efficient and correct programs in C/C++ as needed in your career as an engineer. Students will understand how to write efficient code, and how to effectively debug code during the development process. In particular, it will cover:
C Pointers and Arrays
C Data types, including structures
C++ Objects
Class hierarchies and inheritance
Polymorphism
C++ References
Operator overloading
Templates and the Standard Template Library (STL)
Multi-Threaded and Multi-Processor Design
Course materials
Mbed
Inventor’s Kit Parts
There is a newly installed
Linux-based computing cluster known as the Jinx
cluster. This platform will used to turn in, test, and
grade some of your programming assignments, so it makes sense that you would
want to develop and debug your assignments there at some point. You are free to
use any of the available computing resources at GT, as well as on student’s
personal computing hardware. Visual Studio can also be used to develop programs
on your PC, but in the end in some cases it needs to run on Jinx for grading.
Some of the final assignments may contain code such as graphics calls that will
only run on one platform. You also have access to the PC and Linux systems in
Klaus 1446/8, so anyone who has difficulty using "ssh"
(perhaps from Windows with PuTTY)
can use any of the 1448 machines and ssh to the jinx cluster from there.
The
mbed ARM microcontroller and C/C++ Cloud Compiler used in ECE 2036.
Day |
Month |
Date |
Description |
Handout |
Due Date |
Mon |
Aug |
20 |
Review of C and C++ Syntax |
||
Wed |
Aug |
22 |
More review of C/C++ Syntax |
||
Fri |
Aug |
24 |
Understanding Memory Layout |
||
Fri |
Aug |
24 |
Simple Calculator |
Sep 4 |
|
Mon |
Aug |
27 |
The GNU Debugger |
||
gdb reference (50 pages) |
|||||
Wed |
Aug |
29 |
C++ Classes |
||
Fri |
Aug |
31 |
|||
Mon |
Sep |
3 |
Labor Day Holiday NO CLASS |
||
Wed |
Sep |
5 |
MBed Assignment |
||
StackUsageAnimation DO NOT
PRINT |
|||||
Fri |
Sep |
7 |
Constructors and Destructors
|
||
StackUsageAnimation DO NOT
PRINT |
|||||
ConstructorsDestructors.cc |
|||||
Operator Overloading |
|||||
Mon |
Sep |
10 |
Operator Overloading |
||
Wed |
Sep |
12 |
Member Function |
||
member-functions.cc |
|||||
Mon |
Sep |
17 |
Dynamic Memory |
||
Wed |
Sep |
19 |
Matrix Calculator |
Sept 28 |
|
Fri |
Sep |
21 |
Dynamic Memory again |
||
Sample exam questions |
|||||
Mon |
Sep |
24 |
Pointer Dereferencing |
||
Wed |
Sep |
26 |
Test 1 |
||
Fri |
Sep |
28 |
Subclassing |
||
Mon |
Oct |
1 |
Virtual Functions |
||
Wed |
Oct |
3 |
FFT lab |
Oct 12 |
|
Fri |
Oct |
5 |
Pure Virtual Functions |
||
Mon |
Oct |
8 |
|
||
Wed |
Oct |
10 |
Smart Pointers |
||
Fri |
Oct |
12 |
Last day to drop classes with
W |
||
Mon |
Oct |
15 |
Fall Break NO CLASS |
||
Wed |
Oct |
17 |
QDisplay Graphics |
||
Wed |
Oct |
17 |
Path Loss |
Oct 29 |
|
Fri |
Oct |
19 |
Threads |
||
Mon |
Oct |
22 |
Templated Vector class |
||
Wed |
Oct |
24 |
Barriers and Mutex Locks |
||
Fri |
Oct |
26 |
Barriers continued |
||
Mon |
Oct |
29 |
Vector Implementation |
||
Wed |
Oct |
31 |
Vector Implementation
continued |
||
|
|||||
Fri |
Nov |
2 |
Mbed lab 2 |
||
Mon |
Nov |
5 |
Midterm Review |
||
Wed |
Nov |
7 |
Midterm Exam 2 |
||
Fri |
Nov |
9 |
Templated Linked List
Implementation |
||
Mon |
Nov |
12 |
Templated Linked List
continued |
||
Wed |
Nov |
14 |
Iterators |
||
Fri |
Nov |
16 |
Mandelbrot Set Assignment
Discussion |
||
Interesting Mandelbrot Set
Video |
|||||
Fri |
Nov |
16 |
Mandelbrot Set |
Nov 30 |
|
Mon |
Nov |
19 |
Sorted Containers |
||
Wed |
Nov |
21 |
Recursive Descent |
||
Fri |
Nov |
23 |
NO CLASS THANKSGIVING
HOLIDAY |
||
Mon |
Nov |
26 |
Exceptions in C++ |
||
Wed |
Nov |
28 |
Object Cloning |
||
Fri |
Nov |
30 |
Static Members and Member
Functions |
||
Mon |
Dec |
3 |
SpecialIterators |
||
Wed |
Dec |
5 |
Preprocessor Directives |
||
Fri |
Dec |
7 |
Review for Final |
||
Sample old mt1 exam |
|||||
Sample old mt2 exam |
|||||
|
|
|
|
|
|
|
|
|
|
|
|
Student mbed
C++ Project with a Nest style Temperature Display