RTC Website

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)

TX

Programming the myRIO DIO lines

TX

C multidimensional arrays

Summary

Problems

Programming the low-level user interface

TX

Online resources for Chapter 3

No online resources.