SLAS697E March 2010 – November 2016 MSP430F2619S-HT
PRODUCTION DATA.
The MSP430 CPU has a 16-bit RISC architecture that is highly transparent to the application. All operations, other than program-flow instructions, are performed as register operations in conjunction with seven addressing modes for source operand and four addressing modes for destination operand.
The CPU is integrated with 16 registers that provide reduced instruction execution time. The register-to-register operation execution time is one cycle of the CPU clock.
Four of the registers, R0 to R3, are dedicated as program counter, stack pointer, status register, and constant generator respectively. The remaining registers are general-purpose registers.
Peripherals are connected to the CPU using data, address, and control buses, and can be handled with all instructions.
The instruction set consists of 51 instructions with three formats and seven address modes. Each instruction can operate on word and byte data. Table 5-1 shows examples of the three types of instruction formats; the address modes are listed in Table 5-2.
Dual operands, source-destination | For example, ADD R4,R5 | R4 + R5 → R5 |
Single operands, destination only | For example, CALL R8 | PC → (TOS), R8 → PC |
Relative jump, un/conditional | For example, JNE | Jump-on-equal bit = 0 |
ADDRESS MODE | S(1) | D(2) | SYNTAX | EXAMPLE | OPERATION |
---|---|---|---|---|---|
Register | • | • | MOV Rs,Rd | MOV R10,R11 | R10 → R11 |
Indexed | • | • | MOV X(Rn),Y(Rm) | MOV 2(R5),6(R6) | M(2+R5) → M(6+R6) |
Symbolic (PC relative) | • | • | MOV EDE,TONI | M(EDE) → M(TONI) | |
Absolute | • | • | MOV &MEM,&TCDAT | M(MEM) → M(TCDAT) | |
Indirect | • | MOV @Rn,Y(Rm) | MOV @R10,Tab(R6) | M(R10) → M(Tab+R6) | |
Indirect autoincrement | • | MOV @Rn+,Rm | MOV @R10+,R11 | M(R10) → R11 R10 + 2 → R10 |
|
Immediate | • | MOV #X,TONI | MOV #45,TONI | #45 → M(TONI) |
The MSP430 has one active mode and five software selectable low-power modes of operation. An interrupt event can wake up the device from any of the five low-power modes, service the request and restore back to the low-power mode on return from the interrupt program.
The following six operating modes can be configured by software:
The interrupt vectors and the power-up starting address are located in the address range of 0FFFF–0FFC0h. The vector contains the 16-bit address of the appropriate interrupt handler instruction sequence.
If the reset vector (located at address 0FFFEh) contains 0FFFFh (for example, flash is not programmed), the CPU goes into LPM4 immediately after power up.
INTERRUPT SOURCE | INTERRUPT FLAG | SYSTEM INTERRUPT | WORD ADDRESS | PRIORITY |
---|---|---|---|---|
Power up External reset Watchdog Flash key violation PC out-of-range(1) |
PORIFG RSTIFG WDTIFG KEYV (2) |
Reset | 0x0FFFE | 31, highest |
NMI Oscillator fault Flash memory access violation |
NMIIFG OFIFG ACCVIFG(2)(6) |
(non)-maskable, (non)-maskable, (non)-maskable |
0x0FFFC | 30 |
Timer_B7 | TBCCR0 CCIFG(3) | maskable | 0x0FFFA | 29 |
Timer_B7 | TBCCR1 and TBCCR2 CCIFGs, TBIFG(2)(3) |
maskable | 0x0FFF8 | 28 |
Comparator_A+ | CAIFG | maskable | 0x0FFF6 | 27 |
Watchdog timer+ | WDTIFG | maskable | 0x0FFF4 | 26 |
Timer_A3 | TACCR0 CCIFG(3) | maskable | 0x0FFF2 | 25 |
Timer_A3 | TACCR1 CCIFG, TACCR2 CCIFG, TAIFG(2)(3) |
maskable | 0x0FFF0 | 24 |
USCI_A0/USCI_B0 receive USCI_B0 I2C status |
UCA0RXIFG, UCB0RXIFG(2)(4) | maskable | 0x0FFEE | 23 |
USCI_A0/USCI_B0 transmit USCI_B0 I2C receive/transmit |
UCA0TXIFG, UCB0TXIFG(2)(5) | maskable | 0x0FFEC | 22 |
ADC12 | ADC12IFG(3) | maskable | 0x0FFEA | 21 |
0x0FFE8 | 20 | |||
I/O port P2 (eight flags) | P2IFG.0 to P2IFG.7(2)(3) | maskable | 0x0FFE6 | 19 |
I/O port P1 (eight flags) | P1IFG.0 to P1IFG.7(2)(3) | maskable | 0x0FFE4 | 18 |
USCI_A0/USCI_B1 receive USCI_B1 I2C status |
UCA1RXIFG, UCB1RXIFG(2)(4) | maskable | 0x0FFE2 | 17 |
USCI_A1/USCI_B1 transmit USCI_B1 I2C receive/transmit |
UCA1TXIFG, UCB1TXIFG(2)(5) | maskable | 0x0FFE0 | 16 |
DMA | DMA0IFG, DMA1IFG, DMA2IFG(2)(3) | maskable | 0x0FFDE | 15 |
DAC12 | DAC12_0IFG, DAC12_1IFG(2)(3) | maskable | 0x0FFDC | 14 |
Reserved(7)(8) | Reserved | 0x0FFDA to 0x0FFC0 | 13 to 0, lowest |
Most interrupt and module enable bits are collected into the lowest address space. Special function register bits not allocated to a functional purpose are not physically present in the device. Simple software access is provided with this arrangement.
Address | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
00h | ACCVIE | NMIIE | OFIE | WDTIE |
rw-0 | rw-0 | rw-0 | rw-0 |
WDTIE: | Watchdog Timer interrupt enable. Inactive if watchdog mode is selected. Active if Watchdog Timer is configured in interval timer mode. |
OFIE: | Oscillator fault enable |
NMIIE: | (Non)maskable interrupt enable |
ACCVIE: | Flash access violation interrupt enable |
Address | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
01h | UCB0TXIE | UCB0RXIE | UCA0TXIE | UCA0RXIE |
rw-0 | rw-0 | rw-0 | rw-0 |
UCA0RXIE | USCI_A0 receive-interrupt enable |
UCA0TXIE | USCI_A0 transmit-interrupt enable |
UCB0RXIE | USCI_B0 receive-interrupt enable |
UCB0TXIE | USCI_B0 transmit-interrupt enable |
Address | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
02h | NMIIFG | RSTIFG | PORIFG | OFIFG | WDTIFG |
rw-0 | rw-(0) | rw-(1) | rw-1 | rw-(0) |
WDTIFG: | Set on Watchdog Timer overflow (in watchdog mode) or security key violation. Reset on VCC power-up or a reset condition at RST/NMI pin in reset mode. |
OFIFG: | Flag set on oscillator fault7 |
RSTIFG: | External reset interrupt flag. Set on a reset condition at RST/NMI pin in reset mode. Reset on VCC power up. |
PORIFG: | Power-On Reset interrupt flag. Set on VCC power up. |
NMIIFG: | Set via RST/NMI-pin |
Address | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
03h | UCB0
TXIFG |
UCB0
RXIFG |
UCA0
TXIFG |
UCA0
RXIFG |
rw-1 | rw-0 | rw-1 | rw-0 |
UCA0RXIFG | USCI_A0 receive-interrupt flag |
UCA0TXIFG | USCI_A0 transmit-interrupt flag |
UCB0RXIFG | USCI_B0 receive-interrupt flag |
UCB0TXIFG | USCI_B0 transmit-interrupt flag |
xxx
Legend: | ||
rw: | Bit can be read and written. | |
rw-0, 1: | Bit can be read and written. It is Reset or Set by PUC. | |
rw-(0), (1): | Bit can be read and written. It is Reset or Set by POR. | |
SFR bit is not present in device. |
MSP430F2619 | ||
---|---|---|
Memory Main: interrupt vector Main: code memory |
Size Flash Flash |
120 kB Flash 0x0FFFF – 0x0FFC0 0x0FFFF – 0x02100 |
RAM (total) | Size | 4 kB 0x020FF -- 0x01100 |
Extended | Size | 2 kB 0x020FF -- 0x01900 |
Mirrored | Size | 2 kB 0x018FF -- 0x01100 |
Information memory | Size Flash |
256 Byte 0x010FF – 0x01000 |
Boot memory | Size ROM |
1 kB 0x0FFF – 0x0C00 |
RAM (mirrored at 18FFh to 01100h) | Size | 2 kB 0x009FF – 0x0200 |
Peripherals | 16-bit 8-bit 8-bit SFR |
0x001FF – 0x00100 0x000FF – 0x00010 0x0000F – 0x00000 |
The MSP430 bootstrap loader (BSL) enables users to program the flash memory or RAM using a UART serial interface. Access to the MSP430 memory via the BSL is protected by user-defined password. For complete description of the features of the BSL and its implementation, see Features of the MSP430 Bootstrap Loader (SLAA089).
BSL Function | PM Package Pins |
---|---|
Data Transmit | 13 - P1.1 |
Data Receive | 22 - P2.2 |
The flash memory can be programmed via the JTAG port, the bootstrap loader or in-system by the CPU. The CPU can perform single-byte and single-word writes to the flash memory. Features of the flash memory include:
Peripherals are connected to the CPU through data, address, and control busses and can be handled using all instructions. For complete module descriptions, refer to MSP430x2xx Family User's Guide (SLAU144).
The DMA controller allows movement of data from one memory address to another without CPU intervention. For example, the DMA controller can be used to move data from the ADC12 conversionmemory to RAM. Using the DMA controller can increase the throughput of peripheral modules. The DMA controller reduces system power consumption by allowing the CPU to remain in sleep mode without having to awaken to move data to or from a peripheral.
The clock system is supported by the basic clock module that includes support for a 32768-Hz watch crystal oscillator, an internal very low power, low frequency oscillator and an internal digitally-controlled oscillator (DCO). The basic clock module is designed to meet the requirements of both low system cost and low-power consumption. The internal DCO provides a fast turn-on clock source and stabilizes in less than 1 μs. The basic clock module provides the following clock signals:
The DCO settings to calibrate the DCO output frequency are stored in the information memory segment A.
NAME | ADDRESS | VALUE | DESCRIPTION |
---|---|---|---|
TAG_DCO_30 | 0x10F6 | 0x01 | DCO frequency calibration at VCC = 3 V and TA = 25°C at calibration |
TAG_ADC12_1 | 0x10DA | 0x08 | ADC12_1 calibration tag |
TAG_EMPTY | -- | 0xFE | Identifier for empty areas |
LABEL | CONDITION AT CALIBRATION/DESCRIPTION | SIZE | ADDRESS OFFSET |
---|---|---|---|
CAL_ADC_25T85 | INCHx = 0x1010; REF2_5 = 1, TA = 125°C | word | 0x000E |
CAL_ADC_25T30 | INCHx = 0x1010; REF2_5 = 1, TA = 30°C | word | 0x000C |
CAL_ADC_25VREF_FACTOR | REF2_5 = 1,TA = 30°C | word | 0x000A |
CAL_ADC_15T85 | INCHx = 0x1010; REF2_5 = 0, TA = 125°C | word | 0x0008 |
CAL_ADC_15T30 | INCHx = 0x1010; REF2_5 = 0, TA = 30°C | word | 0x0006 |
CAL_ADC_15VREF_FACTOR | REF2_5 = 0,TA = 30°C | word | 0x0004 |
CAL_ADC_OFFSET | External VREF = 1.5 V, ƒADC12CLK = 5 MHz | word | 0x0002 |
CAL_ADC_GAIN_FACTOR | External VREF = 1.5 , ƒADC12CLK = 5 MHz | word | 0x0000 |
CAL_BC1_1MHZ | -- | byte | 0x0007 |
CAL_DCO_1MHZ | -- | byte | 0x0006 |
CAL_BC1_8MHZ | -- | byte | 0x0005 |
CAL_DCO_8MHZ | -- | byte | 0x0004 |
CAL_BC1_12MHZ | -- | byte | 0x0003 |
CAL_DCO_12MHZ | -- | byte | 0x0002 |
CAL_BC1_16MHZ | -- | byte | 0x0001 |
CAL_DCO_16MHZ | -- | byte | 0x0000 |
The brownout circuit is implemented to provide the proper internal reset signal to the device during power on and power off. The SVS circuitry detects if the supply voltage drops below a user selectable level and supports both supply voltage supervision (the device is automatically reset) and supply voltage monitoring (SVM) (the device is not automatically reset).
The CPU begins code execution after the brownout circuit releases the device reset. However, VCC may not have ramped to VCC(min) at that time. The user must ensure that the default DCO settings are not changed until VCC reaches VCC(min). If desired, the SVS circuit can be used to determine when VCC reaches VCC(min).
There are six 8-bit I/O ports implemented – ports P1 through P6:
The primary function of the watchdog timer (WDT+) module is to perform a controlled system restart after a software problem occurs. If the selected time interval expires, a system reset is generated. If the watchdog function is not needed in an application, the module can be disabled or configured as an interval timer and can generate interrupts at selected time intervals.
The multiplication operation is supported by a dedicated peripheral module. The module performs 16 × 16,
16 × 8, 8 × 16, and 8 × 8 bit operations. The module is capable of supporting signed and unsigned multiplication as well as signed and unsigned multiply and accumulate operations. The result of an operation can be accessed immediately after the operands have been loaded into the peripheral registers. No additional clock cycles are required.
The universal serial communication interface (USCI) module is used for serial data communication. The USCI module supports synchronous communication protocols like SPI (3 or 4 pin), I2C and asynchronous communication protocols like UART, enhanced UART with automatic baud-rate detection (LIN), and IrDA.
USCI_A0 provides support for SPI (3 or 4 pin), UART, enhanced UART and IrDA.
USCI_B0 provides support for SPI (3 or 4 pin) and I2C.
Timer_A3 is a 16-bit timer/counter with three capture/compare registers. Timer_A3 can support multiple capture/compares, PWM outputs, and interval timing. Timer_A3 also has extensive interrupt capabilities. Interrupts may be generated from the counter on overflow conditions and from each of the capture/compare registers.
INPUT PIN NO. | DEVICE INPUT SIGNAL |
MODULE INPUT NAME |
MODULE BLOCK |
MODULE U SIGNAL |
OUTPUT PIN NO. |
---|---|---|---|---|---|
12 - P1.0 | TACLK | TACLK | Timer | NA | |
ACLK | ACLK | ||||
SMCLK | SMCLK | ||||
21 - P2.1 | TAINCLK | INCLK | |||
13 - P1.1 | TA0 | CCI0A | CCR0 | TA0 | 13 - P1.1 |
22 - P2.2 | TA0 | CCI0B | 17 - P1.5 | ||
DVSS | GND | 27 - P2.7 | |||
DVCC | VCC | ||||
14 - P1.2 | TA1 | CCI1A | CCR1 | TA1 | 14 - P1.2 |
CAOUT (internal) |
CCI1B | 18 - P1.6 | |||
DVSS | GND | 23 - P2.3 | |||
DVCC | VCC | ADC12 (internal) |
|||
DAC12_0 (internal) |
|||||
DAC12_1 (internal) |
|||||
15 - P1.3 | TA2 | CCI2A | CCR2 | TA2 | 15 - P1.3 |
ACLK (internal) |
CCI2B | 19 - P1.7 | |||
DVSS | GND | 24 - P2.4 | |||
DVCC | VCC |
Timer_B7 is a 16-bit timer/counter with three capture/compare registers. Timer_B7 can support multiple capture/compares, PWM outputs, and interval timing. Timer_B7 also has extensive interrupt capabilities. Interrupts may be generated from the counter on overflow conditions and from each of the capture/compare registers.
Timer_B7 Signal Connections | |||||
---|---|---|---|---|---|
INPUT PIN NO. | DEVICE INPUT SIGNAL |
MODULE INPUT NAME |
MODULE BLOCK |
MODULE OUTPUT SIGNAL |
OUTPUT PIN NO. |
43 - P4.7 | TBCLK | TBCLK | Timer | NA | |
ACLK | ACLK | ||||
SMCLK | SMCLK | ||||
43 - P4.7 | TBCLK | INCLK | |||
36 - P4.0 | TB0 | CCI0A | CCR0 | TB0 | 36 - P4.0 |
36 - P4.0 | TB0 | CCI0B | ADC12 (internal) | ||
DVSS | GND | ||||
DVCC | VCC | ||||
37 - P4.1 | TB1 | CCI1A | CCR1 | TB1 | 37 - P4.1 |
37 - P4.1 | TB1 | CCI1B | ADC12 (internal) | ||
DVSS | GND | ||||
DVCC | VCC | ||||
38 - P4.2 | TB2 | CCI2A | CCR2 | TB2 | 38 - P4.2 |
38 - P4.2 | TB2 | CCI2B | DAC_0 (internal) |
||
DVSS | GND | DAC_1 (internal) |
|||
DVCC | VCC | ||||
39 - P4.3 | TB3 | CCI3A | CCR3 | TB3 | 39 - P4.3 |
39 - P4.3 | TB3 | CCI3B | |||
DVSS | GND | ||||
DVCC | VCC | ||||
40 - P4.4 | TB4 | CCI4A | CCR4 | TB4 | 40 - P4.4 |
40 - P4.4 | TB4 | CCI4B | |||
DVSS | GND | ||||
DVCC | VCC | ||||
41 - P4.5 | TB5 | CCI5A | CCR5 | TB5 | 41 - P4.5 |
41 - P4.5 | TB5 | CCI5B | |||
DVSS | GND | ||||
DVCC | VCC | ||||
42 - P4.6 | TB6 | CCI6A | CCR6 | TB6 | 42 - P4.6 |
ACLK (internal) | CCI6B | ||||
DVSS | GND | ||||
DVCC | VCC |
The primary function of the comparator_A+ module is to support precision slope analog-to-digital conversions, battery-voltage supervision, and monitoring of external analog signals.
The ADC12 module supports fast 12-bit analog-to-digital conversions. The module implements a 12-bit SAR core, sample select control, reference generator, and a 16-word conversion-and-control buffer. The conversion-and-control buffer allows up to 16 independent ADC samples to be converted and stored without any CPU intervention.
The DAC12 module is a 12-bit, R-ladder, voltage-output digital-to-analog converter (DAC). The DAC12 may be used in 8-bit or 12-bit mode and may be used in conjunction with the DMA controller. When multiple DAC12 modules are present, they may be grouped together for synchronous operation.
DMA | DMA channel 2 transfer size | DMA2SZ | 0x01F2 |
DMA channel 2 destination address | DMA2DA | 0x01EE | |
DMA channel 2 source address | DMA2SA | 0x01EA | |
DMA channel 2 control | DMA2CTL | 0x01E8 | |
DMA channel 1 transfer size | DMA1SZ | 0x01E6 | |
DMA channel 1 destination address | DMA1DA | 0x01E2 | |
DMA channel 1 source address | DMA1SA | 0x01DE | |
DMA channel 1 control | DMA1CTL | 0x01DC | |
DMA channel 0 transfer size | DMA0SZ | 0x01DA | |
DMA channel 0 destination address | DMA0DA | 0x01D6 | |
DMA channel 0 source address | DMA0SA | 0x01D2 | |
DMA channel 0 control | DMA0CTL | 0x01D0 | |
DMA module interrupt vector word | DMAIV | 0x0126 | |
DMA module control 1 | DMACTL1 | 0x0124 | |
DMA module control 0 | DMACTL0 | 0x0122 | |
DAC12 | DAC12_1 data | DAC12_1DAT | 0x01CA |
DAC12_1 control | DAC12_1CTL | 0x01C2 | |
DAC12_0 data | DAC12_0DAT | 0x01C8 | |
DAC12_0 control | DAC12_0CTL | 0x01C0 | |
ADC12 | Interrupt-vector-word register | ADC12IV | 0x01A8 |
Interrupt-enable register | ADC12IE | 0x01A6 | |
Interrupt-flag register | ADC12IFG | 0x01A4 | |
Control register 1 | ADC12CTL1 | 0x01A2 | |
Control register 0 | ADC12CTL0 | 0x01A0 | |
Conversion memory 15 | ADC12MEM15 | 0x015E | |
Conversion memory 14 | ADC12MEM14 | 0x015C | |
Conversion memory 13 | ADC12MEM13 | 0x015A | |
Conversion memory 12 | ADC12MEM12 | 0x0158 | |
Conversion memory 11 | ADC12MEM11 | 0x0156 | |
Conversion memory 10 | ADC12MEM10 | 0x0154 | |
Conversion memory 9 | ADC12MEM9 | 0x0152 | |
Conversion memory 8 | ADC12MEM8 | 0x0150 | |
Conversion memory 7 | ADC12MEM7 | 0x014E | |
Conversion memory 6 | ADC12MEM6 | 0x014C | |
ADC12 | Conversion memory 5 | ADC12MEM5 | 0x014A |
Conversion memory 4 | ADC12MEM4 | 0x0148 | |
Conversion memory 3 | ADC12MEM3 | 0x0146 | |
Conversion memory 2 | ADC12MEM2 | 0x0144 | |
Conversion memory 1 | ADC12MEM1 | 0x0142 | |
Conversion 0 | ADC12MEM0 | 0x0140 | |
ADC memory-control register15 | ADC12MCTL15 | 0x008F | |
ADC memory-control register14 | ADC12MCTL14 | 0x008E | |
ADC memory-control register13 | ADC12MCTL13 | 0x008D | |
ADC memory-control register12 | ADC12MCTL12 | 0x008C | |
ADC memory-control register11 | ADC12MCTL11 | 0x008B | |
ADC memory-control register10 | ADC12MCTL10 | 0x008A | |
ADC memory-control register9 | ADC12MCTL9 | 0x0089 | |
ADC memory-control register8 | ADC12MCTL8 | 0x0088 | |
ADC memory-control register7 | ADC12MCTL7 | 0x0087 | |
ADC memory-control register6 | ADC12MCTL6 | 0x0086 | |
ADC memory-control register5 | ADC12MCTL5 | 0x0085 | |
ADC memory-control register4 | ADC12MCTL4 | 0x0084 | |
ADC memory-control register3 | ADC12MCTL3 | 0x0083 | |
ADC memory-control register2 | ADC12MCTL2 | 0x0082 | |
ADC memory-control register1 | ADC12MCTL1 | 0x0081 | |
ADC memory-control register0 | ADC12MCTL0 | 0x0080 | |
Timer_B7 | Capture/compare register _ 6 | TBCCR6 | 0x019E |
Capture/compare register 5 | TBCCR5 | 0x019C | |
Capture/compare register 4 | TBCCR4 | 0x019A | |
Capture/compare register 3 | TBCCR3 | 0x0198 | |
Capture/compare register 2 | TBCCR2 | 0x0196 | |
Capture/compare register 1 | TBCCR1 | 0x0194 | |
Capture/compare register 0 | TBCCR0 | 0x0192 | |
Timer_B register | TBR | 0x0190 | |
Capture/compare control 6 | TBCCTL6 | 0x018E | |
Capture/compare control 5 | TBCCTL5 | 0x018C | |
Capture/compare control 4 | TBCCTL4 | 0x018A | |
Capture/compare control 3 | TBCCTL3 | 0x0188 | |
Capture/compare control 2 | TBCCTL2 | 0x0186 | |
Capture/compare control 1 | TBCCTL1 | 0x0184 | |
Capture/compare control 0 | TBCCTL0 | 0x0182 | |
Timer_B control | TBCTL | 0x0180 | |
Timer_B interrupt vector | TBIV | 0x011E | |
Timer_A3 | Capture/compare register 2 | TACCR2 | 0x0176 |
Capture/compare register 1 | TACCR1 | 0x0174 | |
Capture/compare register 0 | TACCR0 | 0x0172 | |
Timer_A register | TAR | 0x0170 | |
Reserved | 0x016E | ||
Reserved | 0x016C | ||
Reserved | 0x016A | ||
Reserved | 0x0168 | ||
Capture/compare control 2 | TACCTL2 | 0x0166 | |
Capture/compare control 1 | TACCTL1 | 0x0164 | |
Capture/compare control 0 | TACCTL0 | 0x0162 | |
Timer_A control | TACTL | 0x0160 | |
Timer_A interrupt vector | TAIV | 0x012E | |
Hardware Multiplier | Sum extend | SUMEXT | 0x013E |
Result high word | RESHI | 0x013C | |
Result low word | RESLO | 0x013A | |
Second operand | OP2 | 0x0138 | |
Multiply signed +accumulate/operand1 | MACS | 0x0136 | |
Multiply+accumulate/operand1 | MAC | 0x0134 | |
Multiply signed/operand1 | MPYS | 0x0132 | |
Multiply unsigned/operand1 | MPY | 0x0130 | |
Flash | Flash control 4 | FCTL4 | 0x01BE |
Flash control 3 | FCTL3 | 0x012C | |
Flash control 2 | FCTL2 | 0x012A | |
Flash control 1 | FCTL1 | 0x0128 | |
Watchdog | Watchdog/timer control | WDTCTL | 0x0120 |
USCI A0/B0 | USCI A0 auto baud rate control | UCA0ABCTL | 0x005D |
USCI A0 transmit buffer | UCA0TXBUF | 0x0067 | |
USCI A0 receive buffer | UCA0RXBUF | 0x0066 | |
USCI A0 status | UCA0STAT | 0x0065 | |
USCI A0 modulation control | UCA0MCTL | 0x0064 | |
USCI A0 baud rate control 1 | UCA0BR1 | 0x0063 | |
USCI A0 baud rate control 0 | UCA0BR0 | 0x0062 | |
USCI A0 control 1 | UCA0CTL1 | 0x0061 | |
USCI A0 control 0 | UCA0CTL0 | 0x0060 | |
USCI A0 IrDA receive control | UCA0IRRCTL | 0x005F | |
USCI A0 IrDA transmit control | UCA0IRTCLT | 0x005E | |
USCI B0 transmit buffer | UCB0TXBUF | 0x006F | |
USCI B0 receive buffer | UCB0RXBUF | 0x006E | |
USCI B0 status | UCB0STAT | 0x006D | |
USCI B0 I2C interrupt enable | UCB0CIE | 0x006C | |
USCI B0 baud rate control 1 | UCB0BR1 | 0x006B | |
USCI B0 baud rate control 0 | UCB0BR0 | 0x006A | |
USCI B0 control 1 | UCB0CTL1 | 0x0069 | |
USCI B0 control 0 | UCB0CTL0 | 0x0068 | |
USCI B0 I2C slave address | UCB0SA | 0x011A | |
USCI B0 I2C own address | UCB0OA | 0x0118 | |
USCI A1/B1 | USCI A1 auto baud rate control | UCA1ABCTL | 0x00CD |
USCI A1 transmit buffer | UCA1TXBUF | 0x00D7 | |
USCI A1 receive buffer | UCA1RXBUF | 0x00D6 | |
USCI A1 status | UCA1STAT | 0x00D5 | |
USCI A1 modulation control | UCA1MCTL | 0x00D4 | |
USCI A1 baud rate control 1 | UCA1BR1 | 0x00D3 | |
USCI A1 baud rate control 0 | UCA1BR0 | 0x00D2 | |
USCI A1 control 1 | UCA1CTL1 | 0x00D1 | |
USCI A1 control 0 | UCA1CTL0 | 0x00D0 | |
USCI A1 IrDA receive control | UCA1IRRCTL | 0x00CF | |
USCI A1 IrDA transmit control | UCA1IRTCLT | 0x00CE | |
USCI B1 transmit buffer | UCB1TXBUF | 0x00DF | |
USCI B1 receive buffer | UCB1RXBUF | 0x00DE | |
USCI B1 status | UCB1STAT | 0x00DD | |
USCI B1 I2C Interrupt enable | UCB1CIE | 0x00DC | |
USCI B1 baud rate control 1 | UCB1BR1 | 0x00DB | |
USCI B1 baud rate control 0 | UCB1BR0 | 0x00DA | |
USCI B1 control 1 | UCB1CTL1 | 0x00D9 | |
USCI B1 control 0 | UCB1CTL0 | 0x00D8 | |
USCI B1 I2C slave address | UCB1SA | 0x017E | |
USCI B1 I2C own address | UCB1OA | 0x017C | |
USCI A1/B1 interrupt enable | UC1IE | 0x0006 | |
USCI A1/B1 interrupt flag | UC1IFG | 0x0007 | |
Comparator_A+ | Comparator_A port disable | CAPD | 0x005B |
Comparator_A control2 | CACTL2 | 0x005A | |
Comparator_A control1 | CACTL1 | 0x0059 | |
Basic Clock | Basic clock system control3 | BCSCTL3 | 0x0053 |
Basic clock system control2 | BCSCTL2 | 0x0058 | |
Basic clock system control1 | BCSCTL1 | 0x0057 | |
DCO clock frequency control | DCOCTL | 0x0056 | |
Brownout, SVS | SVS control register (reset by brownout signal) | SVSCTL | 0x0055 |
Port P6 | Port P6 resistor enable | P6REN | 0x0013 |
Port P6 selection | P6SEL | 0x0037 | |
Port P6 direction | P6DIR | 0x0036 | |
Port P6 output | P6OUT | 0x0035 | |
Port P6 input | P6IN | 0x0034 | |
Port P5 | Port P5 resistor enable | P5REN | 0x0012 |
Port P5 selection | P5SEL | 0x0033 | |
Port P5 direction | P5DIR | 0x0032 | |
Port P5 output | P5OUT | 0x0031 | |
Port P5 input | P5IN | 0x0030 | |
Port P4 | Port P4 selection | P4SEL | 0x001F |
Port P4 resistor enable | P4REN | 0x0011 | |
Port P4 direction | P4DIR | 0x001E | |
Port P4 output | P4OUT | 0x001D | |
Port P4 input | P4IN | 0x001C | |
Port P3 | Port P3 resistor enable | P3REN | 0x0010 |
Port P3 selection | P3SEL | 0x001B | |
Port P3 direction | P3DIR | 0x001A | |
Port P3 output | P3OUT | 0x0019 | |
Port P3 input | P3IN | 0x0018 | |
Port P2 | Port P2 resistor enable | P2REN | 0x002F |
Port P2 selection | P2SEL | 0x002E | |
Port P2 interrupt enable | P2IE | 0x002D | |
Port P2 interrupt-edge select | P2IES | 0x002C | |
Port P2 interrupt flag | P2IFG | 0x002B | |
Port P2 direction | P2DIR | 0x002A | |
Port P2 output | P2OUT | 0x0029 | |
Port P2 input | P2IN | 0x0028 | |
Port P1 | Port P1 resistor enable | P1REN | 0x0027 |
Port P1 selection | P1SEL | 0x0026 | |
Port P1 interrupt enable | P1IE | 0x0025 | |
Port P1 interrupt-edge select | P1IES | 0x0024 | |
Port P1 interrupt flag | P1IFG | 0x0023 | |
Port P1 direction | P1DIR | 0x0022 | |
Port P1 output | P1OUT | 0x0021 | |
Port P1 input | P1IN | 0x0020 | |
Special Functions | SFR interrupt flag2 | IFG2 | 0x0003 |
SFR interrupt flag1 | IFG1 | 0x0002 | |
SFR interrupt enable2 | IE2 | 0x0001 | |
SFR interrupt enable1 | IE1 | 0x0000 |