Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where John H. Davies is active.

Publication


Featured researches published by John H. Davies.


MSP430 Microcontroller Basics | 2008

Chapter 7 – Digital Input, Output, and Displays

John H. Davies

Publisher Summary nThis chapter deals with digital inputs and outputs. A microcontroller interacts in many ways with the system in which it is embedded. It may receive inputs from a human user, such as through switches. These are digital in the sense that they are either on or off, high or low. Similar signals arise from some sensors, such as detectors for the water level or door lock in a washing machine. Going in the opposite direction, the microcontroller turns external devices on or off. These might be indicators, such as simple light-emitting diodes (LEDs) or more complicated seven-segment displays. The MSP430 can supply these directly if they work from the same voltage and draw a sufficiently small current. Heavier loads require transistors or integrated circuits to drive them. Although they are digital in the sense that they should take only two levels, i.e., the most straightforward form of input and output is through the digital input/output ports using binary values (low or high, corresponding to 0 or 1). Finally, this chapter deals with displays, focusing on liquid crystal displays (LCDs) as they are widely used with the MSP430. LCDs are a natural choice for low-power systems and the MSP430x4xx family can drive segmented LCDs directly. Plenty of demonstration boards have LCDs, and it is much more satisfying to work with a system that provides informative, numerical output instead of a couple of LEDs.


MSP430 Microcontroller Basics | 2008

Chapter 10 – Communication

John H. Davies

Publisher Summary nThe term communicationcovers an enormous range of possibilities in embedded electronic systems. This chapter deals with three common types of communication that current MSP430s can handle directly. All of them are serialcommunications, meaning that a single bit is transferred at a time. They are serial peripheral interface (SPI), inter-integrated circuit (I²C) bus, and asynchronous serial communication (usually called RS-232). Most MSP430s contain modules to handle straightforward communications in hardware. Out of these three, SPI and I²C share many characteristics while asynchronous communication is rather different. The major practical difference is that SPI and I²C are typically used between a microcontroller and other devices on the same PCB, while asynchronous communication is used to exchange data with other equipment such as a PC. Thus asynchronous systems must conform fully to established standards so that they work reliably and must be protected against electromagnetic interference and other hazards. This requires special interface circuits. On the other hand, simple wires are usually sufficient for SPI and I²C provided that all devices work at the same voltage. Furthermore, SPI and I²C have similar applications. The major difference between them is that I²C is a true bus, which is designed to accommodate a large number of devices. SPI and I²C are often used to communicate with port expanders to increase the effective number of pins for digital input and output, analog-to-digital and digital-to-analog converters, sensors with digital outputs, such as thermometers, external memory (dataflash, EEPROM), real-time clocks, and other processors.


MSP430 Microcontroller Basics | 2008

Chapter 11 – The Future: MSP430X

John H. Davies

Publisher Summary nMSP430 has multiple applications. This chapter describes the features of the current range of MSP430s. It provides a background of operation of the basic peripheral, discussing the style of the data sheets and user’s guides, based on which one can explore new functions. In this regard, code examples are also helpful and are discussed in this chapter. MSP430s have a uniform 16-bit architecture: Both addresses and data are 16 bits wide, which makes it trivial to use any of the general-purpose registers in the CPU for either purpose. Calculations likewise are the same for data and addresses. This is undoubtedly elegant but limits the size of the address space to 216 = 64K bytes. That is typical of an 8-bit microcontroller and it was inevitable that the demand for evermore functions in embedded applications would necessitate an expansion. The result is the MSP430X, which can address a megabyte of memory. In this regard, this chapter explains how the additional memory is organized and describes some of the changes to the instruction set that were made to accommodate it. Finally, it states that microcontrollers are versatile, straightforward to use, and provide a remarkable range of capabilities at low cost. These should ensure a successful future for the family in a world where the impact of global warming is leading to continually greater curbs on power dissipation.


MSP430 Microcontroller Basics | 2008

Chapter 6 – Functions, Interrupts, and Low-Power Modes

John H. Davies

Publisher Summary nA well-structured program should be divided into separate modules—functions in C or subroutines in assembly language. The application note MSP430 Software Coding Techniques(slaa294) describes the overall structure of a typical, interrupt-driven program for the MSP430 and describes a range of techniques to ensure that programs are robust and can easily be debugged. It is good practice to break programs into short functions or subroutines, as it makes programs easier to write and more reliable to test and maintain. This chapter sheds light on the functions and their role in codes. Functions are useful for code that is called from more than one place but should be used much more widely, to encapsulate every distinct function. They hide the detailed implementation of an activity from the high-level, strategic level of the software. Functions can readily be reused and incorporated into libraries, provided that their documentation is clear. Following this, the study deals with interrupts. Interrupts are a major feature of most embedded software. They are vaguely like functions that are called by hardware rather than software. Finally, this chapter explains low-power modes of operation. They are of significance because the MSP430 needs an interrupt to wake it from a low-power mode. In fact it is observed that no extra effort is usually needed to handle low-power modes in interrupts: The MSP430 automatically goes to active mode when an interrupt is requested, services the interrupt, and resumes its low-power mode afterward.


Archive | 2008

Mixed-Signal Systems: Analog Input and Output

John H. Davies

Publisher Summary nThis chapter deals with analog inputs and describes how these are converted to digital values that can be stored, processed, and transmitted to other systems. The MSP430 offers three methods of conversion with quite different characteristics. The first is a do-it-yourself approach that requires only a simple peripheral on the chip while the others employ a full analog-to-digital converter (ADC): comparator, successive-approximation ADC, and sigma–delta ADC. Each module has several analog inputs. In most cases these are multiplexed to a single converter, which means that conversions are performed sequentially. A few devices have multiple ADCs so that all inputs can be converted simultaneously, which is important for metering electrical power. However, ADC is only part of a complete mixed-signal system. A real circuit also includes filtering to suppress the noise that is inevitably picked up from the environment. This should be done externally on the analog signal before conversion. Further digital filtering of the converted values may also be necessary. Therefore, the designer must consider the entire system to ensure that the components work together correctly to give the desired output and meet other specifications, such as accuracy and power demand.


Archive | 2008

Mixed-Signal Systems

John H. Davies

Publisher Summary nThis chapter deals with analog inputs and describes how these are converted to digital values that can be stored, processed, and transmitted to other systems. The MSP430 offers three methods of conversion with quite different characteristics. The first is a do-it-yourself approach that requires only a simple peripheral on the chip while the others employ a full analog-to-digital converter (ADC): comparator, successive-approximation ADC, and sigma–delta ADC. Each module has several analog inputs. In most cases these are multiplexed to a single converter, which means that conversions are performed sequentially. A few devices have multiple ADCs so that all inputs can be converted simultaneously, which is important for metering electrical power. However, ADC is only part of a complete mixed-signal system. A real circuit also includes filtering to suppress the noise that is inevitably picked up from the environment. This should be done externally on the analog signal before conversion. Further digital filtering of the converted values may also be necessary. Therefore, the designer must consider the entire system to ensure that the components work together correctly to give the desired output and meet other specifications, such as accuracy and power demand.


MSP430 Microcontroller Basics | 2008

Chapter 4 – A Simple Tour of the MSP430

John H. Davies

Publisher Summary nThis chapter provides an introductory tour of the MSP430 and its basic features. The programs are selected to run on the simplest demonstration board currently available, the Olimex 1121 starter kit (MSP430-1121STK). This uses a 20-pin MSP430F1121A and provides the following inputs and outputs: LEDs active low, LED1 on P2.3 (TA1 out) and LED2 on P2.4 (TA2 out), push buttons with pull-up resistors, active low, B1 on P2.1 (INCLK in) and B2 on P1.2 (CCI1A in), piezo sounder between P2.0 and P2.5, Frequency input on P1.0 (TACLK in), Dallas iButton interface on P1.3 (CCI2A in), asynchronous serial interface (RS-232) on P1.1 (transmit) and P2.2 (receive). Many of these pins can be used for digital input and output or by Timer_A. The general approach is to write programs in C followed by assembly language, although the two programs are not always equivalent. The aims are to write outputs (light LEDs), read inputs (pushbutton), and control something automatically (flash LEDs). The simple memory model of the MSP430, a single, linear 16-bit address space, implies that the linker script is straightforward. Many microcontrollers have their memory arranged in banks to extend the range of addresses beyond the width of the address bus. Usually restrictions are placed on where the startup and interrupt vectors can point and so on, which makes the linker files spectacularly incomprehensible.


MSP430 Microcontroller Basics | 2008

Chapter 2 – The Texas Instruments MSP430

John H. Davies

Publisher Summary nThis chapter provides a review of the most important aspects of the hardware of the MSP430, which is a product of Texas Instruments (TI). It briefly introduces some simple programs that demonstrate the main functions. Furthermore, it covers individual peripherals in detail, highlighting some of the more intricate features of the CPU. It focuses on the original range of MSP430 devices, which can address 64 KB of memory. It illustrates the example of MSP430F2013, which is one of the smallest MSP430s, with only 14 pins, but nevertheless contains a broad range of functions. It is also the target in TI’s low-cost eZ430–F2013 development tool and its MSP430FG4618/F2013 Experimenter’s Board. The F2003 is identical except for a smaller flash memory and a correspondingly lower price. The F2003 and F2013 constitute one pair in a related set of devices (F2001, F2002, F2003, F2011, F2012, and F2013), known collectively as F20xx. The pairs differ mainly in their analog inputs. Finally, this chapter highlights that even a small, cheap microcontroller is a complicated system and a great deal of information is needed to exploit it fully. This, in the case of TI, particularly MSP430F2013, is explained in the study.


MSP430 Microcontroller Basics | 2008

Chapter 1 – Embedded Electronic Systems and Microcontrollers

John H. Davies

Publisher Summary nThis chapter introduces embedded electronic systems, describing where they are used, and ways in which they can be implemented. It reviews the main features of a typical small microcontroller. Microcontrollers were originally developed from microprocessors for use in embedded electronic control systems. They include a processor and most or all of the memory, clock, and other systems needed to support it. Systems that used analog electronics or small-scale integrated circuits (ICs) in the past are now more likely to use larger digital ICs, such as electronic toothbrushes, electronic dice, etc. The MSP430 is the simplest microcontroller in Texas instruments’ (TI’s) current portfolio. The MSP430 is a 16-bit processor with a von Neumann architecture, designed for low-power applications. The CPU is often described as a reduced instruction set computer (RISC). Both the address and data buses are 16 bits wide. The registers in the CPU are also all 16 bits wide and can be used interchangeably for either data or addresses. Such a processor must use its general-purpose registers in pairs for addresses or provide separate, wider registers. This makes the MSP430 simpler than an 8-bit processor with 16-bit addresses and, therefore, easy to use.


MSP430 Microcontroller Basics | 2008

Chapter 9 – Mixed-Signal Systems: Analog Input and Output

John H. Davies

Publisher Summary nThis chapter deals with analog inputs and describes how these are converted to digital values that can be stored, processed, and transmitted to other systems. The MSP430 offers three methods of conversion with quite different characteristics. The first is a do-it-yourself approach that requires only a simple peripheral on the chip while the others employ a full analog-to-digital converter (ADC): comparator, successive-approximation ADC, and sigma–delta ADC. Each module has several analog inputs. In most cases these are multiplexed to a single converter, which means that conversions are performed sequentially. A few devices have multiple ADCs so that all inputs can be converted simultaneously, which is important for metering electrical power. However, ADC is only part of a complete mixed-signal system. A real circuit also includes filtering to suppress the noise that is inevitably picked up from the environment. This should be done externally on the analog signal before conversion. Further digital filtering of the converted values may also be necessary. Therefore, the designer must consider the entire system to ensure that the components work together correctly to give the desired output and meet other specifications, such as accuracy and power demand.

Collaboration


Dive into the John H. Davies's collaboration.

Researchain Logo
Decentralizing Knowledge