PH415 Computer Interfacing
OSU logo
The content of this page is undergoing revision and will be moved to another site soon.
Microcontrollers and Instrumentation

Table of Contents

Introduction

  • Microcontrollers (μC, uC or MCU) lie at the core of modern instruments. Though very different from the CPUs of desktop and hand-held computers, μCs have many of the same basic attributes. Interfacing experimental hardware directly to a μC is a worthwhile endeavor because one can learn about two subjects of fundamental importance: how the arithmetic logic unit (ALU) operates in conjunction with memory and peripheral interfaces; how instruments can be designed and operated to provide the specific capabilities needed for an experimental system or a machine.
  • Many μC families are available from a variety of manufacturers, and it is difficult to select a family on which to expend the required time and effort. Factors important to the decision are the availability of development boards and reference designs and the availability and quality of programming tools. For example, the Arduino is a sytem of development and application boards based upon the Atmel ATmegaAVR series of 8-bit μCs. The Arduinos are very popular because of the simplicity of the basic boards, the availability of add-on cards (shields) from many sources and the quality of the open-source and cross-platform C-based IDE.
  • The Texas Instruments MSP430 family of microcontrollers provides a rich selection of ultra-low power 16-bit devices with flash memory, static RAM, general purpose digital I/O (GPIO), standard serial communications protocols, analog I/O, counters/timers and other capabilities. TI also provides many evaluation boards and reference designs along with Code Composer Studio, an IDE based upon Eclipse. CCS is available for Windows and Linux, and an open-source compiler and loader/debugger are available.
  • Though PIC and Atmel μCs have more than adequate functionality and programming support, the choice for this class is the MSP430 family of μCs, boards and development software tools.