chapter 3 companion and outline
This page contains companion resources and an outline for chapter 3 of the book An Introduction to Real-Time Computing for Mechanical Engineers, and it therefore lacks most of chapter 3’s contents. While some sections of the book are fully available on this site, many are not. Please consider purchasing a copy from the MIT Press.
Digital communication, signals, and programming the low-level user interface
Thus far, in addition to considering some fundamental aspects of real-time computing and C programming, we have learned to program a computer to interact with a user through a keypad and display and written high-level and midlevel C functions for these devices. We have been relying on low-level driver functions for communicating with the user interface (UI) devices, which, because they are not part of the target computer itself, are called peripheral devices.
As we have seen, getkey()
returns a
character from the keypad and putchar_lcd()
prints
a character to the display. How do these low-level driver functions talk
to their respective peripheral devices? The functions use the
input/output (I/O) communication systems
available on the target computer. In this chapter, we gain the necessary
background in the field of digital
communication and in digital signals
to work with the specific communication systems available for our target
computer.
In lab 3, you will write getkey()
and putchar_lcd()
to
complete the suite of UI functions developed in chapter 1, chapter 2. These
lowest-level functions use the target computer’s hardware digital
interfaces to communicate directly with the LCD and the keypad.
Background on the target computer’s I/O hardware and programming is
given in section 3.7, section
3.9, section 3.10.
Information theory and digital communication fundamentals
Digital signals
Digital inputs and outputs and pull resistors
Modes of digital communication
Digital communication standards and protocols
Universal asynchronous receivers-transmitters
I/O communication channels for the myRIO
C structures
Programming the myRIO Universal Asynchronous Receiver/Transmitters (UARTs)
Programming the myRIO DIO lines
C multidimensional arrays
Summary
Problems
Programming the low-level user interface
Online resources for Chapter 3
No online resources.