{"title":"Micro Projects: Putting Light and Magic into Learning Computer Systems Concepts (Abstract Only)","authors":"E.F. Barry","doi":"10.1145/3017680.3017835","DOIUrl":null,"url":null,"abstract":"Computer systems courses are often challenging to students who must learn the characteristics and behavior of a variety of system components and tools across multiple levels of abstraction. This workshop shows how microcontroller-based projects (\"micro projects\") can make topics such as data/program representation, bit-manipulation, I/O operation, event-handling, and digital communication more visible, concrete, and motivating. Participants will learn to use a low-cost hardware platform (programming in C/C++) to develop two example micro projects that demonstrate bit manipulation using digital I/O, and event handling with interrupts. We discuss how these projects may be extended or modified to introduce other topics, including microcontroller ISA, assembly language programming, and stack operation. Other project examples will be presented that use serial communication, timers, and a simple multitasking executive to illustrate program/data representation, digital communication, optimization, and operating system principles. We will discuss ways micro projects can be integrated into systems courses at various levels of the curriculum (by varying scaffolding) or used as a framework for an embedded systems/physical computing course. In addition to handouts, we supply participants with the software and hardware for use during the workshop and sources for acquiring them for future classroom use.","PeriodicalId":344382,"journal":{"name":"Proceedings of the 2017 ACM SIGCSE Technical Symposium on Computer Science Education","volume":"99 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2017-03-08","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings of the 2017 ACM SIGCSE Technical Symposium on Computer Science Education","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/3017680.3017835","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0
Abstract
Computer systems courses are often challenging to students who must learn the characteristics and behavior of a variety of system components and tools across multiple levels of abstraction. This workshop shows how microcontroller-based projects ("micro projects") can make topics such as data/program representation, bit-manipulation, I/O operation, event-handling, and digital communication more visible, concrete, and motivating. Participants will learn to use a low-cost hardware platform (programming in C/C++) to develop two example micro projects that demonstrate bit manipulation using digital I/O, and event handling with interrupts. We discuss how these projects may be extended or modified to introduce other topics, including microcontroller ISA, assembly language programming, and stack operation. Other project examples will be presented that use serial communication, timers, and a simple multitasking executive to illustrate program/data representation, digital communication, optimization, and operating system principles. We will discuss ways micro projects can be integrated into systems courses at various levels of the curriculum (by varying scaffolding) or used as a framework for an embedded systems/physical computing course. In addition to handouts, we supply participants with the software and hardware for use during the workshop and sources for acquiring them for future classroom use.