+ All Categories
Home > Documents > CPE/EE 421 Microcomputers: The MSP430 Introduction

CPE/EE 421 Microcomputers: The MSP430 Introduction

Date post: 05-Jan-2016
Category:
Upload: gazit
View: 98 times
Download: 1 times
Share this document with a friend
Description:
CPE/EE 421 Microcomputers: The MSP430 Introduction. Instructor: Dr Aleksandar Milenkovic Lecture Notes. Outline. MSP430: An Introduction The MSP430 family Technology Roadmap Typical Applications The MSP430 Documentation MSP430 Architecture MSP430 Devices Getting Started with EasyWeb2 - PowerPoint PPT Presentation
Popular Tags:
53
CPE/EE 421 Microcomputers: The MSP430 Introduction Instructor: Dr Aleksandar Milenkovic Lecture Notes
Transcript
Page 1: CPE/EE 421 Microcomputers:  The MSP430 Introduction

CPE/EE 421 Microcomputers: The MSP430 Introduction

Instructor: Dr Aleksandar MilenkovicLecture Notes

Page 2: CPE/EE 421 Microcomputers:  The MSP430 Introduction

CPE/EE 421/521 Microcomputers

2

Outline

MSP430: An Introduction The MSP430 family Technology Roadmap Typical Applications The MSP430 Documentation MSP430 Architecture MSP430 Devices Getting Started with EasyWeb2 MSP430 RISC core

Page 3: CPE/EE 421 Microcomputers:  The MSP430 Introduction

CPE/EE 421/521 Microcomputers

3

The Family

Broad family of TI’s 16-bit microcontrollers from 1Kbytes ROM, 128 bytes RAM (approx. $1 ) to 60Kbytes ROM, 10Kbytes RAM ( $10)

Three subfamilies MSP430x1xx: basic unit MSP430x3xx: more features MSP430x4xx: built-in LCD driver

Page 4: CPE/EE 421 Microcomputers:  The MSP430 Introduction

CPE/EE 421/521 Microcomputers

4

Part numbering convention

MSP430MtFaFbMc Mt : Memory type

C – ROM, F – Flash, P – OTP, E – EPROM Fa,Fb

10, 11 – basic 12, 13 – HW UART 14 – HW UART, HW multiplier 31, 32 – LCD Controller 33 – LCD controller, HW UART, HW multiplier 41 – LCD controller 43 - LCD controller, HW UART 44 - LCD controller, HW UART, HW multiplier

Page 5: CPE/EE 421 Microcomputers:  The MSP430 Introduction

CPE/EE 421/521 Microcomputers

5

Part numbering convention

MSP430MtFaFbMc

Mc : Memory capacity 0: 1 Kb ROM, 128 b RAM 1: 2 KB ROM, 128 b RAM 2: 4 KB ROM, 256 b RAM .... 9: 60 KB ROM, 2 Kb RAM

Page 6: CPE/EE 421 Microcomputers:  The MSP430 Introduction

CPE/EE 421/521 Microcomputers

6

MSP 430 Roadmap

Page 7: CPE/EE 421 Microcomputers:  The MSP430 Introduction

CPE/EE 421/521 Microcomputers

7

Handheld Measurement Air Flow measurement Alcohol meter Barometer Data loggers Emission/Gas analyser Humidity measurement Temperature measurement Weight scales

Medical Instruments Blood pressure meter Blood sugar meter Breath measurement EKG system

Home environment Air conditioning Control unit Thermostat Boiler control Shutter control Irrigation system White goods (Washing machine,..)

Misc Smart card reader Taxi meter Smart Batteries

Utility Metering Gas Meter Water Meter Heat Volume Counter Heat Cost Allocation Electricity Meter Meter reading system (RF)

Sports equipment Altimeter Bike computer Diving watches

Security Glass break sensors Door control Smoke/fire/gas detectors

MSP430 Typical Applications

Page 8: CPE/EE 421 Microcomputers:  The MSP430 Introduction

CPE/EE 421/521 Microcomputers

8An MSP430-Based System

LCD

Switches

RS232 controller

Thermistor

Analog I/O

RS232

2-axes joystick

Adj. Vol. Regul.

LEDs

CKeypad

Page 9: CPE/EE 421 Microcomputers:  The MSP430 Introduction

CPE/EE 421/521 Microcomputers

9

Battery Microcontroller

TI MSP430F149 8-channel 12-bit AD conv.

Accelerometer Movement detection Analog Device ADXL202

Transceiver LINX 916 MHz

Basic WISE

Another MSP430-Based System

Page 10: CPE/EE 421 Microcomputers:  The MSP430 Introduction

CPE/EE 421/521 Microcomputers

10

Tmote Sky Platform

Texas Instruments 16-bit MSP430F149 microcontroller (2KB RAM, 60KB ROM)

Chipcon 2420, 250kbps, 2.4GHz, IEEE 802.15.4 compliant wireless transceiver with programmable output power

Integrated onboard antenna with 50m range indoors and 125m range outdoors

Integrated humidity, temperature, and light sensors

Page 11: CPE/EE 421 Microcomputers:  The MSP430 Introduction

CPE/EE 421/521 Microcomputers

11

Tmote Sky Platform

http://www.moteiv.com

Page 12: CPE/EE 421 Microcomputers:  The MSP430 Introduction

CPE/EE 421/521 Microcomputers

12

MSP430 Documentation

MSP430 home page (TI) www.ti.com/msp430

User’s manual (MSP430x1xx Family) http://www.ece.uah.edu/~milenka/cpe421-06S/docs/

msp430/slau049e.pdf Datasheet

http://www.ece.uah.edu/~milenka/cpe421-06S/docs/msp430/msp430f149.pdf

TI Workshop document http://www.ece.uah.edu/~milenka/cpe421-06S/docs/

msp430/430_2002_atc_workshop.pdf

IAR Workbench Tutorial http://www.ece.uah.edu/~milenka/cpe421-06S/docs/

msp430/iar_tut.pdf

Page 13: CPE/EE 421 Microcomputers:  The MSP430 Introduction

CPE/EE 421/521 Microcomputers

13

MSP 430 Modular Architecture

Page 14: CPE/EE 421 Microcomputers:  The MSP430 Introduction

CPE/EE 421/521 Microcomputers

14

CPU Introduction

RISC architecture with 27 instructions and 7 addressing modes. Orthogonal architecture with every instruction usable with every addressing mode. Full register access including program counter, status registers,

and stack pointer. Single-cycle register operations. Large 16-bit register file reduces fetches to memory. 16-bit address bus allows direct access and branching throughout

entire memory range. 16-bit data bus allows direct manipulation of word-wide arguments. Constant generator provides six most used immediate values and

reduces code size. Direct memory-to-memory transfers without intermediate register

holding. Word and byte addressing and instruction formats.

Page 15: CPE/EE 421 Microcomputers:  The MSP430 Introduction

CPE/EE 421/521 Microcomputers

15

MSP430 16-bit RISC

Large 16-bit register file eliminates single accumulator bottleneck

High-bandwidth 16-bit data and address bus with no paging

RISC architecture with 27 instructions and 7 addressing modes

Single-cycle register operations with full-access

Direct memory-memory transfer designed for modern programming

Compact silicon 30% smaller than an ‘8051 saves power and cost

Page 16: CPE/EE 421 Microcomputers:  The MSP430 Introduction

CPE/EE 421/521 Microcomputers

16

CPU Registers

Page 17: CPE/EE 421 Microcomputers:  The MSP430 Introduction

CPE/EE 421/521 Microcomputers

17

Registers: PC (R0)

Each instruction usesan even number of bytes (2, 4, or 6)

PC is word aligned (the LSB is 0)

MOV #LABEL,PC ; Branch to address LABEL

MOV LABEL,PC ; Branch to address contained in LABEL

MOV @R14,PC ; Branch indirect, indirect R14

Page 18: CPE/EE 421 Microcomputers:  The MSP430 Introduction

CPE/EE 421/521 Microcomputers

18

Registers: SP (R1)

Stack pointer for return addresses of subroutines and interrupts

SP is word aligned (the LSB is 0) Pre-decrement/post-increment scheme

MOV 2(SP),R6 ; Item I2 –> R6

MOV R7,0(SP) ; Overwrite TOS with R7

PUSH #0123h ; Put 0123h onto TOS

POP R8 ; R8 = 0123h

Page 19: CPE/EE 421 Microcomputers:  The MSP430 Introduction

CPE/EE 421/521 Microcomputers

19

Registers: SR (R2)

C: SR(0) Z: SR(1) N: SR(2) GIE (Global interrupt enable): SR(3) CPUOff: SR(4) OSCOff: SR(5) SCG1, SCG0: SR(7), SR(6) V: SR(8)

Page 20: CPE/EE 421 Microcomputers:  The MSP430 Introduction

CPE/EE 421/521 Microcomputers

20

Status bits

Page 21: CPE/EE 421 Microcomputers:  The MSP430 Introduction

CPE/EE 421/521 Microcomputers

21

Constant Generators

As – source register addressing mode in the instruction word

Page 22: CPE/EE 421 Microcomputers:  The MSP430 Introduction

CPE/EE 421/521 Microcomputers

22

CISC / RISC Instruction Set

Page 23: CPE/EE 421 Microcomputers:  The MSP430 Introduction

CPE/EE 421/521 Microcomputers

23

27 Core RISC Instructions

Page 24: CPE/EE 421 Microcomputers:  The MSP430 Introduction

CPE/EE 421/521 Microcomputers

24

Emulated Instructions

Page 25: CPE/EE 421 Microcomputers:  The MSP430 Introduction

CPE/EE 421/521 Microcomputers

25

51 Total Instructions

Page 26: CPE/EE 421 Microcomputers:  The MSP430 Introduction

CPE/EE 421/521 Microcomputers

26

Double operand instructions

Page 27: CPE/EE 421 Microcomputers:  The MSP430 Introduction

CPE/EE 421/521 Microcomputers

27

Single Operand Instruction

Page 28: CPE/EE 421 Microcomputers:  The MSP430 Introduction

CPE/EE 421/521 Microcomputers

28

Jump Instructions

Page 29: CPE/EE 421 Microcomputers:  The MSP430 Introduction

CPE/EE 421/521 Microcomputers

29

3 Instruction Formats

Page 30: CPE/EE 421 Microcomputers:  The MSP430 Introduction

CPE/EE 421/521 Microcomputers

30

Addressing Modes

Page 31: CPE/EE 421 Microcomputers:  The MSP430 Introduction

CPE/EE 421/521 Microcomputers

31

Register Addressing Mode

Page 32: CPE/EE 421 Microcomputers:  The MSP430 Introduction

CPE/EE 421/521 Microcomputers

32

Register-Indexed Addressing Mode

Page 33: CPE/EE 421 Microcomputers:  The MSP430 Introduction

CPE/EE 421/521 Microcomputers

33

Symbolic Addressing Mode

Page 34: CPE/EE 421 Microcomputers:  The MSP430 Introduction

CPE/EE 421/521 Microcomputers

34

Absolute Addressing Mode

Page 35: CPE/EE 421 Microcomputers:  The MSP430 Introduction

CPE/EE 421/521 Microcomputers

35

Register Indirect Addressing Mode

Page 36: CPE/EE 421 Microcomputers:  The MSP430 Introduction

CPE/EE 421/521 Microcomputers

36

Register Indirect Autoincrement Addressing Mode

Page 37: CPE/EE 421 Microcomputers:  The MSP430 Introduction

CPE/EE 421/521 Microcomputers

37

Immediate Addressing Mode

Page 38: CPE/EE 421 Microcomputers:  The MSP430 Introduction

CPE/EE 421/521 Microcomputers

38

Code Reduction Effect of Constant Generator

Page 39: CPE/EE 421 Microcomputers:  The MSP430 Introduction

CPE/EE 421/521 Microcomputers

39

Machine Cycles for Format I Instructions

Page 40: CPE/EE 421 Microcomputers:  The MSP430 Introduction

CPE/EE 421/521 Microcomputers

40

Machine Cycles for Format II/III Instructions

Page 41: CPE/EE 421 Microcomputers:  The MSP430 Introduction

CPE/EE 421/521 Microcomputers

41

MSP430 Memory Model

Page 42: CPE/EE 421 Microcomputers:  The MSP430 Introduction

CPE/EE 421/521 Microcomputers

42

Memory Organization

Page 43: CPE/EE 421 Microcomputers:  The MSP430 Introduction

CPE/EE 421/521 Microcomputers

43

MSP 430 Architecture: A Closer Look

Page 44: CPE/EE 421 Microcomputers:  The MSP430 Introduction

CPE/EE 421/521 Microcomputers

44

MSPx430x14x Architecture

64 TQFP (The The Thin Quad Flat Pack package

Page 45: CPE/EE 421 Microcomputers:  The MSP430 Introduction

CPE/EE 421/521 Microcomputers

45

Basic Clock System

Basic Clock Moduleprovides the clocks for the MSP430 devices

Page 46: CPE/EE 421 Microcomputers:  The MSP430 Introduction

CPE/EE 421/521 Microcomputers

46

Watchdog Timer

WDT module performs a controlled system restart after a software problem occurs

• Can serve as an interval timer (generates interrupts)

• WDT Control register is password protected

• Note: Powers-up active

Page 47: CPE/EE 421 Microcomputers:  The MSP430 Introduction

CPE/EE 421/521 Microcomputers

47

Timer_A

Timer_A is a 16-bit timer/counter with three capture/compare registers

• Capture external signals

• Compare PWM mode

• SCCI latch for asynchronous communication

Page 48: CPE/EE 421 Microcomputers:  The MSP430 Introduction

CPE/EE 421/521 Microcomputers

48

Comparator_A

Comparator_A is an analog voltage comparator

• Supports precision slope analog-to-digital conversions

• Supply voltage supervision, and

• Monitoring of external analog signals.

Page 49: CPE/EE 421 Microcomputers:  The MSP430 Introduction

CPE/EE 421/521 Microcomputers

49

Digital I/O

Independently programmable individual I/Os

• Up to 6 ports (P1 – P6)

• Each has 8 I/O pins

• Each pin can be configured as input or output

• P1 and P2 pins can be configured to assert an interrupt request

01234567

P1.

P6.

P2.

Input Register PxIN

Output Register PxOUT

Direction Register PxDIR

Interrupt Flag Register PxIFG

Interrupt Enable Register PxIE

Interrupt Edge Select Register PxIES

Function Select Register PxSEL

P3.

P5.

Port1Port2

Port3

Port6

yes yes

yes no

yes no

yes no

yesyes

yesyes

yesyes

P4.

Page 50: CPE/EE 421 Microcomputers:  The MSP430 Introduction

CPE/EE 421/521 Microcomputers

50

ADC12

High-performance 12-bit analog-to-digital converter

• More than 200 Ksamples/sec

• Programmable sample&hold

• 8 external input channels

• Internal storage

Page 51: CPE/EE 421 Microcomputers:  The MSP430 Introduction

CPE/EE 421/521 Microcomputers

51

USART Serial Port

The universal synchronous/ asynchronous receive/transmit (USART) peripheral interface supports two serial modes with one hardware module

• UART or SPI (Synchronous Peripheral Interface) modes

• Double-buffered

• Baud-rate generator

Page 52: CPE/EE 421 Microcomputers:  The MSP430 Introduction

CPE/EE 421/521 Microcomputers

52

Getting Started with EasyWeb2

Page 53: CPE/EE 421 Microcomputers:  The MSP430 Introduction

CPE/EE 421/521 Microcomputers

53

Getting Started with EasyWeb2//********************************************// MSP-FET430P140 Demo - Software Toggle P2.1//// Description; Toggle P2.1 by xor'ing P2.1 // inside of a software loop.// ACLK = n/a, MCLK = SMCLK = default DCO ~ 800k//// MSP430F149// -----------------// /|\| XIN|- // | | |// --|RST XOUT|-// | |// | P2.1|-->LED//// M. Buccini// Texas Instruments, Inc// January 2002// Built with IAR Embedded Workbench Version:

1.25A// // @Alex Milenkovich, [email protected]// The University of Alabama in Huntsville// February 2005// Modified for easyWeb2 board to blink // the Status led (port P2.1)//********************************************

#include <msp430x14x.h>

void main(void)

{

// Stop watchdog timer

WDTCTL = WDTPW + WDTHOLD;

P2DIR |= 0x02; // Set P2.1 to output direction

for (;;)

{

unsigned int i;

// Toggle P2.1 using exclusive-OR

P2OUT ^= 0x02;

i = 50000; // Delay

do (i--);

while (i != 0);

}

}


Recommended