Permalink
Cannot retrieve contributors at this time
Name already in use
A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
KPIT_MBED_worksheet/README.md
Go to fileThis commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
92 lines (59 sloc)
3.49 KB
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# KPIT Embedded systems development Worksheets and Code | |
This Reposoty contains the worksheets and code for KPIM | |
# Contents | |
## General Notes | |
- [USB Debugger](Notes/USB_Debugger.md) Getting printf statements to work via the USB Debugger | |
## Topic 1: Development Tools | |
- [Introduction to VS Code](Topic1/PlatformIO_Worksheet.md) This | |
Covers setting up a new project in VS Code and Platform IO. We | |
also walk through creating a new project and uploading code to the | |
development boards. | |
- [Hello World](Topic1/HelloWorld.md) In this worksheet we write | |
our first code for the devices. We also discuss how we can use the | |
on board button to get simple user input. Finally, we use | |
Interrupts to get user input in a more sensible way. | |
- [Solution](Topic1/LightCode.cpp) Solution for the Traffic Light Task | |
## Topic 2: UML And OO | |
- [Class Based Flasher](Topic2/Worksheet1_ClassyFlasher.md) In this | |
task we use C++ to create a Class for Flasher Objects. | |
- [Extra Tasks](Topic2/ExtraTasks.md) Some notes, and a worksheet for | |
*optional* (but recommended) tasks. Turning our Class into a | |
Library, and using Inheritance. | |
- [Solution to UML](Topic2/Diagrams.mdj) My STARUML project file for the Flasher design task | |
- [Solution to Class](Topic2/FlasherCode.cpp) My Solution to the Class based flasher task | |
## Topic 3: MBED OS | |
- [Using the MBED API](Topic3/Worksheet1_API.md) In this task we look | |
at using the MBED API and its build in *helper* functions to let us | |
add functionality and write clean code. | |
- [Events and the EventQueue](Topic3/Worksheet2_Events.md) In this | |
task we take a deeper look at event driven programming. We also | |
make use of the EventQueue Construct to help us schedule tasks | |
based on events. | |
## Topic 4: RTOS and Concurrency | |
- [Threading Worksheet](Topic4/Worksheet1_RTOS.md) In this worksheet | |
we introduce Threading, and how we can control thread execution | |
- [Scheduling](Topic4/Worksheet2_Scheduling) In this worksheet we | |
look at scheduling algorithms, and examine how the choice of | |
scheduling algorithm effects a processes runtime. | |
- [Thread Priority](Topic4/Worksheet3_ThreadPriority.md) In this | |
worksheet, we examine thread priority. How do we tell the | |
scheduler that one task is more important than others? We also look | |
at the effect of thread priority with long running tasks. | |
- [Second Thread Priority Example](Topic4/Worksheet3_Supporting) Here | |
we have a second example of how modifying Thread Priority can | |
effect execution order. | |
- [Concurrency Worksheet](Concurrencty/Worksheet_Concur.md) | |
Tasks for Producer and Consumer problem | |
- [Flawed LED example](Concurrency/FlawedLed.cpp) | |
Example code for the Flawed LED concurrent example | |
- [Producer Consumer Code](Concurrency/Prodcon.cpp) | |
Code for Producer and Consumer Example | |
## Topic 5: Talking to External Devices | |
- [Worksheet](Topic5/Worksheet.md) Worksheet containing todays tasks | |
- [SimulatorTask.cpp](Topic5/SimulatorTask.cpp) Getting started code for the Simulator | |
- [Final Task](Topic5/FinalTask.md) Final Task of the Taught | |
Sessions. Designing and Developing an In-Car safety system. | |
- [SHT31 API](https://os.mbed.com/users/andcor02/code/Sht31/file/c84a60326ecf/Sht31.cpp) | |
- [SHT31 Datasheet](https://cdn-shop.adafruit.com/product-files/2857/Sensirion_Humidity_SHT3x_Datasheet_digital-767294.pdf) | |
- [STM Discovery Manual](STM_Manual.pdf) | |
- [Accelerometer API](https://os.mbed.com/users/grantphillips/code/LIS3DSH/docs/tip/classLIS3DSH.html) |