TI MSP430

TI MSP430
TI MSP430
디자이너텍사스 인스트루먼트
비트16비트
소개했다1992년 2월 14일
유형메모리 메모리
엔디안니스리틀 엔디언
내선번호MSP430X
레지스터
16, R0 – 프로그램 카운터, R1 – 스택 포인터, R2 – 상태 레지스터, R2/R3 – 상수 제너레이터
MSP 430 FG438 혈당계 구동
Texas Instruments의 MSP430 칩셋용 실험 보드 2장 사진.왼쪽은 큰 칩 버전, 오른쪽은 USB 형식의 작은 버전입니다.

MSP430은 1992년 [1]2월 14일 처음 도입된 텍사스 인스트루먼트의 혼합 신호 마이크로 컨트롤러 패밀리입니다.16비트 CPU를 중심으로 구축된 MSP430은 저비용, 특히 저소비전력[2] 임베디드 어플리케이션용으로 설계되었습니다.

적용들

Aktived GlucoCheck Comport 혈당계 - MSP 430 CPU를 호스트하는 LCD 아래쪽에 있는 프린트 기판

MSP430은 저전력 임베디드 디바이스에 사용할 수 있습니다.아이돌 모드에서 소비되는 전류는 1µA 미만일 수 있습니다.CPU의 최고 속도는 25MHz입니다.전력 소비를 줄이기 위해 감속할 수 있습니다.MSP430에서는, 6개의 다른 저전력 모드도 사용하고 있기 때문에, 불필요한 클럭이나 CPU 를 무효로 할 수 있습니다.또, MSP430은 1마이크로초 미만으로 웨이크업 할 수 있어 sleep 모드를 장시간 유지할 수 있어 평균 전류 사용을 최소한으로 억제할 수 있다.이 디바이스에는, 통상의 주변기기를 탑재한 다양한 구성이 있습니다.

일반적인 주변기기 옵션으로는 비교기(단순 ADC를 수행하기 위해 타이머와 함께 사용할 수 있음), 신호 조절용 온칩 연산 증폭기(op-amp), 12비트 Digital-Analog Converter(DAC; 디지털/아날로그 변환기), LCD 드라이버, 하드웨어 승수, USB 및 ADC 결과용 직접 메모리(DMA) 등이 있습니다.일부 오래된 Erasable Programmable Read-only Memory(EPROM, MSP430E3xx 등) 및 대용량 마스크 ROM(MSP430Cxxx) 버전을 제외하고 모든 디바이스는 Joint Test Action Group(JTAG; 합동 테스트액션 그룹), 풀 와이어 또는 Spy-Bi-Wire Loader(STraffy-Wire)를 통해 시스템내 프로그래밍이 네이블로 되어 있습니다.지지하다.BSL은 F20xx, G2xx0, G2xx1, G2x2, 또는 I20xx 패밀리디바이스에는 포함되어 있지 않습니다.

메모리 제한

다만, 보다 복잡한 임베디드 시스템에서는 사용할 수 없는 제한이 있습니다.MSP430에는 외부 메모리버스가 없기 때문에 온칩메모리, 최대 512KB 플래시 메모리 및 66KB Random-Access Memory(RAM;랜덤 액세스메모리)로 제한됩니다.이것은 큰 버퍼나 데이터 테이블을 필요로 하는 애플리케이션에는 너무 작을 수 있습니다.또, DMA 컨트롤러를 탑재하고 있습니다만, DMA 출력 스트로보가 [3]없기 때문에, 칩으로부터 데이터를 이동시키는 것은 매우 어렵습니다.

MSP430 세대

MSP430 프로세서의 일반적인 세대는 6세대입니다.개발순서는 '3xx세대', '1xx세대', '4xx세대', '2xx세대', '5xx세대', '6xx세대'입니다.세대 후의 숫자는 모델을 식별합니다(일반적으로 높은 모델 번호가 더 크고 성능이 더 뛰어납니다). 세 번째 숫자는 포함된 메모리의 양을 나타내고, 네 번째 숫자는 존재하는 경우 마이너 모델 변형을 나타냅니다.가장 일반적인 변화는 다른 온칩 아날로그-디지털 변환기입니다.

3xx 및 1xx 세대는 16비트주소공간으로 제한됩니다.이후 세대에서는 20비트 주소 공간을 허용하는 '430X' 명령을 포함하도록 확장되었습니다.다른 프로세서 아키텍처(PDP-11 프로세서 등)와 마찬가지로 어드레싱 범위를 16비트 워드 크기 이상으로 확장하면 64KB보다 큰 프로그램에는 몇 가지 특징과 비효율성이 생깁니다.

다음 목록에서는 CR2032 리튬 코인 셀의 일반적인 200mA/Hr 용량을 200,000μA/Hr, 즉 22.8μA/년으로 생각하면 도움이 됩니다.따라서 CPU 요구량만을 고려하면 이러한 배터리는 32년간 0.7μA의 전류 요구량을 공급할 수 있습니다(실제로 배터리의 자가 방전에 의해 이 수치가 감소합니다).

실시간 클럭 모드와 비교하여 RAM 보유의 중요성은 실시간클럭 모드에서는 CPU가 향후 특정 시간에 클럭을 실행한 상태에서 sleep 상태가 될 수 있다는 것입니다.RAM 보유 모드에서는 일부 외부 신호(입출력(I/O) 핀 신호 또는 SPI 슬레이브 수신 인터럽트 등)를 웨이크업해야 합니다.

MSP430x1xx 시리즈

MSP430x1xx 시리즈는 내장 LCD 컨트롤러가 없는 기본 세대입니다.일반적으로 3xx 세대보다 작습니다.이러한 플래시 베이스 또는 ROM 베이스의 초저전력 MCU는, 8 MIPS, 1.8~3.6 V 의 동작, 최대 60 KB 의 플래시, 및 광범위한 아날로그 및 디지털 주변기기를 제공합니다.

  • 전력 사양의 개요는 다음과 같습니다.
    • 0.1μA RAM 보유량
    • 0.7μA 실시간 클럭 모드
    • 200μA / MIPS 액티브
    • 스탠바이 모드에서 6밀리초 미만으로 고속 웨이크업 할 수 있습니다.
  • 디바이스 파라미터
    • 플래시 옵션: 1~60 KB
    • ROM 옵션: 1 ~16 KB
    • RAM : 128 B ~10 KB
    • GPIO 옵션: 14, 22, 48핀
    • ADC 옵션:슬로프, 10비트 및 12비트 SAR
    • 기타 내장 주변기기: 12비트 DAC, 최대 2개의 16비트 타이머, 워치독 타이머, 브라운아웃 리셋, SVS, USART 모듈(UART, SPI), DMA, 16×16 승수, Comparator_A, 온도 센서

MSP430F2xx 시리즈

MSP430F2xx 시리즈는 '1xx 세대'와 비슷하지만 훨씬 낮은 전력으로 동작하며 최대 16MHz의 동작을 지원하며 외부 크리스털 없이 보다 정확한 온칩 클럭(±2%)을 갖추고 있습니다.플래시 기반의 초저전력 디바이스는 1.8~3.6V의 동작을 제공합니다.초저전력 오실레이터(VLO), 내부 풀업/풀다운 저항 및 로우핀 카운트 옵션이 포함됩니다.

  • 전력 사양의 개요는 다음과 같습니다.
    • 0.1μA RAM 보유량
    • 0.3μA 스탠바이 모드(VLO)
    • 0.7μA 실시간 클럭 모드
    • 220μA/MIPS 액티브
    • 스탠바이 모드에서 1μs 미만의 초고속 웨이크업 기능 탑재
  • 디바이스 파라미터
    • 플래시 옵션: 1 ~120 KB
    • RAM 옵션: 128 B ~8 KB
    • GPIO 옵션: 10, 11, 16, 24, 32 및 48핀
    • ADC 옵션:슬로프, 10비트 및 12비트 SAR, 16비트 및 24비트 Sigma Delta
    • 기타 내장 주변기기: 운영 앰프, 12비트 DAC, 최대 2개의 16비트 타이머, 워치독 타이머, 브라운아웃 리셋, SVS, USI 모듈(I²C, SPI), USCI 모듈, DMA, 16×16 승수, Comparator_A+, 온도 센서

MSP430G2xx 시리즈

MSP430G2xx Value Series는 플래시 기반의 초저전력 MCU를 탑재하여 1.8~3.6V의 동작으로 최대 16MIPS를 지원합니다.초저전력 오실레이터(VLO), 내부 풀업/풀다운 저항기 및 로우핀 카운트 옵션이 MSP430F2xx 시리즈보다 저렴한 가격에 포함되어 있습니다.

  • 초저전력(@2.2 V):
    • 0.1μA RAM 보유량
    • 0.4μA 스탠바이 모드(VLO)
    • 0.7μA 실시간 클럭 모드
    • 220μA/MIPS 액티브
    • 스탠바이 모드로부터의 초고속 웨이크업(1μs 미만)
  • 디바이스 파라미터
    • 플래시 옵션: 0.5 ~56 KB
    • RAM 옵션: 128 B ~4 KB
    • GPIO 옵션: 10, 16, 24, 32핀
    • ADC 옵션:슬로프, 10비트 SAR
    • 기타 내장 주변기기: 커패시티브 터치 I/O, 최대 3개의 16비트 타이머, 워치독 타이머, 브라운아웃 리셋, USI 모듈(I²C, SPI), USCI 모듈, Comparator_A+, 온도 센서

MSP430x3xx 시리즈

MSP430x3xx 시리즈는 LCD 컨트롤러가 내장된 휴대용 기기용으로 설계된 가장 오래된 세대입니다.또한 저속(32kHz) 결정과 자동으로 동기화할 수 있는 주파수 잠금 루프 오실레이터도 포함됩니다.이 세대는 EEPROM 메모리를 지원하지 않습니다.마스크 ROM과 UV 소거 및 원타임 프로그램 가능한EPROM만 지원합니다.이후 세대는 플래시 메모리와 마스크 ROM 옵션만 제공합니다.이러한 디바이스는 2.5~5.5V의 동작, 최대 32KB의 ROM을 제공합니다.

  • 전력 사양의 개요는 다음과 같습니다.
    • 0.1μA RAM 보유량
    • 0.9μA 실시간 클럭 모드
    • 160μA/MIPS 액티브
    • 스탠바이 모드에서 6밀리초 미만으로 고속 웨이크업 할 수 있습니다.
  • 디바이스 파라미터:
    • ROM 옵션: 2 ~32 KB
    • RAM 옵션: 512 B ~1 KB
    • GPIO 옵션: 14, 40핀
    • ADC 옵션:슬로프, 14비트 SAR
    • 기타 내장 주변기기: LCD 컨트롤러, 멀티플라이어

MSP430x4xx 시리즈

MSP430x4xx 시리즈는 3xx 세대와 비슷하지만 내장 LCD 컨트롤러를 탑재하여 더 크고 더 많은 기능을 갖추고 있습니다.이러한 플래시 또는 ROM 기반 디바이스는 1.8~3.6V 동작으로 8~16 MIPS, FLL 및 SVS를 제공합니다.저전력 계측 및 의료 애플리케이션에 최적.

  • 전력 사양의 개요는 다음과 같습니다.
    • 0.1μA RAM 보유량
    • 0.7μA 실시간 클럭 모드
    • 200μA / MIPS 액티브
    • 스탠바이 모드에서 6밀리초 미만으로 고속 웨이크업 할 수 있습니다.
  • 디바이스 파라미터:
    • 플래시/ROM 옵션: 4 ~120 KB
    • RAM 옵션: 256 B ~8 KB
    • GPIO 옵션: 14, 32, 48, 56, 68, 72, 80핀
    • ADC 옵션:슬로프, 10비트 및 12비트 SAR, 16비트 Sigma Delta
    • 기타 내장 주변기기: SCAN_IF, ESP430, 12비트 DAC, Op Amps, RTC, 최대 2개의 16비트 타이머, 워치독 타이머, 기본 타이머, 브라운아웃 리셋, SVS, USART 모듈(UART, SPI), USCI 모듈, LCD 컨트롤러, 32×16

MSP430x5xx 시리즈

MSP430x5xx 시리즈는 최대 25MHz, 최대 512KB의 플래시 메모리 및 최대 66KB의 RAM을 실행할 수 있습니다.이 플래시 기반 패밀리는 1.8~3.6V 동작 시 최대 25 MIPS(165 uA/MIPS)의 액티브한 전력 소비를 억제하는 것이 특징입니다.전력 소비를 최적화하기 위한 혁신적인 전원 관리 모듈과 [4]내장 USB가 포함되어 있습니다.

  • 전력 사양의 개요는 다음과 같습니다.
    • 0.1μA RAM 보유량
    • 2.5μA 실시간 클럭 모드
    • 165μA/MIPS 액티브
    • 스탠바이 모드에서 5밀리초 미만으로 고속 웨이크업 할 수 있습니다.
  • 디바이스 파라미터:
    • 플래시 옵션: 최대 512KB
    • RAM 옵션: 최대 66KB
    • ADC 옵션: 10비트 및 12비트 SAR
    • GPIO 옵션: 29, 31, 47, 48, 63, 67, 74, 87핀
    • 기타 옵션 내장 주변기기: 12비트 DAC, 고해상도 PWM, 5V I/O, USB, 백업 배터리 스위치, 최대 4개의 16비트 타이머, 워치독 타이머, 실시간 클럭, 브라운아웃 리셋, SVS, USCI 모듈, DMA, 32x32 멀티플라이어, 컴팩트 센서

MSP430x6xx 시리즈

MSP430x6xx 시리즈는 최대 25MHz, 최대 512KB의 플래시 메모리 및 최대 66KB의 RAM을 실행할 수 있습니다.이 플래시 기반 패밀리는 1.8~3.6V 동작 시 최대 25 MIPS(165 uA/MIPS)의 액티브한 전력 소비를 억제하는 것이 특징입니다.전력 소비를 최적화하기 위한 혁신적인 전원 관리 모듈과 내장 USB가 포함되어 있습니다.

  • 전력 사양의 개요는 다음과 같습니다.
    • 0.1μA RAM 보유량
    • 2.5μA 실시간 클럭 모드
    • 165μA/MIPS 액티브
    • 스탠바이 모드에서 5밀리초 미만으로 고속 웨이크업 할 수 있습니다.
  • 디바이스 파라미터:
    • 플래시 옵션: 최대 512KB
    • RAM 옵션: 최대 66KB
    • ADC 옵션: 12비트 SAR
    • GPIO 옵션: 74핀
    • 기타 내장 주변기기: USB, LCD, DAC, Comparator_B, DMA, 32x32 멀티플라이어, 전원관리모듈(BOR, SVS, SVM, LDO), 워치독타이머, RTC, 온도센서

RF SoC(CC430) 시리즈

RF SoC(CC430) 시리즈는 마이크로 컨트롤러 코어, 주변기기, 소프트웨어 및 RF 트랜시버 간의 긴밀한 통합을 제공합니다.1GHz 미만의 RF 트랜시버를 탑재.동작시 1.8V~3.6V.Arduino IDE(Integrated Development Environment)를 이용한 프로그래밍은 panStamp API를 통해 가능합니다.

  • 전력 사양의 개요는 다음과 같습니다.
    • 1μA의 RAM 보유
    • 1.7μA 실시간 클럭 모드
    • 180 μA / MIPS
  • 디바이스 파라미터:
    • 속도 옵션: 최대 20MHz
    • 플래시 옵션: 최대 32KB
    • RAM 옵션: 최대 4KB
    • ADC 옵션: 12비트 SAR
    • GPIO 옵션: 30핀 및 44핀
    • 기타 내장 주변기기: LCD 컨트롤러, 16비트 타이머, 워치독 타이머, RTC, 전원 관리 모듈(BOR, SVS, SVM, LDO), USCI 모듈, DMA, 32x32 멀티플라이어, Comp B, 온도 센서

FRAM 시리즈

Texas Instruments의 FRAM 시리즈는 플래시보다 100배 빠른 동적 파티션 분할 및 메모리 액세스 속도를 갖춘 통합 메모리를 제공합니다.또한 FRAM은 모든 전원 모드에서 제로 전원 상태를 유지할 수 있습니다.즉, 전력이 손실된 경우에도 쓰기가 보증됩니다.100조 사이클이 넘는 쓰기 내구성을 가진 EEPROM은 더 이상 필요하지 않습니다.100μA/MHz 미만의 활성 전력 소비.

  • 전력 사양의 개요는 다음과 같습니다.
    • 320nA RAM 보유
    • 0.35μA 실시간 클럭 모드
    • 82μA/MIPS 액티브
  • 디바이스 파라미터:
    • 속도 옵션: 8~24MHz
    • FRAM 옵션: 4 ~256 KB
    • RAM 옵션: 0.5~8KB
    • ADC 옵션: 10비트 또는 12비트 SAR
    • GPIO 옵션: GPIO 핀x 17 ~83
    • 기타 내장 주변기기: MPU, 최대 6대의 16비트 타이머, 워치독 타이머, RTC, 전원 관리 모듈(BOR, SVS, SVM, LDO), USCI 모듈, DMA, 멀티플라이어, Comp B, 온도 센서, LCD 드라이버, I2C 및 UART 인터페이스 확장

저전압 시리즈

저전압 시리즈에는 MSP430C09x 및 MSP430L092 부품이 포함되어 있으며, 0.9V로 동작할 수 있습니다.이들 2시리즈의 저전압 16비트 마이크로컨트롤러는 2개의 16비트 타이머, 8비트 아날로그/디지털(A/D) 변환기, 8비트 디지털/아날로그(D/A) 변환기 및 최대 11개의 I/O 핀을 갖춘 구성을 갖추고 있습니다.

  • 전력 사양의 개요는 다음과 같습니다.
    • 1μA의 RAM 보유
    • 1.7μA 실시간 클럭 모드
    • 180 μA / MIPS
  • 디바이스 파라미터:
    • 속도 옵션: 4 MHz
    • ROM 옵션: 1~2kB
    • SRAM 옵션: 2kB
    • ADC 옵션: 8비트 SAR
    • GPIO 옵션: 11핀
    • 기타 내장 주변기기: 최대 2대의 16비트 타이머, 워치독 타이머, 브라운 아웃 리셋, SVS, 컴퍼레이터, 온도 센서

기타 MSP430 패밀리

MSP430에는 고정 기능, 자동차확장 온도 부품이 더 많이 포함되어 있습니다.

고정 기능:MSP430BQ1010 16비트 마이크로컨트롤러는 휴대용 애플리케이션에서의 무선 전력 전송을 위해 수신기 측에서 제어 및 통신 유닛을 형성하는 고도의 고정 기능 디바이스입니다.MSP430BQ1010은 Wireless Power Consortium(WPC) 사양에 준거하고 있습니다.자세한 내용은 비접촉식 전원[permanent dead link] 참조하십시오.

자동차:TI(Texas Instruments)의 자동차용 MSP430 마이크로컨트롤러(MCU)는 AEC-Q100 인증을 받은 16비트 RISC 기반의 혼합 신호 프로세서이며, 주변 온도가 최대 105°C인 환경에서 자동차 애플리케이션에 적합합니다.IHR GmbH에서 제공하는 MSP430 MCU용 LIN 준거 드라이버.

온도 연장: MSP430 디바이스는 저소비 전력과 혁신적인 아날로그 통합으로 산업용 센싱 등 가혹한 환경에서 매우 인기가 있습니다.일부 가혹한 환경 적용에는 교통/자동차, 재생 에너지, 군사/우주/항공, 광물 탐사, 산업 및 안전 및 보안이 포함됩니다.

  • 디바이스 정의:
    • HT: -55°C~150°C
    • EP: 확장 제품 - 55~125 °C
    • Q1: 자동차용 Q100 인정 -40~105 °C
    • T: -40 °C~105 °C의 확장 온도 적용

플래시 크기가 64K 워드(128KByte)를 넘으면 명령 주소를 2바이트만으로 부호화할 수 없습니다.이러한 포인터 크기 변경으로 인해 이전 부품과 호환되지 않는 부분이 있습니다.

주변기기

MSP430 페리페럴은 일반적으로 사용하기 쉽고 모델 간에 (대부분) 일관된 주소가 있으며 쓰기 전용 레지스터(하드웨어 멀티플라이어 제외)가 없습니다.

범용 I/O포트 0 ~10

주변기기가 필요하지 않은 경우 핀을 일반적인 I/O에 사용할 수 있습니다.핀은 "포트"라고 불리는 8비트 그룹으로 나뉘며, 각 그룹은 다수의 8비트 레지스터에 의해 제어됩니다.경우에 따라서는, 포토가 쌍으로 배치되어 16비트 레지스터로서 액세스 할 수 있습니다.

MSP430 패밀리는 11개의 I/O 포트(P0~P10)를 정의하고 있습니다만, 그 중 10개를 넘는 칩은 없습니다.P0은 3xx 패밀리에만 구현됩니다.P7 ~ P10은 '4xx 및 '2xx 패밀리 중 가장 큰 멤버(및 핀 수가 많은 버전)에만 구현됩니다.최신 5xx 및 6xx 패밀리는 P1 ~ P11을 갖추고 있으며 제어 레지스터는 더 많은 포트 쌍을 제공하도록 재할당되었습니다.각 포트는 다음 레지스터에 의해 제어됩니다.특정 기능(상태 변경 시 인터럽트 등)을 실장하지 않는 포트는 대응하는 레지스터를 실장하지 않습니다.

PxIN
포트 x 입력이것은 읽기 전용 레지스터이며 포트 핀의 현재 상태를 반영합니다.
출력
포트 x 출력이 읽기/쓰기 레지스터에 기록된 값은 출력을 구성하면 해당 핀에서 제외됩니다.
PxDIR
포트 x 데이터 방향1로 쓰여진 비트는 출력에 대응하는 핀을 구성합니다.0으로 쓰여진 비트는 입력용 핀을 구성합니다.
PxSEL
포트 x 함수를 선택합니다.1로 쓴 비트는 전용 주변기기에서 사용할 수 있도록 대응하는 핀을 구성합니다.0으로 쓰여진 비트는 범용 I/O용으로 핀을 구성합니다.포트 0('3xx 부품만')은 다른 주변기기와 다중화되지 않으며 P0SEL 레지스터도 없습니다.
PxREN
포트 x 저항 활성화(2xx 및 '5xx만 해당).이 레지스터에 설정된 비트는 입력으로 구성된 경우에도 해당 I/O 핀에서 약한 풀업 또는 풀다운 저항을 활성화합니다.풀의 방향은 PxOUT 레지스터에 기록된 비트에 의해 설정됩니다.
PxDS
포트 x 드라이브의 강도(5xx만 해당).이 레지스터에 설정된 비트는 고전류 출력을 활성화합니다.이로 인해 출력전력이 증가하지만 Electronagnetic Interference(EMI; 전자파 간섭)가 발생할 수 있습니다.

포트 0 ~2는 입력이 변경되면 인터럽트를 발생시킬 수 있습니다.추가 레지스터는 이 기능을 설정합니다.

PxIES
포트 x 인터럽트 엣지를 선택합니다.PxIFG 비트를 설정할 에지를 선택합니다.입력 비트가 PxIES 상태 일치에서 일치하지 않음(즉, PxIES XOR PxIN의 비트가 클리어에서 설정으로 변경될 때마다)으로 변경되면 대응하는 PxIFG 비트가 설정됩니다.
PxIE
포트 x 인터럽트가 유효합니다.이 비트와 대응하는 PxIFG 비트가 모두 설정되어 있으면 인터럽트가 생성됩니다.
PxIFG
포트 x 인터럽트 플래그해당하는 핀이 PxIES에 의해 요청된 상태를 변경할 때마다 설정됩니다.소프트웨어만으로 클리어 할 수 있습니다.(소프트웨어로도 설정할 수 있습니다.)
PxIV
포트 x 인터럽트 벡터('5xx만')이 16비트 레지스터는 핀 변경 인터럽트 처리에 사용할 수 있는 priority 인코더입니다.n이 PxIFG에서 보류 중이고 PxIE에서 활성화된 가장 낮은 번호의 인터럽트 비트일 경우 이 레지스터는 2n+2로 읽힙니다.이러한 비트가 없는 경우 0으로 표시됩니다.배율 2를 사용하면 분기 테이블에 오프셋으로 직접 사용할 수 있습니다.이 레지스터를 읽으면 보고된 PxIFG 플래그도 지워집니다.

일부 핀은 입력 또는 출력으로 특별한 목적을 가지고 있습니다(예: 타이머 핀은 캡처 입력 또는 PWM 출력으로 구성할 수 있습니다).이 경우 PxDIR 비트는 PxSEL 비트가 설정될 때 핀이 수행하는 두 가지 기능 중 어떤 것을 제어합니다.특수함수가1개밖에 없는 경우 일반적으로 PxDIR은 무시됩니다.PxSEL 비트가 설정되어 있어도 PxIN 레지스터는 읽을 수 있지만 인터럽트 생성이 디세이블입니다.PxSEL이 투명하면 특수 기능의 입력이 정지되고 외부 핀에서 연결이 끊깁니다.또한 핀을 범용 출력용으로 설정해도 인터럽트 생성은 디세이블이 되지 않습니다.

범용 I/O 레지스터 주소 맵
'1xx–' 4xx 패밀리
PxIN 출력 PxDIR PxSEL PxIES PxIE PxIFG PxREN
P0 0x10 0x11 0x12 0x13 0x14 0x15
P1 0x20 0x21 0x22 0x26 0x24 0x25 0x23 0x27
P2 0x28 0x29 0x2a 0x2e 0x2c 0x2d 0x2b 0x2f
P3 0x18 0x19 0x1a 0x1b 0x10
P4 0x1c 0x1d 0x1e 0x1f 0x11
P5 0x30 0x31 0x32 0x33 0x12
P6 0x34 0x35 0x36 0x37 0x13
PA P7 0x38 0x3a 0x3c 0x3e 0x14
P8 0x39 0x3b 0x3d 0x3f 0x15
PB P9 0x08 0x0a 0x0c 0x0e 0x16
P10 0x09 0x0b 0x0d 0x0f 0x17
'5xx–' 6xx 및 '0xx 패밀리'
PxIN 출력 PxDIR PxREN PxDS PxSEL PxIV PxIES PxIE PxIFG
PA P1 0x200 0x202 0x204 0x206 0x208 0x20A 0x20E 0x218 0x21A 0x21C
P2 0x201 0x203 0x205 0x207 0x209 0x20B 0x21E 0x219 0x21B 0x21D
PB P3 0x220 0x222 0x224 0x226 0x228 0x22A
P4 0x221 0x223 0x225 0x227 0x229 0x22B
PC P5 0x240 0x242 0x244 0x246 0x248 0x24A
P6 0x241 0x243 0x245 0x247 0x249 0x24B
PD P7 0x260 0x262 0x264 0x266 0x268 0x26A
P8 0x261 0x263 0x265 0x267 0x269 0x26B
PE P9 0x280 0x282 0x284 0x286 0x288 0x28A
P10 0x281 0x283 0x285 0x287 0x289 0x28B
P11 0x2A0 0x2A2 0x2A4 0x2A6 0x2A8 0x2AA
잠자리 0x320 0x322 0x324 0x326 0x328 4비트만, JTAG 과 공유.

내장 주변기기

아날로그
  • 아날로그-디지털 변환기
MSP430 회선에서는, 2 종류의 아날로그/디지털 변환(ADC)이 있습니다.10비트 및 12비트의 연속 근사 변환기와 16비트의 Sigma-Delta 컨버터가 있습니다.데이터 전송 컨트롤러와 16단어 변환 및 제어 버퍼를 통해 MSP430은 CPU 개입 없이 샘플을 변환 및 저장할 수 있어 소비전력을 최소화할 수 있습니다.
  • 아날로그 풀
아날로그 풀(A-POOL) 모듈은 ADC, DAC, 비교기, SVS 또는 온도 센서로 구성할 수 있습니다.사용자가 한 번의 설정만으로 일련의 아날로그 기능을 유연하게 프로그래밍할 수 있습니다.
  • 비교기 A, A+
MSP430의 비교기 모듈은 정밀 기울기 아날로그-디지털 변환을 제공합니다.외부 아날로그 신호를 모니터링하고 전압 및 저항 값 측정을 제공합니다.전원 모드를 선택할 수 있습니다.
  • DAC12
DAC12 모듈은 최적의 전력 소비를 위해 내부/외부 기준 선택 및 프로그래밍 가능한 안착 시간을 특징으로 하는 12비트 전압 출력 DAC입니다.8비트 모드 또는 12비트모드로 설정할 수 있습니다.여러 개의 DAC12 모듈이 있는 경우 동기 업데이트 작업을 위해 함께 그룹화할 수 있습니다.
  • 동작 전류
단일 전원 공급, 레일 간 출력 및 프로그램 가능한 안착 시간을 갖춘 저전류 작동 기능을 제공합니다.소프트웨어 선택 가능한 구성 옵션: Unity Gain 모드, Comparator 모드, 반전 PGA, 비반전 PGA, 차동 및 인스트루먼테이션 앰프.
  • 시그마 델타(SD)
SD16/SD16_A/SD24_A 모듈에는 각각 내부 1.2V 레퍼런스를 갖춘 16/24비트 시그마-델타 A/D 변환기가 탑재되어 있습니다.각 컨버터에는 내장된 온도 센서를 포함하여 최대 8개의 완전 차동 다중 입력이 있습니다.변환기는 최대 1024(SD16_A/SD24_A) 또는 256(SD16)의 선택 가능한 오버샘플링 비율이 있는 2차 오버샘플링 시그마-델타 변조기입니다.
타이머
  • 기본 타이머(BT)
BT에는 2개의 독립된8비트 타이머가 있어 캐스케이드하여 16비트타이머/카운터를 형성할 수 있습니다.두 타이머 모두 소프트웨어로 읽고 쓸 수 있습니다.BT는 통합 RTC를 제공하기 위해 확장되었습니다.내부 달력은 31일 미만의 달을 보상하고 윤년 보정을 포함합니다.
  • 실시간 클럭
RTC_A/B는 캘린더, 유연한 프로그램 가능한 알람 및 캘리브레이션을 갖춘 클럭카운터를 제공하는 32비트 하드웨어 카운터 모듈입니다.RTC_B에는 전환 가능한 배터리 백업 시스템이 포함되어 있어 1차 전원 공급에 장애가 발생했을 때 RTC가 작동할 수 있습니다.
  • 16비트 타이머
Timer_A, Timer_B 및 Timer_D는 최대 7개의 캡처/비교 레지스터 및 다양한 동작 모드를 가진 비동기 16비트 타이머/카운터입니다.타이머는 다중 캡처/대조, PWM 출력 및 간격 타이밍을 지원합니다.또한 광범위한 인터럽트 기능도 갖추고 있습니다.Timer_B는 프로그램 가능한 타이머 길이(8비트, 10비트, 12비트 또는 16비트) 및 더블 버퍼 비교 레지스터 업데이트 등의 추가 기능을 도입하고 Timer_D는 고해상도(4ns) 모드를 도입합니다.
소프트웨어 문제가 발생한 후 WDT+는 제어된 시스템 재부팅을 수행합니다.선택한 시간 간격이 만료되면 시스템 리셋이 생성됩니다.응용 프로그램에서 워치독 기능이 필요하지 않은 경우 모듈을 간격 타이머로 구성하여 선택한 시간 간격으로 인터럽트를 생성할 수 있습니다.
시스템.
  • Advanced Encryption Standard(Advanced Encryption Standard)
AES 액셀러레이터 모듈은 하드웨어의 고급 암호화 표준에 따라 128비트 키를 사용하여 128비트 데이터의 암호화 및 복호화를 수행하며 사용자 소프트웨어로 구성할 수 있습니다.
  • 브라운 아웃 리셋(BOR)
BOR 회로는 공급 전압이 낮음을 감지하고 전원이 공급되거나 제거될 때 POR(Power-On Reset) 신호를 트리거하여 장치를 재설정합니다.MSP430 MCU의 제로 전력 BOR 회로는 모든 저전력 모드를 포함하여 계속 켜져 있습니다.
  • 다이렉트 메모리 액세스(DMA) 컨트롤러
DMA 컨트롤러는 CPU 개입 없이 주소 범위 전체에 걸쳐 어떤 주소에서 다른 주소로 데이터를 전송합니다.DMA는 주변 모듈의 throughput을 향상시켜 시스템의 소비전력을 줄입니다.모듈은 최대 3개의 독립된 전송 채널을 갖추고 있습니다.
MSP430의 DMA 서브시스템은 매우 기능하지만 몇 가지 결함이 있습니다.그 중 가장 중요한 것은 외부 전송 스트로보가 없다는 것입니다.DMA 전송은 외부에서 트리거될 수 있지만 전송 완료의 외부 징후는 없습니다.따라서 DMA를 통해 자동으로 전체 블록이 아닌 바이트 전송당 외부 트리거로 제한됩니다.이것에 의해, 프로세서에서 프로세서, 또는 프로세서에서 USB로의 통신을 [3]실장할 때에, 매우 복잡해질 가능성이 있습니다(코드의 광범위한 수동 조정이 필요하게 됩니다).인용된 참조에서는 DMA 전송을 위한 고속 스트로브를 생성하기 위해 불분명한 타이머 모드를 사용합니다.타이머는 외부 DMA 전송 스트로보의 부족을 쉽게 보충할 수 있을 만큼 유연하지 않습니다.
바이트 로케이션으로의 워드 전송을 수반하는 DMA 조작에서는, 2 바이트 전송으로의 변환이 아니고, 8 비트로 잘라집니다.이것에 의해, A/D 또는 D/A 의 16 비트치를 가지는 DMA 의 유용성이 저하됩니다(단, 타이머 출력등의 전송 마다 외부로부터 가시적인 트리거를 사용해 MSP 430 의 일부 버전에서는, 포토 A 또는 B 를 개입시켜 이러한 값을 DMA 할 수 있습니다).
  • Enhanced Emulation Module(EEM; 확장 에뮬레이션모듈)
EEM은 2~8개의 하드웨어 중단점, 복잡한 중단점, 지정된 주소에서 읽기/쓰기 발생 시 중단 등 다양한 수준의 디버깅 기능을 제공합니다.모든 플래시 기반 MSP430 디바이스에 내장되어 있습니다.
  • 하드웨어 멀티플라이어
일부 MSP430 모델에는 다양한 16×16+32→33비트 멀티플라이어 연산을 수행하는 메모리 처리 하드웨어 멀티플라이어 페리페럴이 포함되어 있습니다.MSP430의 경우와는 달리 이 페리페럴에는 암묵적인2비트 쓰기 전용 레지스터가 포함되어 있기 때문에 컨텍스트스위치는 사실상 불가능합니다.이 주변기기는 CPU 액티비티를 방해하지 않으며 DMA에 의해 액세스 할 수 있습니다.모든 MSP430F5xx 및 일부 MSP430F4xx 디바이스의 MPY는 최대 32비트x 32비트를 지원합니다.
사용되는 레지스터는 8개입니다.
주소. 이름. 기능.
0x130 MPY 부호 없는 곱셈의 오퍼랜드1
0x132 MPYS 부호 있는 곱셈의 오퍼랜드1
0x134 부호 없는 다중 누적 연산자 1
0x136 매크 부호화된 다중 누적 연산자 1
0x138 OP2 곱셈 연산을 위한 두 번째 피연산자
0x13A 리스로 곱셈 결과의 낮은 단어
0x13C ResHi 곱셈 결과의 높은 단어
0x13E SumExt 다중 누적으로 실행하다
첫 번째 오퍼랜드는 4개의 16비트 레지스터 중 하나에 기록됩니다.기입된 주소에 의해서, 실행되는 조작이 결정됩니다.기입된 값은 어느 레지스터에서도 읽어낼 수 있지만, 기입된 레지스터 번호는 회복할 수 없습니다.
다중 누적 연산이 필요한 경우ResLo그리고.ResHi레지스터도 초기화해야 합니다.
그 후, 에 쓰기가 실행될 때마다OP2레지스터, 곱셈이 수행되고 결과가 저장되거나 결과 레지스터에 추가됩니다.SumExtregister는 부호 없는 멀티플의 경우 더하기(0 또는 1)의 실행 또는 부호 있는 멀티플의 경우 32비트 합계(0 또는 -1)의 부호 확장을 포함하는 읽기 전용 레지스터입니다.부호화된 다중 누적의 경우,SumExt값은 이전 비트의 최상위 비트와 결합해야 합니다.SumHi실제 수행 결과(-1, 0 또는 +1)를 결정하는 내용입니다.
결과는 다음 명령과 다음 인덱스 워드를 가져오는 데 필요한 시간인 3개의 클럭 사이클 지연 후에 사용할 수 있습니다.따라서 지연은 일반적으로 보이지 않습니다.간접 주소 지정 모드를 사용하여 결과를 가져오는 경우에만 명시적 지연이 필요합니다.
  • 메모리 보호 유닛(MPU)
FRAM MPU는 지정된 읽기 전용 메모리 세그먼트에 실수로 쓰거나 고정 메모리에서 코드가 실행되지 않도록 보호합니다.MPU는 비트레벨 어드레싱을 사용하여 메모리의 모든 부분을 설정할 수 있기 때문에 FRAM 디바이스에서의 읽기, 쓰기 및 실행 조작에 메모리 전체에 액세스 할 수 있습니다.
  • 전원 관리 모듈(PMM)
PMM은 코어 로직을 위한 공급 전압을 생성하고 장치에 인가되는 전압과 코어에 대해 생성되는 전압 모두를 감시 및 모니터링하기 위한 몇 가지 메커니즘을 제공합니다.Low-Dropout Voltage Regulator(LDO; 저드롭아웃 전압 레귤레이터), Brown-out Reset(BOR; 브라운아웃 리셋), 전원 전압 슈퍼바이저 및 모니터와 통합되어 있습니다.
  • 전원 전압 슈퍼바이저(SVS)
SVS는 AVC 전원 전압 또는 외부 전압을 감시하기 위해 사용되는 설정 가능한 모듈입니다.SVS는 공급전압 또는 외부전압이 사용자가 선택한 임계값 이하로 떨어졌을 때 플래그를 설정하거나 Power-On Reset(POR; 전원 투입 리셋)을 생성하도록 설정할 수 있습니다.
통신 및 인터페이스
  • 커패시티브 터치 센스 I/O
내장 커패시티브 터치 감지 I/O 모듈은 터치 버튼 및 터치 슬라이더 애플리케이션에 몇 가지 이점을 제공합니다.시스템은 외부 컴포넌트를 필요로 하지 않고 셀프 발진(BOM 절감)을 생성하며 캐패시터(셀프 발진 주파수를 정의하는)를 직접 연결할 수 있습니다.또한 외부 MUX가 여러 패드를 사용할 필요가 없으며 각 I/O 패드가 캡 감지 입력으로 직접 사용될 수 있습니다.약 0.7V의 이력에서는, 견고한 동작이 보증됩니다.제어와 시퀀싱은 모두 소프트웨어로 이루어집니다.
  • 범용 I/O
MSP430 디바이스에는 최대 12개의 디지털 I/O 포트가 구현되어 있습니다.각 포트에는 8개의 I/O핀이 있습니다.모든 I/O 핀은 입력 또는 출력으로 구성할 수 있으며 개별적으로 읽거나 쓸 수 있습니다.포트 P1 및 P2에는 인터럽트 기능이 있습니다.MSP430F2xx, F5xx 및 일부 F4xx 디바이스에는 개별적으로 설정 가능한 풀업 또는 풀다운 저항이 내장되어 있습니다.
  • 서브GHz RF 프론트 엔드
유연한 CC1101 서브 1GHz 트랜시버는 모든 RF 환경에서 통신 링크를 성공시키기 위해 필요한 감도 및 블로킹 성능을 제공합니다.또한 낮은 전류 소비량과 유연한 데이터 전송 속도 및 변조 형식을 지원합니다.
  • USART(UART, SPI, I²C)
Universal Synchrnous Receive/Transmit(USART; 유니버설 동기/비동기 수신/송신) 페리페럴인터페이스는 비동기 RS-232 및 1개의 하드웨어 모듈과의 동기 SPI 통신을 지원합니다.MSP430F15x/16x USART 모듈에서는 I²C, 프로그램 가능한 보레이트 및 수신 및 송신에 대한 독립 인터럽트 기능도 지원됩니다.
  • 유에스비
USB 모듈은 USB 2.0 사양을 완벽하게 준수하며 12Mbps(최대 속도)의 데이터 속도로 제어, 인터럽트 및 대량 전송을 지원합니다.모듈은 USB 일시 중단, 재개 및 원격 웨이크업 작업을 지원하며 최대 8개의 입력 및 8개의 출력 엔드포인트로 구성할 수 있습니다.모듈에는 Integrated Physical Interface(PHY; 통합 물리 인터페이스), USB 클럭 생성용 Phase-Locked Loop(PLL; 위상 잠금 루프) 및 버스 전원 및 자가 전원 장치를 지원하는 유연한 전원 시스템이 포함되어 있습니다.
  • USCI(UART, SPI, I²C, LIN, IrDA)
Universal Serial Communication Interface(USCI; 유니버설시리얼 통신 인터페이스) 모듈에는 동시에 사용할 수 있는 두 개의 독립 채널이 있습니다.비동기 채널(USCI_A)은 UART 모드, SPI 모드, IrDA의 펄스 쉐이핑 및 LIN 통신의 자동 보레이트 검출을 지원합니다.동기 채널(USCI_B)은 I²C 및 SPI 모드를 지원합니다.
  • USI(SPI, I²C)
USI(Universal Serial Interface) 모듈은 데이터 길이가 최대 16비트인 동기식 시리얼 통신 인터페이스로 최소한의 소프트웨어로 SPI 및 I²C 통신을 지원할 수 있습니다.
  • 적외선 변조
MSP430FR4xx 및 MSP430FR2xx 시리즈칩에서 사용할 수 있는 이 기능은 SYSCFG 레지스터 세트를 통해 설정됩니다.이 주변기기는 다른 주변기기(타이머, eUSCI_A)와 결합하여 출력 핀에 [5]IR 변조 신호를 생성합니다(43페이지).
미터링
  • ESP430(FE42xx 디바이스에 내장)
ESP430CE 모듈은 CPU에 의존하지 않고 미터링 계산을 수행합니다.모듈에는 단상 에너지 계측 어플리케이션용 별도의 SD16, HW 멀티플라이어 및 ESP430 내장 프로세서 엔진이 있습니다.
  • 스캔 인터페이스(SIF)
SIF 모듈은 아날로그 프런트 엔드가 있는 프로그래밍 가능한 상태 기계로 전력 소비량이 가장 낮은 선형 또는 회전 운동을 자동으로 측정하는 데 사용됩니다.모듈에는 다양한 유형의 LC 및 저항 센서 및 직교 부호화가 지원됩니다.
표시
  • LCD/LCD_A/LCD_B
LCD/LCD_A 컨트롤러는 최대 196세그먼트까지 LCD를 직접 구동합니다.정적, 2-mux, 3-mux 및 4-mux LCD를 지원합니다. LCD_A 모듈에는 콘트라스트 제어를 위한 내장 충전 펌프가 있습니다.LCD_B 는, 개별의 세그먼트(segment)의 점멸을 가능하게 합니다.
  • LCD_E
LCD_E 컨트롤러는 최신 MSP430FR4xx 시리즈 마이크로 컨트롤러와 함께 제공되며 LCD를 직접 구동하여 최대 448세그먼트까지 지원합니다.스태틱, 2-mux, 3-mux, 4-mux, 5-mux, 6-mux, 7-mux, 8-mux(1/3 바이어스) LCD 지원.세그먼트 핀과 공통 핀을 사용 가능한 LCD 드라이브 핀으로 재프로그래밍할 수 있습니다.이 주변기기는 LPM3.5(RTC 실행+메인 CPU 코어 셧다운 저전력 모드)[5]로 구동할 수 있습니다.

소프트웨어 개발 환경

Texas Instruments는 대형(약 2cm 정사각형) 및 소형(약 1mm 정사각형) MSP430 칩을 지원하는 다양한 하드웨어 실험용 보드를 제공합니다.TI는 파트너와 직접 또는 연계하여 소프트웨어 개발 도구도 제공합니다(컴파일러, 어셈블러 IDE의 전체 목록 참조).이러한 툴 체인 중 하나가 IAR C/C++ 컴파일러 및 통합 개발 환경(IDE)입니다.Kickstart 에디션은 TI 또는 IAR에서 무료로 다운로드할 수 있습니다.이 에디션은 컴파일러 디버거에 포함된 C/C++ 코드의 최대 8KB로 제한됩니다(모든 크기의 어셈블리 언어 프로그램을 이 무료 툴 체인으로 개발 및 디버깅할 수 있습니다).

또한 TI는 자체 컴파일러 및 도구를 Eclipse 기반 Code Composer Studio IDE(CCS)와 결합합니다.풀기능 버전을 판매하며 코드 크기 제한이 16KB인 무료 다운로드 버전을 제공합니다.CCS는 회로 내 에뮬레이터를 지원하며 시뮬레이터 및 기타 도구를 포함합니다.또한 TI에서 판매되는 다른 프로세서에서도 동작할 수 있습니다.

Arduino에 더 익숙하신 분들을 위해 또 다른 소프트웨어 Energia도 있습니다.Energia는 Texas Instruments MSP430 기반의 LaunchPad에 Arduino 코드를 내보내 MSP430 칩을 프로그래밍할 수 있도록 와이어링과 Arduino 프레임워크를 도입하는 것을 목적으로 하는 오픈 소스 전자 프로토타이핑 플랫폼입니다.Energia의 최신 릴리스는 MSP-EXP430G2xx, MSP-EXP430을 지원합니다.FR5739, MSP-EXP430FR5969, MSP-EXP430FR5994, MSP-EXP430F5529LP, Stellaris EK-LM4F120XL, Tiva-C EK-TM4C123GXL, Tiva-C EK-TM4C124XL,[6] CC3200 WiFi 런치패드

오픈 소스 커뮤니티는 GNU 툴셋을 기반으로 자유롭게 사용할 수 있는 소프트웨어 개발 툴셋을 만듭니다.GNU 컴파일러는 현재 3가지 버전으로 거부되어 있습니다.

(MSPGCC)

(MSPGCC 유니아치)

TI는 RedHat과 상의하여 GNU 컴파일러 컬렉션 C/C++ 컴파일러에 MSP430 아키텍처를 공식 지원했습니다.msp430-elf-gcc 컴파일러는 TI의 Code Composer Studio 버전 6.0 이후에 지원됩니다.

초기 llvm-msp430 프로젝트가 있어 최종적으로 LLVM에서의 MSP430 지원이 향상될 수 있습니다.

에디터, 컴파일러, 링커, 어셈블러, 디버거 및 경우에 따라 코드 마법사를 포함하는 다른 상용 개발 도구 세트를 사용할 수 있습니다.모델 기반 개발을 위한 블록 다이어그램 언어인 VisSim은 [7]다이어그램에서 직접 효율적인 고정점 C-Code를 생성합니다.VisSim은 F2013에서 폐쇄 루프 ADC+PWM 기반 PID 제어를 위해 생성된 코드를 1KB 미만의 플래시와 100바이트 [8]RAM으로 컴파일합니다.VisSim은 MSP430 패밀리 I²C, ADC, SD16, PWM 전체에 온칩 주변기기를 탑재하고 있습니다.

저비용 개발 플랫폼

MSP430F2013과 그 동종 제품은 (MSP430G2 Value Line을 제외하고) Dual In-line Package(DIP; 듀얼 인라인 패키지)로 이용할 수 있는 유일한 MSP430 부품이기 때문에 구별됩니다.이 패밀리의 다른 변형은 다양한 표면 실장 패키지로만 제공됩니다.TI는 애호가들이 프로토타입에서 원시 칩을 쉽게 사용할 수 있도록 함으로써 eZ430 개발 플랫폼을 지원하기 위해 많은 노력을 기울였습니다.

eZ430-F2013

TI는 매우 작은 실험기 보드인 eZ430-F2013을 USB 스틱(현재는 구식)에 장착함으로써 저예산 문제에 대처했습니다.이를 통해 설계자들은 컴퓨터와 함께 사용할 수 있는 저렴한 개발 플랫폼을 위해 MSP430 칩을 쉽게 선택할 수 있게 되었다.eZ430-F2013에는 분리 가능한 프로토타이핑 보드에 MSP430F2013 마이크로 컨트롤러와 함께 개발 소프트웨어가 포함된 CD가 포함되어 있습니다.그것은 학교, 취미 생활자, 그리고 차고 발명가들에게 도움이[citation needed] 된다.또한 자본[citation needed] 예산 문제가 있는 시제품 제작 프로젝트의 엔지니어들에게도 환영을 받고 있습니다.

MSP430 LaunchPad

Texas Instruments는 2010년 7월에 MSP430 LaunchPad를 출시했습니다.MSP430 LaunchPad에는 온보드 플래시 에뮬레이터, USB, 프로그램 가능한 LED 2개 및 프로그램 가능한 푸시 버튼이 [9]1개 있습니다.LaunchPad를 사용한 실험 이외에도 실드 보드를 사용할 수 있습니다.

이후 TI는 MSP430 플랫폼을 기반으로 몇 가지 새로운 LaunchPad를 제공하고 있습니다.

이 3개의 Launch Pad에는 모두 1Mbit/s의 속도를 지원하는 백채널 UART를 갖춘 eZ-FET JTAG 디버거가 포함되어 있습니다.FRAM LaunchPad(MSP-EXP430FR5969, MSP-EXP430FR4133)에는 소비전력을 감시 및 분석하기 위해 TI의 Code Composer Studio IDE가 지원하는 EnergyTrace 기능이 포함되어 있습니다.

디버깅 인터페이스

다른 마이크로컨트롤러 벤더와 마찬가지로 TI는 대형 JTAG 인터페이스를 대체할 수 있는 MSP430 부품에 탑재되어 있는2선식 디버깅인터페이스를 개발했습니다.eZ430 Development Tool에는 TI의 Spy-Bi-Wire라는 이름의 이 새로운 2-와이어 프로토콜을 위한 전체 USB 연결 플래시 에뮬레이션 툴(FET)이 포함되어 있습니다.Spy-Bi-Wire는 처음에 MSP430F20xx, MSP430F21x2, MSP430F22x2 등 I/O 핀 수가 제한된 F2xx 패밀리 중 가장 작은 디바이스에만 도입되었습니다.Spy-Bi-Wire 지원은 최신 5xx 패밀리의 도입으로 확대되어 모든 디바이스가 JTAG 외에 Spy-Bi-Wire 인터페이스를 지원합니다.

Spy-Bi-Wire 프로토콜의 장점은 전용 _RESET 회선인 두 개의 통신 회선만 사용한다는 것입니다.핀 카운트가 작은 MSP430 부품의 JTAG 인터페이스는 범용 I/O 회선과 다중화되어 있습니다.이 때문에, 4 핀의 JTAG 하드웨어 전체가 I/O 회선에 접속되어 있는 다른 것과 경합하기 때문에, I/O 버짓이 적은 소형 칩을 중심으로 구축된 회선의 디버깅이 비교적 어려워집니다.이 문제는 Spy-Bi-Wire 대응 칩을 사용하면 완화됩니다.이 칩은 일반 JTAG 인터페이스와 호환성이 있기 때문에 이전 개발 툴과의 하위 호환성이 유지됩니다.

OpenOCD 기반이며 ARM 아키텍처 커뮤니티에서 널리 사용되는JTAG 디버깅툴과 플래시 프로그래밍툴은 MSP430에서는 사용할 수 없습니다.MSP430용으로 특별히 설계된 프로그래밍 도구는 OpenOCD를 사용하는 JTAG 인터페이스보다 약간 저렴합니다.단, 프로젝트 도중에 MIPS, 메모리 및 I/O 주변기기가 더 많이 필요하다는 것을 알게 되면 이러한 툴은 다른 벤더의 프로세서로 전송되지 않습니다.

MSP430 CPU

MSP430 CPU는 명령과 데이터를 위한 단일 주소 공간을 가진 von Neumann 아키텍처를 사용합니다.메모리는 바이트 주소로 지정되며 바이트 쌍은 리틀 엔디안으로 결합되어 16비트 워드를 만듭니다.

프로세서에는 16개의 16비트 [10]레지스터가 포함되어 있으며, 그 중 4개는 특수 용도 전용입니다.R0은 프로그램 카운터, R1은 스택 포인터, R2는 상태 레지스터, R3은 0으로 읽혀져 쓰기를 무시하는 "정수 생성기"입니다.R3 및 R2를 사용한 어드레스 모드 인코딩을 추가하면 피연산자 워드가 즉시 필요하지 않고 일반적으로 사용되는 총 6개의 상수 값(0, 1, 2, 4, 8, 및 -1)을 사용할 수 있습니다.R4 ~ R15는 일반적인 용도로 사용할 수 있습니다.

명령어 세트는 매우 간단합니다.세 패밀리에 27개의 명령어가 있습니다.대부분의 명령은 B/W 비트의 값에 따라 .B(8비트 바이트) 및 .W(16비트 워드) 접미사가 붙은 버전으로 발생합니다.비트는 8비트의 경우 1로, 16비트의 경우 0으로 설정됩니다.누락된 접미사는 .W와 같습니다. 메모리에 대한 바이트 연산은 주소 지정된 바이트에만 영향을 미치며, 바이트 연산은 가장 중요한 바이트를 지웁니다.

MSP430 명령어세트
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 설명
0 0 0 1 0 0 동작 코드 대역폭 ~하듯이 등록하세요 단일 연산자 산술
0 0 0 1 0 0 0 0 0 대역폭 ~하듯이 등록하세요 RRC 오른쪽으로 회전(1비트) 캐리 통과
0 0 0 1 0 0 0 0 1 0 ~하듯이 등록하세요 SWPB 스왑 바이트
0 0 0 1 0 0 0 1 0 대역폭 ~하듯이 등록하세요 RRA 오른쪽으로 회전(1비트) 연산
0 0 0 1 0 0 0 1 1 0 ~하듯이 등록하세요 SXT 서명 바이트에서 워드까지 확장
0 0 0 1 0 0 1 0 0 대역폭 ~하듯이 등록하세요 을 스택에 푸시
0 0 0 1 0 0 1 0 1 0 ~하듯이 등록하세요 서브루틴 콜, PC 푸시 및 소스 PC로의 이동
0 0 0 1 0 0 1 1 0 0 0 0 0 0 0 0 RETI 인터럽트에서 복귀하여 SR을 팝하고 PC를 팝합니다.
0 0 1 조건. 10비트 부호 오프셋 조건부 점프, PC = PC + 2×108 + 2
0 0 1 0 0 0 10비트 부호 오프셋 JNE/JNZ 점프(같지 않거나 0일 경우)
0 0 1 0 0 1 10비트 부호 오프셋 JEQ/JZ 점프(같거나 0인 경우)
0 0 1 0 1 0 10비트 부호 오프셋 JNC/JLO 점프(릴리/하강 시)
0 0 1 0 1 1 10비트 부호 오프셋 JC/JHS 점프(캐리/높이 또는 같은 경우)
0 0 1 1 0 0 10비트 부호 오프셋 의 경우 JN 점프
0 0 1 1 0 1 10비트 부호 오프셋 JGE 점프(더 크거나 같은 경우)
0 0 1 1 1 0 10비트 부호 오프셋 JL 점프(작을 경우)
0 0 1 1 1 1 10비트 부호 오프셋 JMP 점프(무조건)
동작 코드 원천 광고 대역폭 ~하듯이 목적지 이연산자
0 1 0 0 원천 광고 대역폭 ~하듯이 목적지 MOV 소스를 대상으로 이동
0 1 0 1 원천 광고 대역폭 ~하듯이 목적지 ADD 대상에 소스 추가
0 1 1 0 원천 광고 대역폭 ~하듯이 목적지 ADDC 소스 추가 및 수신처로 이동
0 1 1 1 원천 광고 대역폭 ~하듯이 목적지 SUBC 수신처에서 소스 빼기(캐리 포함)
1 0 0 0 원천 광고 대역폭 ~하듯이 목적지 SUB 대상에서 소스 빼기
1 0 0 1 원천 광고 대역폭 ~하듯이 목적지 수신처로부터의 CMP Compare(감산하는 척) 송신원
1 0 1 0 원천 광고 대역폭 ~하듯이 목적지 DADD 대상에 소스 10진수 추가(carry 포함)
1 0 1 1 원천 광고 대역폭 ~하듯이 목적지 소스 AND 수신처의 비트테스트 비트
1 1 0 0 원천 광고 대역폭 ~하듯이 목적지 BIC 비트 클리어(dest &= ~src)
1 1 0 1 원천 광고 대역폭 ~하듯이 목적지 BIS 비트 세트(논리 OR)
1 1 1 0 원천 광고 대역폭 ~하듯이 목적지 XOR 배타적 또는 대상이 있는 소스
1 1 1 1 원천 광고 대역폭 ~하듯이 목적지 AND 논리적 소스(대상 및 = src)

순서는 16비트이며, 그 뒤에 최대 2개의 16비트 확장자가 붙습니다.주소 지정 모드는 2비트 A 필드와 1비트 Ad 필드로 지정합니다.일부 특수 버전은 R0을 사용하여 구성할 수 있으며, R2(상태 레지스터) 및 R3(상수 제너레이터)를 사용하여 레지스터 다이렉트 이외의 모드를 특별히 해석한다.Ad는 A에 대해 주소 지정 모드의 서브셋만 사용할 수 있습니다.

인덱스 어드레싱 모드는 명령어에 16비트 확장 워드를 추가합니다.발신기지와 행선지가 모두 인덱스 되어 있는 경우는, 발신기지 확장 워드가 선두가 됩니다.x는 다음 표의 명령 스트림에 있는 다음 확장자를 나타냅니다.

MSP430 어드레싱 모드
~하듯이 광고 등록하세요 구문 묘사
00 0 n Rn 직접등록하세요.피연산자는 Rn의 내용입니다.
01 1 n x(Rn) 색인화됨.오퍼랜드는 주소 Rn+x의 메모리에 있습니다.
10 n @Rn 간접 등록.오퍼랜드는 Rn에 보관된 주소의 메모리에 있습니다.
11 n @Rn+ 간접 자동 증가.위와 같이 레지스터는 1 또는 2씩 증가합니다.
R0(PC)를 사용한 어드레싱 모드
01 1 0(PC) 주소 상징적이죠.x(PC)에 상당합니다.오퍼랜드는 주소 PC+x의 메모리에 있습니다.
11 0(PC) #x 즉각적인.@PC+에 상당합니다.오퍼랜드는 명령 스트림의 다음 단어입니다.
R2(SR) 및 R3(CG)를 사용한 어드레싱 모드, 특수 케이스 디코딩
01 1 2 (SR) 주소 물론입니다.오퍼랜드는 주소 x의 메모리에 있습니다.
10 2 (SR) #4 일정한.피연산자는 상수 4입니다.
11 2 (SR) #8 일정한.피연산자는 상수 8입니다.
00 3(CG) #0 일정한.피연산자는 상수 0입니다.
01 3(CG) #1 일정한.피연산자는 상수 1입니다.색인 단어가 없습니다.
10 3(CG) #2 일정한.피연산자는 상수 2입니다.
11 3(CG) #−1 일정한.피연산자는 상수 -1입니다.

명령어는 일반적으로 가져오거나 저장되는 단어당 1사이클이 소요되므로 명령 시간은 단순한 레지스터 레지스터 명령의 경우 1사이클에서 소스 및 대상 인덱스의 경우 6사이클까지입니다.

20비트 어드레싱을 사용하는 MSP430X 확장에는 최대 10개의 클럭사이클이 필요할 수 있는 명령어가 추가됩니다.주변기기의 비트를 설정 또는 클리어하려면 2개의 클럭이 필요합니다.점프를 하든 안 하든 두 개의 시계가 걸린다.2xx 시리즈2 MCLK는 16MHz에서 125ns입니다.

프로그램 카운터로 이동할 수 있으며 점프를 수행합니다.예를 들어 서브루틴으로부터의 리턴은 MOV @SP+, PC로 구현됩니다.

자동 증분 어드레싱 모드에서 R0(PC) 또는 R1(SP)을 사용하면 항상 2씩 증가합니다.다른 레지스터(R4~R15)는 오퍼랜드크기(1바이트 또는2바이트)만큼 증가합니다.

상태 레지스터에는 4개의 산술 상태 비트, 글로벌 인터럽트 활성화 및 저전력 모드로 전환하기 위한 다양한 클럭을 비활성화하는 4개의 비트가 포함됩니다.인터럽트를 처리할 때 프로세서는 상태 레지스터를 스택에 저장하고 저전력 비트를 지웁니다.인터럽트 핸들러가 저장된 상태 레지스터를 변경하지 않으면 인터럽트에서 복귀하면 원래의 저전력 모드가 재개됩니다.

의사 연산

추가된 많은 명령어가 위의 형식의 에일리어스로 구현됩니다.예를 들어 "서브루틴에서 반환" 명령은 없지만 "MOV @SP+, PC"로 구현됩니다.에뮬레이트된 지침은 다음과 같습니다.

MSP430 에뮬레이트된 순서
에뮬레이트 실제. 묘사
ADC.x dst ADDC.x #0, dst 대상에 캐리 추가
BR dst MOV dst, PC 수신처에 대한 지점
CLR.x dst MOV.x #0,dst 수신처 클리어
CLRC BIC #1, SR 클리어 캐리 비트
닫다 BIC #4, SR 네거티브 비트 클리어
CLRZ BIC #2, SR 클리어 제로 비트
DADC.x dst DADD.x #0, dst 수신처에 대한 10진수 추가 반송
DEC.x dst SUB.x #1, dst 감소
DECD.x dst SUB.x #2, dst 이중 감소
DINT BIC #8, SR 인터럽트 사용 안 함
EINT BIS #8, SR 인터럽트를 유효하게 하다
INC.x dst ADD.x #1, dst 증가
INCD.x dst ADD.x #2, dst 2배 증가
INV.x dst XOR.x #-1, dst 반전
NOP MOV #0, R3 조작 없음
dst MOV @SP+,dst 스택에서 팝
리트 MOV @SP+, PC 서브루틴에서 돌아오다
RLA.x dst ADD.x dst, dst 왼쪽 연산 회전(왼쪽 1비트 변속)
RLC.x dst ADDC.x dst, dst 캐리를 통해 왼쪽으로 회전
SBC.x dst SUBC.x #0, dst 목적지에서 차입금(1캐리)을 빼다
SETC BIS #1, SR 반송 비트 설정
설정 BIS #4, SR 마이너스 비트 설정
설정 BIS #2, SR 제로 비트 설정
TST.x dst CMP.x #0, dst 테스트 대상

즉시 상수 -1(0xffff), 0, 1, 2, 4, 8은 별도의 즉시 피연산자 없이 단일 단어 명령으로 지정할 수 있습니다.

MSP430X 20비트 확장

기본 MSP430은 64K 주소 공간보다 많은 메모리(ROM + RAM + 주변기기)를 지원할 수 없습니다.이를 지원하기 위해 MSP430의 확장 형식은 20비트 레지스터와 20비트 주소 공간을 사용하여 최대 1MB의 메모리를 허용합니다.이 명령어 세트는 기본 형식과 동일하지만 다음 두 가지 확장자가 있습니다.

  1. 일반적인 조작에 대해서는 20비트 명령의 수가 한정되어 있습니다.
  2. 명령어를 20비트로 확장할 수 있는 일반적인 프리픽스워드 메커니즘.

확장 명령에는 멀티비트 시프트 및 멀티 레지스터 로드/스토어 조작 등 추가된 기능이 포함됩니다.

20비트 동작에서는 .B 또는 .W 대신 길이 서픽스 「A」(주소)를 사용합니다.기본값은 .W 입니다.일반적으로, 동작이 짧을수록, 행선지 레지스터의 상위 비트가 소거됩니다.

새로운 순서는 다음과 같습니다.

MSP430X 확장 명령
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 둘째 단어이다. 설명
0 0 0 0 원천 0 0 동작 코드 목적지 확장 메모리 레지스터 이동
0 0 0 0 src 0 0 0 0 dst MOVA @Rsrc, Rdst
0 0 0 0 src 0 0 0 1 dst MOVA @Rsrc+, Rdst
0 0 0 0 주소 [19:16] 0 0 1 0 dst 주소 [15:0] MOVA &abs20, Rdst
0 0 0 0 src 0 0 1 1 dst x[15:0] MOVA x(RSrc), Rdst
0 0 0 0 n−1 op. 0 1 0 미사용 목적지 비트 시프트(1~4비트 위치)
0 0 0 0 n−1 0 0 0 1 0 미사용 dst RRCM.x #n,Rst(오른쪽 회전 캐리)
0 0 0 0 n−1 0 1 0 1 0 미사용 dst RRAM.x #n,Rdst(오른쪽 산술 회전, 오른쪽 교대 부호 있음)
0 0 0 0 n−1 1 0 0 1 0 미사용 dst RLAM.x #n,Rdst(왼쪽 산술 회전, A.K.A. 시프트 좌회전)
0 0 0 0 n−1 1 1 0 1 0 미사용 dst RRUM.x #n,Rdst(부호 없이 오른쪽 회전, a.k.a. shift 오른쪽 논리)
0 0 0 0 원천 0 1 1 op. 목적지 확장 레지스터 메모리 이동
0 0 0 0 src 0 1 1 0 주소 [19:16] 주소 [15:0] MOVA Rsrc, &abs20
0 0 0 0 src 0 1 1 1 dst x[15:0] MOVA Rsrc,x(최종)
0 0 0 0 원천 1 동작 코드 목적지 확장 ALU 조작
0 0 0 0 imm[19:16] 1 0 0 0 dst imm[15:0] MOVA #im20, Rdst
0 0 0 0 imm[19:16] 1 0 0 1 dst imm[15:0] CMPA #imm20, Rdst
0 0 0 0 imm[19:16] 1 0 1 0 dst imm[15:0] ADA #imm20, Rdst
0 0 0 0 imm[19:16] 1 0 1 1 dst imm[15:0] SUBA #im20, Rdst
0 0 0 0 src 1 1 0 0 dst MOVA RSrc, Rdst
0 0 0 0 src 1 1 0 1 dst CMPA Rsrc, Rdst
0 0 0 0 src 1 1 1 0 dst ADDA RSrc, Rdst
0 0 0 0 src 1 1 1 1 dst SUBA RSrc, Rdst
0 0 0 1 0 0 1 1 op. 모드 다르다 칼라
0 0 0 1 0 0 1 1 0 0 0 0 0 0 0 0 재시도 (MSP430과 동일)
0 0 0 1 0 0 1 1 0 1 ~하듯이 등록하세요 칼라 원천
0 0 0 1 0 0 1 1 1 0 0 0 복근[19:16] 복근[15:0] CALLA & abs20
0 0 0 1 0 0 1 1 1 0 0 1 x[19:16] x[15:0] CALLA x(PC)
0 0 0 1 0 0 1 1 1 0 1 0 (표준)
0 0 0 1 0 0 1 1 1 0 1 1 imm[19:16] imm[15:0] CALLA #imm20
0 0 0 1 0 0 1 1 1 1 (표준)
0 0 0 1 0 1 디르 미사용 n−1 등록하세요 지정된 값으로 끝나는 푸시/팝 n 레지스터
0 0 0 1 0 1 0 미사용 n−1 src PUSHM.x #n, Rsrc 푸시 RSrc, R(src-1), ... R(src-n+1)
0 0 0 1 0 1 1 미사용 n−1 dst−n+1 POPM.x #n, Rdst Pop R(dst-n+1), R(dst-n+2), ...Rdst

다른 명령어는 모두 프리픽스 워드를 추가하여 20비트로 확장할 수 있습니다.프리픽스 워드에는 오퍼랜드사이즈 비트가 추가되어 있습니다.이 비트는 기존의 B/W 비트와 조합되어 오퍼랜드사이즈를 지정합니다.사용되지 않는 크기의 조합이 1개 존재합니다.향후 32비트 오퍼랜드사이즈로 [11]사용될 가능성이 있습니다.

프리픽스 워드는 두 가지 형식이 있으며, 이들 중 선택할 수 있는 형식은 다음 순서에 따라 달라집니다.명령에 레지스터가 아닌 오퍼랜드가 있는 경우 명령 스트림 내의 오프셋 또는 즉시 상수를 20비트로 확장하기 위해 2개의 4비트필드를 제공하는 단순한 형식이 사용됩니다.

명령어가 등록-등록일 경우 다른 확장어가 사용됩니다.여기에는 반입(항상 반송 비트를 사용하는 DADD와 같은 명령에 유용함)을 억제하는 "ZC" 플래그와 반복 횟수가 포함됩니다.확장 워드의 4비트 필드는 반복 카운트(초기 실행 외에 0~15회 반복) 또는 4비트 반복 카운트를 포함한 레지스터 번호 중 하나를 부호화한다.

MSP430X 프리픽스워드
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 설명
0 0 0 1 1 A/L 0 0 확장자
0 0 0 1 1 src[19:16] A/L 0 0 dst[19:16] 메모리 오퍼랜드 확장
0 0 0 1 1 0 0 ZC 0 A/L 0 0 n−1 피연산자 확장 레지스터(즉시 반복 횟수)
0 0 0 1 1 0 0 ZC 1 A/L 0 0 Rn 피연산자 확장 등록(반복 횟수 등록)

MSP430 주소 공간

MSP430 주소 공간의 일반적인 레이아웃은 다음과 같습니다.

0x0000–0x0007
프로세서 특수 기능 레지스터(인터럽트 제어 레지스터)
0x0008~0x00FF
8비트 주변기기8비트 로드 및 저장소를 사용하여 액세스해야 합니다.
0x0100 – 0x01FF
16비트 주변기기16비트 로드 및 저장소를 사용하여 액세스해야 합니다.
0x0200 – 0x09FF
최대 2048바이트의 RAM
0x0C00–0x0fortississimo.
1024 바이트의 부트스트랩로더 ROM(플래시 부품만 해당)
0x1000~0x10FF
256 바이트의 데이터 플래시 ROM(플래시 부품만)
0x180-0x19FF
512 바이트의 데이터 FRAM(대부분의 FRAM MCU, 교정 데이터 없음 사용자 쓰기 가능)
0x1100–0x38FF
2048바이트가 넘는 RAM을 탑재한 모델에서의 확장 RAM(0x1100–0x18)FF는 0x0200-0x09의 복사입니다.FF)
0x1100~0x오프
최대 60킬로바이트의 프로그램 ROM. 작은 ROM은 높은 주소부터 시작합니다.마지막 16바이트 또는 32바이트는 인터럽트 벡터입니다.

일부 모델에는 2048바이트 이상의 RAM이 포함되어 있습니다.이 경우 RAM은 0x1100부터 시작됩니다.첫 번째 2048바이트(0x1100–0x18)FF)는 0x0200–0x09로 미러링 됩니다.호환성을 위한 FF.또한 일부 최신 모델에서는 8비트 및 16비트 페리페럴 규칙을 수정하여 8비트 페리페럴 주소 범위의 페리페럴에 16비트 액세스를 허용합니다.

새로운 확장 버전의 아키텍처(MSP430X)가 있어 20비트주소 공간을 사용할 수 있습니다.0x10000부터 프로그램 ROM을 추가할 수 있습니다.

5xx 시리즈는 매우 새롭게 설계된 주소 공간을 갖추고 있으며, 최초의 4K는 주변기기 전용이며, 최대 16K의 RAM을 갖추고 있습니다.

레퍼런스

  1. ^ Evanczuk, Stephen (20 August 2013). "Slideshow: The most-popular MCUs ever". edn.com. Electronics Design Network. Retrieved 3 September 2020.
  2. ^ MSP430은 포도로 실행YouTube 비디오
  3. ^ a b D. 피터스, D.Raskovic, 그리고 D.Thorsen, "소형 위성 애플리케이션을 위한 에너지 효율이 뛰어난 병렬 임베디드 시스템", 컴퓨터와 인텔리전트 시스템의 ISAT 트랜잭션, vol.1(2), 2009
  4. ^ 텍사스 인스트루먼트의 저전력 MSP430 마이크로컨트롤러
  5. ^ a b http://www.ti.com/lit/slau445[베어 URL PDF]
  6. ^ http://www.energia.nu , Energia 웹사이트
  7. ^ IEEE 매거진에 게재된 MSP430 기사[permanent dead link].
  8. ^ 비주얼 솔루션
  9. ^ MSP430 LaunchPad (MSP-EXP430G2), 텍사스 인스트루먼트 임베디드 프로세서 Wiki
  10. ^ "MSP430 Ultra-Low-Power Microcontroller" (PDF). Texas Instruments. Retrieved 9 July 2008.[영구 데드링크]
  11. ^ 크기 비트의 이름이 지정됩니다.A/L,어디에L(long)은 다른 프로세서에서 32비트 오퍼랜드를 나타내기 위해 사용됩니다.또, SXTX 명령의 설명(MSP430F5xx 패밀리 유저즈 가이드 alau208f 페이지 237)에서는, 레지스터 비트 20~31 의 명령의 효과에 대해서도 설명합니다.

외부 링크

커뮤니티 사이트 및 정보 사이트

비주얼 프로그래밍 C 코드 생성기

컴파일러, 어셈블러 및 IDE

무료 컴파일러 및 IDE

가장 인기 있는 무제한 IDE 및 컴파일러

기타 IDE

디버깅 도구 목록(완전하지 않음)

이름. 제조원 인터페이스 프로토콜 상황
MSP-FET430피프 TI 병렬 포트 JTAG
MSP-FET430UIF TI USB 인터페이스 JTAG, Spy-Bi-Wire
MSP-FET TI USB 인터페이스 JTAG, Spy-Bi-Wire
MSP-430 LaunchPad TI USB 인터페이스 스파이 바이 와이어
MSP-430 LaunchPad eZ-FET TI USB 인터페이스 스파이 바이 와이어
eZ430-F2013 TI USB 인터페이스 스파이 바이 와이어 쓸모없는
eZ430-RF2500 TI USB 인터페이스 스파이 바이 와이어
FETP 소프트바우 병렬 포트 JTAG
USBP 소프트바우 USB 인터페이스 JTAG, Spy-Bi-Wire 중단되었다
MSP430-JTAG 올리멕스 병렬 포트 JTAG
MSP430-JTAG-ISO 올리멕스 USB 인터페이스 JTAG, Spy-Bi-Wire 쓸모없는
MSP430-JTAG-ISO-MK2 올리멕스 USB 인터페이스 JTAG, Spy-Bi-Wire
MSP430-JTAG-Tiny 올리멕스 USB 인터페이스 JTAG, Spy-Bi-Wire 찾을 수 없다
MSP430-JTAG-TINY-V2 올리멕스 USB 인터페이스 JTAG?, Spy-Bi-Wire
MSP430-JTAG-RF 올리멕스 USB 인터페이스 JTAG, Spy-Bi-Wire
Flash Pro-CC 엘프로트로닉 USB 인터페이스 JTAG, Spy-Bi-Wire, BSL
VisSim/ECD 비주얼 솔루션 USB 인터페이스 JTAG, Spy-Bi-Wire
LA-3713 라우터바흐 USB 인터페이스/이더넷 JTAG, Spy-bi-Wire

기타 도구