You are logged in as: Anonymous (Author)
Roles: [Gäst] | Readers: [All]
Authors: [All] | Login | Logout |
|
LIST
-> List exercises
-> Solutions by exercise
CREATE
-> New solution
-> Course Evaluation
REGISTRATIONS
-> New registration
-> List existing
|
Programming Embedded Systems 2018
Course Objectives
After completing the course the student will know
* how to build (program...) small embedded systems
* program in C on low level
* program structures for small embedded systems
* interfacing to sensors, actuators
* get to know some typical hardware / software:
- TI MSP430, TI TivaC, Microchip PIC, Embedded Linux, some mobile OS
* basic uP Interfacing bus technology: Serial (RS-232, RS-485), CAN
* start up hardware, booting
* use error detection methods
* how to take limited resources into consideration.
( * module architecture in Linux. - if time )
Lecturers:
Jerker Björkqvist, jerker.bjorkqvist@abo.fi, Agora, room 346C
Material:
Programming Embedded Systems I & II,
http://www.le.ac.uk/eg/mjp9/pes1ohp_a4.pdf
pes1oh_a4.pdf
http://www.le.ac.uk/eg/mjp9/pes2ohp_a4.pdf
pes2ohp_a4.pdf
Booting: ![Booting.pdf](/ro.nsf/141b8735bd22ff31c225700600473a01/37fb407a0eb49064c22582fa0023ebd5/Body/0.F3A?OpenElement&FieldElemFormat=gif) ![Booting_2.pdf](/ro.nsf/141b8735bd22ff31c225700600473a01/37fb407a0eb49064c22582fa0023ebd5/Body/0.1672?OpenElement&FieldElemFormat=gif)
Duration
Lectures and labs:3.9.2018 -
Final meeting: TBD
Contents:
- Lectures Mondays 10-12 hours, Agora 110A Starting 3.9.2018
- Exercises (5) - Mondays 13.00 - 17, in Agora 307A-C, Starting 10.9.2018
- Small Project in Group
- Optional Exam (for grading 0-5)
In order to pass the course, the following requirements must be fulfilled
- Accepted exercises
- Project work
- Learning Journal written
GRADING/EVALUATION/EXAMS
The course is graded according to 2 options:
A. Passed / failed. no exam, but all exercises and final project performed. A learning journal is required !
B. Graded 0-5, requires a exam (additional to all exercises and final project)
In case B, either of the 2 following exams should be attended:
Exam 1:
Exam 2:
Learning Journal
During the course, you should keep a learning journal. The learning journal should include what was done in the course, i.e.
* lectures (main points / what did I learn? / what was new? / did I agree with what was said? / feedback)
* exercises (the lab reports from the labs made)
* final project (report)
* feedback , i.e. what is good/bad with course lectures labs etc...
LECTURES
3.9.2018 | Introduction / Hello embedded world | ![](/icons/ecblank.gif) |
10.9.2018 10-12 | Structure of code / real-time / Simple embedded OS | ![](/icons/ecblank.gif) |
17.9.2018 10-12 | Serial programming / Flexible scheduler / Analog IO using ADC / PWM | ![](/icons/ecblank.gif) |
24.9.2018 | --NO LECTURE-- | ![](/icons/ecblank.gif) |
24.9.2018 10-12 | Co-operative task scheduling / watchdog timers | ![](/icons/ecblank.gif) |
1.10.2018 10-12 | Sensors and interfacing to sensors / Can-bus | ![](/icons/ecblank.gif) |
8.10.2018 10-12 | Shared clock scheduling / | ![](/icons/ecblank.gif) |
22.10.2018 10-12 | Project Vision presentations | ![](/icons/ecblank.gif) |
28.11.2018 13.30 -> | Project presentations, 307A-C | ![](/icons/ecblank.gif) |
EXERCISES
Excercises start Mon 10.9.2018 13.00, in room 307A-C in Agora
Following lab times are available, each week, select from one of the available lab groups.
Exercise | Contents | When | Description |
1. Super loop | Introduction to MSP430 ![](/ro.nsf/141b8735bd22ff31c225700600473a01/37fb407a0eb49064c22582fa0023ebd5/Body/0.3262?OpenElement&FieldElemFormat=gif)
Introduction to environment | Room 307 A-C
Monday 10.9.2018
13.00-17.00 | ex1_2018.pdf |
2. Task based software architecture | Create a task-based mini OS
Defining tasks / O-O like code
Programmable timers and interrupts | Room 307 A-C
Monday 17.9.2018
13.00-17.00 | ex2_2018.pdf timer.c timer.h |
3. I/O and scheduling | Interrupt based scheduling
State machine
Reading switches
Low power operation | Room 307 A-C
Monday 1.10.2018
13.00-17.00 | ex3_2018.pdf |
4. Reading the temperature | Using AD-converter, interfacing to internal/ external NTC, interrupt base scheduling of multiple tasks | Room 307 A-C
Monday 8.10.2018
13.00-17.00 | ex4_2018.pdf |
5. Shared clock scheduling / multiprocessor | Shared clock scheduling on MSP430 | NOTE. Exercise postponed one week
Room 307 A-C
Monday 22.10.2018
13.00-17.00 | ex5_2018.pdf |
![](/icons/ecblank.gif) | ![](/icons/ecblank.gif) | ![](/icons/ecblank.gif) | ![](/icons/ecblank.gif) |
Each exercise should be documented and electronically submitted on the web address https://abacus.abo.fi/ro.nsf.
Exercises will be performed mainly on your own in a small group, but each exercise will be started up by a short introduction and there will be a lecturer (Jerker) present in the lab.
Project
Do a small scale project in groups of 2-4 persons. You can yourself choose the topic, but it has to be accepted by the lecturer. The environments provided by the lab: (but you can also suggest your own environment).
The projects are presented (in a seminar, orally)
A. Before the project start: A short introduction to the project
B. After the project (the results)
![](/icons/ecblank.gif) | Example of projects | ![](/icons/ecblank.gif) |
Modtronix / Microchip | Internet based home surveillance
Internet radio | ![](/icons/ecblank.gif) |
Airstation | Temperature display | ![](/icons/ecblank.gif) |
Particle IO | ![](/icons/ecblank.gif) | ![](/icons/ecblank.gif) |
![](/icons/ecblank.gif) | ![](/icons/ecblank.gif) | ![](/icons/ecblank.gif) |
![](/icons/ecblank.gif) | Lear how to to use a small wrist computer / sensors | ![](/icons/ecblank.gif) |
Raspberry Pi | The sky is the limit.... | ![](/icons/ecblank.gif) |
TivaC development platform | Embedded solution | ![](/icons/ecblank.gif) |
Beagle bord | Embedded solution | ![](/icons/ecblank.gif) |
Equipment for projects:
There are some new equipment: presence sensor, IR transmitter/receiver attachable to SBC65EC, 3-button version of daughtercard.
Please read the this document for more information:
![](/ro.nsf/141b8735bd22ff31c225700600473a01/37fb407a0eb49064c22582fa0023ebd5/Body/7.2842?OpenElement&FieldElemFormat=gif)
Projects
Exercises / evaluation
Code: 453502.0
Links
asdasdads Kandidatseminarium 2023 Research capability test Kandidatseminarium 2022 Temp Kandidatseminarium 2020 Kandidatseminarium 2021 Kandidatseminarium 2019 Operativsystem 2018 (period 3) Analytics for Industrial Internet Kandidatseminarium 2018 Operativsystem 2017 (period 3) Programming Embedded Systems 2018 Programming Embedded Systems 2017 (fall) ASP Labs 2017 Kandidatseminarium 2017 Programmering i C/C++ 2016 Programming Embedded Systems 2017 ASP Labs 2015 Kandidatseminarium 2016 Operativsystem 2015/2016 (period 2) Programming Embedded Systems 2016 Programming Embedded Systems 2015 Operativsystem 2014/2015 (period 2) Programmering i C/C++ 2015 Kandidatseminarium 2015 Programmering i C/C++ läsår 2014-2015 Datorteknik hösten 2015 Obligatorisk praktik Accenture Road Show Digital Television Techniques 2015 / Wireless communication Programmering i C/C++ läsår 2013-2014 ASP Labs 2011 Digital Television Techniques 2014 / Wireless communication Programming Embedded Systems 2014 Operativsystem 2013/2014 (period 2) Kandidatseminarium 2014 Kandidatseminarium 2014 JOO: ÅA <--> UTU course exhange ASP Labs 2013 Digital Television Techniques 2013 Programming Embedded Systems 2013 Operativsystem 2012/2013 (period 2) Programmering i C/C++ läsår 2012-2013 Kandidatseminarium 2013 Digital Television Techniques 2012 Programmering i C/C++ läsår 2011-2012 Operativsystem 2011/2012 (period 2) Programming Embedded Systems 2012 Kandidatseminarium 2012 Digital Television Techniques (5 cp) Period IV / 2010 Programming Embedded Systems 2010 C++ järjestelmäohjelmointi 2011 Programming Embedded Systems 2011 Kandidatseminarium 2011 Operativsystem 2010/2011 (period 2) Programmering i C/C++ läsår 2010-2011 Räkneövningar på nätet ESResearch Kandidatseminarium 2010 Huvudämnesinfo 2010 Tent 11.12.2009 / Resultat Programmering i C/C++ läsår 2009-2010 Excercises Digital Television Techniques 2008 Programmering i C/C++ läsår 2007-2008 Praktikum i inbyggda datorsystem
|
|