z-logo
open-access-imgOpen Access
Learning Materials for Introductory Embedded Systems Programming Using a Model-Based Discipline
Author(s) -
Frank Vahid,
Alex Edgcomb,
Bailey Miller,
Tony Givargis
Publication year - 2016
Language(s) - English
Resource type - Conference proceedings
DOI - 10.18260/p.27324
Subject(s) - computer science , concurrency , microcontroller , embedded system , software , state (computer science) , embedded software , software engineering , operating system , programming language
His research interests include embedded systems design, and engineering education. He is a co-founder of zyBooks.com. Alex Edgcomb finished his PhD in computer science at UC Riverside in 2014. Alex has continued working as a research specialist at UC Riverside with his PhD advisor, studying the efficacy of web-native content for STEM education. Alex also works with Zyante, a startup that develops interactive, web-native textbooks in STEM. 2014, respectively. His dissertation research focused on embedded systems design and novel highly-parallel many-core computer architectures. He has published more than 10 research papers, and served as a university lecturer in computer science. He conducts research in the area of embedded systems with an emphasis on embedded systems and software and has authored over 90 peer reviewed papers. He is a named inventor on 11 U.S. patents and has co-authored two popular textbooks on embedded system design. Professor Givargis has received numerous teaching, service, and research awards, including the Frederick Emmons Terman Award, presented annually to an outstanding young electrical engineering educator by the Electrical and Computer Engineering Division of the American Society for Engineering Education. Abstract Embedded systems have changed dramatically in recent decades. At their start in the 1970's and growth in the 1980's, embedded systems consisted of relatively simple microcontroller hardware, often programmed in lowlevel assembly language, to configure a few peripherals and interact with a few input/output pins. Today, improvements in speed, memory size, and power have changed the emphasis from hardware to software, with microcontrollers supporting tens of thousands of lines of code, perhaps programmed in C, often with concurrent tasks, interacting with dozens of peripherals and potentially hundreds of input/output pins in timemultiplexed manner, and dynamically changing among numerous power states. Yet, many university embedded systems courses and textbooks still look similar to those in the 1980's, emphasizing lowlevel programming of hardware. Little guidance is provided to teach students in a first course how to program using higherlevel disciplined methods. The result is an improper foundation and perspective, leading to ad hoc unstructured code, or overreliance and inefficient use of realtime operating systems. To remedy the situation, we describe a modelbased discipline for introductory embedded systems courses, developed over the past decade at the The discipline has students describing desired behavior using synchronous state machines, and capturing those state machines using standard C templates. As such, students develop software paying strict attention to timing issues, and create …

The content you want is available to Zendy users.

Already have an account? Click here to sign in.
Having issues? You can contact us here
Accelerating Research

Address

John Eccles House
Robert Robinson Avenue,
Oxford Science Park, Oxford
OX4 4GP, United Kingdom