Wiki
Clone wikiCXX01 / Home
Advanced C Programming
In dit repository zijn de modulewijzer, de opdrachten en de PowerPoint presentaties opgenomen die bij de module CXX01 (Advanced C Programming) van de minor Embedded Systems van de Hogeschool Rotterdam gebruikt worden.
Deze module wordt niet meer aangeboden en is voor het laatst in het studiejaar 2019-2020 gegeven.
De informatie in dit repository is zoals alle mensenwerk niet foutloos, verbeteringen en suggesties zijn altijd welkom! Maak als je ons feedback wilt geven een issue aan.
Modulewijzer
- Modulewijzer_CXX01.pdf om dubbelzijdig af te drukken.
- Modulewijzer_CXX01_ebook.pdf om online te bekijken.
Presentaties per week
PowerPoint | Opmerkingen en verwijzingen | |
---|---|---|
Week1-ELE.pptx | Week1-ELE.pdf | Presentatie week 1 voor studenten met een Elektrotechniek achtergrond |
Week1-nonELE.pptx | Week1-nonELE.pdf | Presentatie week 1 voor studenten zonder een Elektrotechniek achtergrond |
Week2.pptx | Week2.pdf | Extra informatie over struct s in C: structs.htm. Voorbeeld met struct : breuk. |
Week3.pptx | Week3.pdf | Voorbeeld met een statische singly linked list: listStatic.c. Voorbeeld met een dynamische singly linked list: listDynamic.c. |
Week4.pptx | Week4.pdf | Voorbeeld generic find: genericFind.c. Voorbeeld van het gebruik van een makefile: breuk. Voorbeeld van het gebruik van µUnit: breuk-test. |
Week5.pptx | Week5.pdf | Voorbeeld gebruik valgrind: memcheck.c. |
Week6.pptx | Week6.pdf | Er is geen presentatie in week 6. |
Week7.pptx | Week7.pdf | Programma om graph in json-formaat zoals gebruikt op https://mikedombo.github.io/graphPlayground/ in te lezen: read_json_graph. |
Week8.pptx | Week8.pdf | Voorbeeld gebruik Cppcheck: foutje.c. |
Opdrachten voor ELE studenten
Opdrachten voor niet-ELE studenten
- TI_Handbook_v0_6.pdf
- Benodigde datasheets:
Opdrachten voor alle studenten
- AssignmentSinglyLinkedList.pdf
- AssignmentDoublyLinkedList.pdf
- AssignmentGraph.pdf
- AssignmentApplication.pdf
Extra informatie
- Interessante marktstudie op het gebied van Embedded Systems: 2017-embedded-market-study.pdf.
- Tool om documentatie te genereren vanuit de sourcecode: www.doxygen.org.
- De virtualisatiesoftware die we gebruiken om Arch Linux te draaien: www.virtualbox.org.
- De installatie ISO van Arch Linux: http://ftp.snt.utwente.nl/pub/os/linux/archlinux/iso/latest/.
- Gedetailleerde informatie over Arch Linux: wiki.archlinux.org.
- Om geluid te produceren gebruiken we het programma
aplay
dat je in Arch Linux kunt installeren met het commando:sudo pacman -Sy alsa-lib alsa-utils alsa-oss
. Zie voor details: https://wiki.archlinux.org/index.php/Advanced_Linux_Sound_Architecture. - Eclipse IDE for C/C++ Developers: http://www.eclipse.org/downloads/packages/release/photon/r/eclipse-ide-cc-developers.
- Versie control system: git-scm.com, onder windows kun je gebruik maken van Sourcetree of Git for Windows.
- Lijst met datastructuren op Wikipedia: List_of_data_structures..
- Animatie van verschillende datastructuren: Visual Algorithms.
- Documentatie van make: make.html.
- Het testframework µUnit: https://nemequ.github.io/munit/.
- Visualisatiealgoritme voor graphs: https://mikedombo.github.io/graphPlayground/.
- Een statische analyse tool voor C/C++ code, standaard opgenomen in de Eclipse CDT: Codan.
- Een statische analyse tool voor C/C++ code: Cppcheck. Er is ook een plug-in voor Eclipse beschikbaar: cppcheclipse.
- Informatie over de MISRA standaard kun je vinden op: MISRA.
- De Embedded-C-Coding-Standard van de Barr Group kun je hier vinden.
- De SEI CERT C Coding Standard kun je hier vinden.
Updated