Skip to main content

TI MSP430 - Wikipedia


TI MSP430
Nhà thiết kế Dụng cụ Texas
Bits 16-bit
Loại Bộ nhớ-Bộ nhớ
Bộ đăng ký
16, R0 - Bộ đếm chương trình, R1 Con trỏ ngăn xếp, R2 - Thanh ghi trạng thái, R2 / R3 - Máy phát liên tục
MSP 430 FG438 lái máy đo đường huyết
Ảnh của hai bảng thí nghiệm cho chipset MSP430 của Texas Cụ. Ở bên trái phiên bản chip lớn hơn, bên phải là phiên bản nhỏ ở định dạng USB.

MSP430 là một họ vi điều khiển tín hiệu hỗn hợp từ Texas Cụ. Được xây dựng xung quanh CPU 16-bit MSP430 được thiết kế cho các ứng dụng nhúng có chi phí thấp và đặc biệt là tiêu thụ điện năng thấp [1] .

Ứng dụng [ chỉnh sửa ]

Máy đo đường glucose GlucoCheck Comfort được kích hoạt- Bảng mạch in bên dưới màn hình LCD lưu trữ CPU MSP 430

MSP430 có thể được sử dụng cho các thiết bị nhúng công suất thấp. Dòng điện được vẽ ở chế độ không tải có thể ít hơn 1 PhaA. Tốc độ CPU cao nhất là 25 MHz. Nó có thể được điều chỉnh trở lại để tiêu thụ điện năng thấp hơn. MSP430 cũng sử dụng sáu chế độ năng lượng thấp khác nhau, có thể vô hiệu hóa đồng hồ và CPU không cần thiết. Ngoài ra, MSP430 có khả năng thức dậy dưới 1 micro giây, cho phép vi điều khiển ở chế độ ngủ lâu hơn, giảm thiểu mức tiêu thụ hiện tại trung bình. Thiết bị có nhiều cấu hình khác nhau bao gồm các thiết bị ngoại vi thông thường: bộ tạo dao động bên trong, bộ hẹn giờ bao gồm PWM, bộ giám sát, USART, SPI, I²C, ADC 10/12/14/16 / 24-bit và mạch thiết lập lại màn hình. Một số tùy chọn ngoại vi ít phổ biến hơn bao gồm bộ so sánh (có thể được sử dụng với bộ định thời để thực hiện ADC đơn giản), op-amps trên chip để điều hòa tín hiệu, DAC 12 bit, trình điều khiển LCD, hệ số nhân phần cứng, USB và DMA cho kết quả ADC. Ngoài một số phiên bản EPROM cũ (MSP430E3xx) và ROM mặt nạ âm lượng lớn (MSP430Cxxx), tất cả các thiết bị đều được lập trình trong hệ thống thông qua JTAG (bốn dây hoặc Spy-Bi-Wire đầy đủ) hoặc bộ tải bootstrap tích hợp (BSL) sử dụng UART như RS232 hoặc USB trên các thiết bị có hỗ trợ USB.

Tuy nhiên, có những hạn chế ngăn cản việc sử dụng nó trong các hệ thống nhúng phức tạp hơn. MSP430 không có bus bộ nhớ ngoài, do đó, nó bị giới hạn ở bộ nhớ trên chip (bộ nhớ flash tối đa 512 KB và RAM 66 KB) có thể quá nhỏ đối với các ứng dụng yêu cầu bộ đệm hoặc bảng dữ liệu lớn. Ngoài ra, mặc dù có bộ điều khiển DMA, nhưng rất khó sử dụng nó để di chuyển dữ liệu ra khỏi chip do thiếu một đầu ra DMA. [2]

Đánh số phần MSP430 [ chỉnh sửa ]

Một phần số MSP430 chẳng hạn như " MSP430F2618ATZQWT-EP " bao gồm các phần sau:

  • MSP430 : Tiền tố tiêu chuẩn.
  • F : Biểu thị loại bộ nhớ hoặc ứng dụng chuyên dụng. " F " cho biết bộ nhớ flash là loại phổ biến nhất. Các tùy chọn khác cho loại bộ nhớ bao gồm " C " cho ROM bị che, " FR " cho FRAM, " G " cho Dòng giá trị Flash và " L "như trong dòng MSP430L09x, chỉ ra phần chỉ có RAM; nó phải tiếp tục được cung cấp năng lượng để duy trì chương trình của nó. Một chữ cái thứ hai (ngoại trừ "FR") chỉ ra một ứng dụng chuyên biệt cho phần này. Ví dụ: " G " là một chữ cái chuyên môn tùy chọn cho biết hỗ trợ phần cứng cho việc sử dụng chuyên biệt. " E " biểu thị các chức năng của đồng hồ điện đặc biệt, " G " các thiết bị được thiết kế cho thiết bị y tế và các thiết bị " W " bao gồm một "giao diện quét" đặc biệt được thiết kế cho lưu lượng kế. Một ngoại lệ là các thiết bị MSP430FG2xx, được coi là một thế hệ riêng biệt.
  • 2 : Thế hệ của thiết bị. Có thể có những thay đổi đáng kể đối với các thiết bị ngoại vi lõi (bộ tạo xung nhịp, UART, v.v.) trong các thế hệ khác nhau. Đây không phải là theo thứ tự thời gian, mà là các giá trị cao hơn đại khái cho thấy kích thước, độ phức tạp và chi phí lớn hơn. Ví dụ: các thế hệ 3 4 bao gồm các bộ điều khiển LCD mà những cái khác không có.
  • 6 : Kiểu máy trong thế hệ. Điều này biểu thị hỗn hợp của các thiết bị ngoại vi trên bo mạch và số lượng chân.
  • 18 : Một hoặc hai chữ số cho biết dung lượng bộ nhớ trên thiết bị. Việc đánh số là (hầu hết) nhất quán trong toàn bộ loạt MSP430. Không phải tất cả các hậu tố là hợp lệ với tất cả các mô hình; hầu hết các kiểu máy đều có sẵn trong 3 kích cỡ bộ nhớ, được chọn để phù hợp với các khả năng khác của thiết bị. Số lượng lớn hơn cho thấy số lượng bộ nhớ tăng lên, nhưng đôi khi một loại bộ nhớ (RAM hoặc ROM) được hy sinh để phù hợp với nhiều loại khác.
Cấu hình bộ nhớ MSP430
Suffix RAM ROM Suffix RAM ROM
0 128 1 K 10 5 K 32 K
1 128 2 K 11 10 K 48 K
2 256 4 K 12 5 K 55/56 K
3 256 8 K 13
4 512 12 K 14
5 512 16 K 15
6 1 K 24 K 16 4 K 92 K
7 1 K 32 K 17 8 K 92 K
8 2 K 48K 18 8 K 116 K
9 2 K 60K 19 4 K 120 K
  • Một chữ số hậu tố tùy chọn chỉ ra một thiết bị biến thể, thêm hoặc xóa một số thiết bị ngoại vi tương tự. Ví dụ, hậu tố " 1 " có thể chỉ ra việc bổ sung bộ so sánh hoặc xóa ADC. Nếu kích thước bộ nhớ là " 1 ", hậu tố này có thể bị nhầm lẫn với một phần kích thước bộ nhớ, nhưng không có mô hình đơn lẻ nào có sẵn ở cả kích thước bộ nhớ "1" và "10" (hoặc lớn hơn). [19659089] Hậu tố " A " tùy chọn chỉ ra phiên bản sửa đổi tương thích hướng lên. MSP430F11x1A có thêm 256 byte flash dữ liệu không có trong đồng bằng 'F11x1.

Các chữ cái hậu tố cho biết các tùy chọn không hiển thị với phần mềm:

  • T : Biểu thị phạm vi nhiệt độ từ −40 ° C đến +105 ° C.
  • ZQW : Cho biết gói phần được giữ trong đó. " ZQW " là một tên cụ thể TI cho một mảng lưới bóng.
  • T : Cho biết các bộ phận được vận chuyển trong bao bì cuộn nhỏ (7 inch).
  • -EP : Biểu thị một tính năng bổ sung. " -Q1 " chỉ định rằng bộ phận đó là ô tô đủ điều kiện. " -EP " và " -HT " biểu thị các sản phẩm nhiệt độ mở rộng. Các sản phẩm được cải tiến, " -EP ", có dải nhiệt độ từ -40 ° C đến 125 ° C và các bộ phận nhiệt độ cực cao, " -HT ", có phạm vi nhiệt độ từ - 56 ° C đến 150 ° C.

MSP430 thế hệ [ chỉnh sửa ]

Có sáu thế hệ chung của bộ xử lý MSP430. Theo thứ tự phát triển, chúng là thế hệ '3xx, thế hệ' 1xx, thế hệ '4xx, thế hệ' 2xx, thế hệ '5xx và thế hệ' 6xx. Chữ số sau khi tạo xác định mô hình (nói chung số mô hình cao hơn sẽ lớn hơn và có khả năng hơn), chữ số thứ ba xác định dung lượng bộ nhớ trên tàu và thứ tư, nếu có, xác định một biến thể mô hình nhỏ. Biến thể phổ biến nhất là một bộ chuyển đổi tương tự sang số khác trên chip.

Các thế hệ 3xx và 1xx bị giới hạn trong không gian địa chỉ 16 bit. Ở các thế hệ sau, điều này đã được mở rộng để bao gồm các hướng dẫn '430X' cho phép không gian địa chỉ 20 bit. Như đã xảy ra với các kiến ​​trúc bộ xử lý khác (ví dụ: bộ xử lý của PDP-11), việc mở rộng phạm vi địa chỉ vượt quá kích thước từ 16 bit đã giới thiệu một số đặc thù và không hiệu quả cho các chương trình lớn hơn 64 kBytes.

Trong danh sách sau đây, sẽ giúp nghĩ đến công suất 200 mA · Hr điển hình của một tế bào đồng xu CR2032 là 200.000 A · Hr, hoặc 22,8 A · năm. Do đó, chỉ xem xét việc rút CPU, một pin như vậy có thể cung cấp mức rút 0,7 A trong 32 năm. (Trong thực tế, việc tự xả pin sẽ làm giảm con số này.)

Tầm quan trọng của 'Duy trì RAM' so với mode chế độ đồng hồ thời gian thực 'là ở chế độ đồng hồ thời gian thực, CPU có thể chuyển sang chế độ ngủ với đồng hồ chạy vào thời điểm cụ thể trong tương lai. Trong chế độ duy trì RAM, một số tín hiệu bên ngoài được yêu cầu để đánh thức nó, ví dụ: Tín hiệu chân I / O hoặc nô lệ SPI nhận ngắt.

Sê-ri MSP430x1xx [ chỉnh sửa ]

Sê-ri MSP430x1xx là thế hệ cơ bản không có bộ điều khiển LCD nhúng. Chúng thường nhỏ hơn thế hệ '3xx. Các MCU công suất cực thấp dựa trên flash hoặc ROM này cung cấp 8 MIPS, hoạt động 1.8 Tắt3.6 V, flash lên đến 60 KB và một loạt các thiết bị ngoại vi kỹ thuật số và tương tự.

  • Tổng quan về thông số kỹ thuật điện, thấp như:
    • Giữ lại 0,1 A RAM
    • 0,7 Một chế độ đồng hồ thời gian thực
    • 200 A / MIPS hoạt động
    • Tính năng thức dậy nhanh từ chế độ chờ trong ít hơn 6 Lát.
  • ]
  • Thông số thiết bị
    • Tùy chọn flash: 1 Công cụ60 KB
    • Tùy chọn ROM: 1 Thay16 KB
    • RAM: 128 Bọ 10 KB
    • Tùy chọn GPIO: 14, 22, 48 chân
    • Tùy chọn ADC: Độ dốc, SAR 10 & 12 bit
    • Các thiết bị ngoại vi tích hợp khác: DAC 12 bit, tối đa 2 bộ định thời 16 bit, bộ đếm thời gian theo dõi, thiết lập lại màu nâu, mô đun SVS, USART (UART, SPI), DMA, hệ số nhân 16 × 16 , So sánh_A, cảm biến nhiệt độ

Sê-ri MSP430F2xx [ chỉnh sửa ]

Sê-ri MSP430F2xx tương tự như thế hệ '1xx, nhưng hoạt động ở mức công suất thấp hơn, hỗ trợ hoạt động ở mức thấp hơn 16 MHz và có đồng hồ trên chip chính xác hơn (± 2%) giúp dễ dàng hoạt động hơn mà không cần tinh thể bên ngoài. Các thiết bị năng lượng cực thấp dựa trên flash này cung cấp hoạt động 1.8 .33.6 V. Bao gồm bộ tạo dao động công suất rất thấp (VLO), điện trở kéo lên / kéo xuống bên trong và các tùy chọn đếm pin thấp.

  • Tổng quan về thông số kỹ thuật điện, thấp như:
    • Duy trì RAM 0,1 [A
    • 0,3 Chế độ chờ (VLO)
    • 0,7 Chế độ đồng hồ thời gian thực
    • 220 A / MIPS hoạt động
    • Tính năng thức dậy cực nhanh từ chế độ chờ hơn 1 [s
  • Thông số thiết bị
    • Tùy chọn flash: 1 Pha120 KB
    • Tùy chọn RAM: 128 B - 8 KB
    • Tùy chọn GPIO: 10, 11, 16, 24, 32 và 48 chân
    • Tùy chọn ADC: Độ dốc, 10 & SAR 12 bit, Sigma Delta 16 & 24 bit
    • Các thiết bị ngoại vi tích hợp khác: bộ khuếch đại hoạt động, bộ xử lý 12 bit, lên đến 2 bộ định thời 16 bit, bộ đếm thời gian theo dõi, thiết lập lại màu nâu, mô đun SVS, USI (I²C, SPI), mô-đun USCI, DMA, hệ số nhân 16 × 16, Bộ so sánh_A +, cảm biến nhiệt độ

Sê-ri MSP430G2xx [ chỉnh sửa ]

Sê-ri Giá trị MSP430G2xx lên đến 16 MIPS với hoạt động 1.8 .33.6 V. Bao gồm Bộ tạo dao động công suất cực thấp (VLO), điện trở kéo xuống / kéo xuống bên trong và các tùy chọn đếm pin thấp, với mức giá thấp hơn so với dòng MSP430F2xx.

  • Công suất cực thấp, thấp đến mức (@ 2.2 V):
    • Duy trì RAM 0,1 [A
    • 0,4 A Chế độ chờ (VLO)
    • 0,7 Chế độ đồng hồ thời gian thực
    • 220 A / MIPS hoạt động
    • Chế độ thức dậy cực nhanh từ chế độ chờ [s
  • Thông số thiết bị
    • Tùy chọn flash: 0,5 Công56 KB
    • Tùy chọn RAM: 128 B đe 4 KB
    • Tùy chọn GPIO: 10, 16, 24, 32 chân
    • Tùy chọn ADC: Độ dốc, 10 bit SAR
    • Các thiết bị ngoại vi tích hợp khác: I / O cảm ứng điện dung, lên đến 3 bộ định thời 16 bit, bộ đếm thời gian theo dõi, thiết lập lại màu nâu, mô-đun USI (I²C, SPI), mô-đun USCI, so sánh_A +, cảm biến Temp

sê-ri MSP430x3xx chỉnh sửa ]

Sê-ri MSP430x3xx là thế hệ lâu đời nhất, được thiết kế cho thiết bị cầm tay với bộ điều khiển LCD nhúng. Điều này cũng bao gồm bộ tạo dao động vòng khóa tần số có thể tự động đồng bộ hóa với tinh thể tốc độ thấp (32 kHz). Thế hệ này không hỗ trợ bộ nhớ EEPROM, chỉ che dấu ROM và EPROM có thể lập trình được và có thể xóa UV một lần. Các thế hệ sau chỉ cung cấp bộ nhớ flash và mặt nạ tùy chọn ROM. Các thiết bị này cung cấp hoạt động 2.5 L5.5.5 V, ROM tối đa 32 KB.

  • Tổng quan về thông số kỹ thuật điện, thấp như:
    • 0,1 retA RAM duy trì
    • 0,9 Một chế độ đồng hồ thời gian thực
    • 160 A / MIPS hoạt động
    • Tính năng thức dậy nhanh từ chế độ chờ trong ít hơn 6 Lát.
  • ]
  • Thông số thiết bị:
    • Tùy chọn ROM: 2 Công ty32 KB
    • Tùy chọn RAM: 512 BÊ 1 KB
    • Tùy chọn GPIO: 14, 40 chân
    • Tùy chọn ADC: Độ dốc, SAR 14 bit
    • Các thiết bị ngoại vi tích hợp khác: Bộ điều khiển LCD, hệ số nhân

Sê-ri MSP430x4xx [ chỉnh sửa ]

Sê-ri MSP430x4xx tương tự thế hệ '3xx, nhưng bao gồm bộ điều khiển LCD tích hợp và có khả năng lớn hơn. Các thiết bị dựa trên flash hoặc ROM này cung cấp 8 M1616 MIPS ở hoạt động 1.8 .33.6 V, với FLL và SVS. Lý tưởng cho đo năng lượng thấp và các ứng dụng y tế.

  • Tổng quan về thông số kỹ thuật điện, thấp như:
    • Giữ lại 0,1 A RAM
    • 0,7 Một chế độ đồng hồ thời gian thực
    • 200 A / MIPS hoạt động
    • Tính năng thức dậy nhanh từ chế độ chờ trong ít hơn 6 Lát.
  • ]
  • Thông số thiết bị:
    • Tùy chọn flash / ROM: 4 - 120 KB
    • Tùy chọn RAM: 256 B - 8 KB
    • Tùy chọn GPIO: 14, 32, 48, 56, 68, 72, 80 chân
    • Tùy chọn ADC: Độ dốc , SAR 10 & 12 bit, Sigma Delta 16 bit
    • Các thiết bị ngoại vi tích hợp khác: SCAN_IF, ESP430, DAC 12 bit, Op Amps, RTC, lên đến 2 bộ định thời 16 bit, hẹn giờ theo dõi, hẹn giờ cơ bản, màu nâu out reset, SVS, mô-đun USART (UART, SPI), mô-đun USCI, Bộ điều khiển LCD, DMA, hệ số nhân 16 × 16 & 32x32, Công cụ so sánh_A, cảm biến nhiệt độ, Tốc độ CPU 8 MIPS

Sê-ri MSP430x5xx ]

Sê-ri MSP430x5xx có thể chạy tới 25 MHz, có bộ nhớ flash lên tới 512 KB và RAM tối đa 66 KB. Gia đình dựa trên flash này có mức tiêu thụ năng lượng hoạt động thấp với tối đa 25 MIPS ở mức hoạt động 1.8 .33.6 V (165 uA / MIPS). Bao gồm một mô-đun quản lý năng lượng sáng tạo để tiêu thụ năng lượng tối ưu và USB tích hợp. [3]

  • Tổng quan về thông số kỹ thuật điện, thấp như:
    • Duy trì RAM 0,1 [A
    • 2,5 μMột chế độ đồng hồ thời gian thực
    • 165 A / MIPS hoạt động
    • Tính năng thức dậy nhanh từ chế độ chờ trong ít hơn 5 Lát.
  • ]
  • Thông số thiết bị:
    • Tùy chọn flash: tối đa 512 KB
    • Tùy chọn RAM: tối đa 66 KB
    • Tùy chọn ADC: 10 & 12-bit SAR
    • Tùy chọn GPIO: 29, 31, 47, 48, 63, 67, 74, 87 chân
    • Các thiết bị ngoại vi tích hợp khác: PWM độ phân giải cao, 5 VI / O, USB, công tắc pin dự phòng, lên đến 4 bộ hẹn giờ 16 bit, đồng hồ bấm giờ, Đồng hồ thời gian thực, thiết lập lại màu nâu, SVS, USCI mô-đun, DMA, hệ số nhân 32x32, Comp B, cảm biến nhiệt độ

Sê-ri MSP430x6xx [ chỉnh sửa ]

Sê-ri MSP430x6xx có thể chạy tới 25 MHz bộ nhớ và RAM lên tới 66 KB. Gia đình dựa trên flash này có mức tiêu thụ năng lượng hoạt động thấp với tối đa 25 MIPS ở mức hoạt động 1.8 .33.6 V (165 uA / MIPS). Bao gồm một mô-đun quản lý năng lượng sáng tạo để tiêu thụ năng lượng tối ưu và USB tích hợp.

  • Tổng quan về thông số kỹ thuật điện, thấp như:
    • Duy trì RAM 0,1 [A
    • 2,5 μMột chế độ đồng hồ thời gian thực
    • 165 A / MIPS hoạt động
    • Tính năng thức dậy nhanh từ chế độ chờ trong ít hơn 5 Lát.
  • ]
  • Thông số thiết bị:
    • Tùy chọn flash: tối đa 512 KB
    • Tùy chọn RAM: tối đa 66 KB
    • Tùy chọn ADC: 12-bit SAR
    • Tùy chọn GPIO: 74 chân
    • Các thiết bị ngoại vi tích hợp khác: USB, LCD, DAC , So sánh_B, DMA, hệ số nhân 32x32, mô-đun quản lý năng lượng (BOR, SVS, SVM, LDO), đồng hồ bấm giờ, RTC, cảm biến nhiệt độ

sê-ri RF SoC (CC430) [ chỉnh sửa 19659103] Sê-ri RF SoC (CC430) cung cấp tích hợp chặt chẽ giữa lõi vi điều khiển, thiết bị ngoại vi, phần mềm và bộ thu phát RF. Tính năng thu phát RF <1 GHz, với hoạt động 1.8 Vedom 3.6 V. Có thể lập trình bằng Arduino IDE thông qua API panStamp.

  • Tổng quan về thông số kỹ thuật điện, thấp như:
    • 1 A Duy trì RAM
    • 1.7 μMột chế độ đồng hồ thời gian thực
    • 180 A / MIPS hoạt động
19659105] Thông số thiết bị:
  • Tùy chọn tốc độ: tối đa 20 MHz
  • Tùy chọn flash: tối đa 32 KB
  • Tùy chọn RAM: tối đa 4 KB
  • Tùy chọn ADC: 12-bit SAR
  • Tùy chọn GPIO: 30 & 44 chân
  • Các thiết bị ngoại vi tích hợp khác: Bộ điều khiển LCD, lên đến 2 bộ định thời 16 bit, bộ đếm thời gian theo dõi, RTC, mô-đun quản lý nguồn (BOR, SVS, SVM, LDO), mô-đun USCI, DMA, số nhân 32x32, Comp B, cảm biến nhiệt độ [19659216] Sê-ri FRAM [ chỉnh sửa ]

Sê-ri FRAM từ Texas Cụ cung cấp bộ nhớ hợp nhất với phân vùng động và tốc độ truy cập bộ nhớ nhanh hơn 100 lần so với flash. FRAM cũng có khả năng duy trì trạng thái năng lượng bằng không trong tất cả các chế độ năng lượng, điều đó có nghĩa là việc ghi được đảm bảo, ngay cả trong trường hợp mất điện. Với độ bền ghi trên 100 nghìn tỷ chu kỳ, EEPROM không còn cần thiết nữa. Tiêu thụ năng lượng hoạt động ở mức dưới 100μA / MHz.

  • Tổng quan về thông số kỹ thuật điện, thấp như:
    • Duy trì RAM 320 nA
    • 0,35 μMột chế độ đồng hồ thời gian thực
    • 82 A / MIPS hoạt động
19659105] Thông số thiết bị:
  • Tùy chọn tốc độ: 8 đến 24 MHz
  • Tùy chọn FRAM: 4 đến 128 KB
  • Tùy chọn RAM: 0,5 đến 2 KB
  • Tùy chọn ADC: 10 hoặc 12 bit SAR
  • Tùy chọn GPIO: 17 đến 83 chân GPIO
  • Các thiết bị ngoại vi tích hợp có thể khác: MPU, lên đến 6 bộ định thời 16 bit, bộ đếm thời gian theo dõi, RTC, mô-đun quản lý nguồn (BOR, SVS, SVM, LDO), mô-đun USCI, DMA, hệ số nhân, Comp B, nhiệt độ cảm biến, trình điều khiển LCD, I2C và UART BSL, Giao diện quét mở rộng, AES, điều chế IR

Sê-ri điện áp thấp [ chỉnh sửa ]

Sê-ri điện áp thấp bao gồm MSP430C09x và MSP430C09x. Hai loạt bộ vi điều khiển 16 bit điện áp thấp này có cấu hình với hai bộ định thời 16 bit, bộ chuyển đổi tương tự sang số 8 bit (A / D), bộ chuyển đổi kỹ thuật số sang tương tự 8 bit (D / A), và tối đa 11 chân I / O.

  • Tổng quan về thông số kỹ thuật điện, thấp như:
    • 1 A Duy trì RAM
    • 1.7 μMột chế độ đồng hồ thời gian thực
    • 180 A / MIPS hoạt động
19659105] Thông số thiết bị:
  • Tùy chọn tốc độ: 4 MHz
  • Tùy chọn ROM: 1 Tắt2 kB
  • Tùy chọn SRAM: 2 kB
  • Tùy chọn ADC: 8 bit SAR
  • Tùy chọn GPIO: 11 chân
  • Các thiết bị ngoại vi tích hợp khác : tối đa 2 bộ định thời 16 bit, bộ đếm thời gian theo dõi, thiết lập lại màu nâu, SVS, bộ so sánh, cảm biến nhiệt độ

Các họ MSP430 khác [ chỉnh sửa ]

Các gia đình khác trong MSP430 bao gồm Đã sửa Chức năng, ô tô, và các bộ phận Temp mở rộng.

Chức năng cố định: Bộ vi điều khiển 16 bit MSP430BQ1010 là một thiết bị có chức năng cố định tiên tiến, tạo thành bộ phận điều khiển và liên lạc ở phía bên nhận để truyền nguồn không dây trong các ứng dụng di động. MSP430BQ1010 tuân thủ thông số kỹ thuật của Hiệp hội điện không dây (WPC). Để biết thêm thông tin, hãy xem Sức mạnh không tiếp xúc [ liên kết chết vĩnh viễn ] .

Ô tô: Bộ vi điều khiển MSP430 (MCU) ô tô từ Texas Cụ (TI) là bộ xử lý tín hiệu hỗn hợp 16 bit, dựa trên RISC, đủ tiêu chuẩn AEC-Q100 và phù hợp cho các ứng dụng ô tô trong môi trường nhiệt độ môi trường lên tới 105 ° C. Trình điều khiển tuân thủ LIN cho MSP430 MCU do IHR GmbH cung cấp.

Nhiệt độ mở rộng: Các thiết bị MSP430 rất phổ biến trong các môi trường khắc nghiệt như cảm biến công nghiệp vì mức tiêu thụ điện năng thấp và tích hợp analog sáng tạo. Một số ứng dụng môi trường khắc nghiệt bao gồm vận tải / ô tô, năng lượng tái tạo, quân sự / không gian / hệ thống điện tử, thăm dò khoáng sản, công nghiệp, và an toàn & an ninh.

  • Định nghĩa thiết bị:
    • HT: -55 ° C đến 150 ° C
    • EP: Sản phẩm được cải tiến -55 ° C đến 125 ° C
    • Q1: Ô tô Q100 đủ tiêu chuẩn -40 ° C đến 105 ° C
    • T: Mở rộng ứng dụng nhiệt độ -40 ° C đến 105 ° C

Lưu ý rằng khi kích thước flash vượt quá 64K từ (128 KByte), địa chỉ lệnh không còn có thể được mã hóa chỉ trong hai byte. Sự thay đổi kích thước con trỏ này gây ra một số không tương thích với các phần trước.

Thiết bị ngoại vi [ chỉnh sửa ]

Thiết bị ngoại vi MSP430 thường dễ sử dụng, với (hầu hết) địa chỉ nhất quán giữa các mô hình và không có thanh ghi chỉ ghi (trừ hệ số nhân phần cứng) .

Cổng I / O cho mục đích chung 0 Hay10 [ chỉnh sửa ]

Thiết bị ngoại vi không cần thiết, pin có thể được sử dụng cho mục đích chung I / O. Các chân được chia thành các nhóm 8 bit được gọi là "cổng", mỗi nhóm được điều khiển bởi một số thanh ghi 8 bit. Trong một số trường hợp, các cổng được sắp xếp theo cặp có thể được truy cập dưới dạng thanh ghi 16 bit.

Họ MSP430 định nghĩa 11 cổng I / O, P0 đến P10, mặc dù không có chip nào thực hiện hơn 10 cổng. P0 chỉ được thực hiện trên gia đình '3xx. P7 đến P10 chỉ được triển khai trên các thành viên lớn nhất (và phiên bản đếm pin cao nhất) của các gia đình '4xx và' 2xx. Các họ '5xx và' 6xx mới nhất có từ P1 đến P11 và các thanh ghi điều khiển được gán lại để cung cấp nhiều cặp cổng hơn. Mỗi cổng được kiểm soát bởi các thanh ghi sau. Các cổng không thực hiện các tính năng cụ thể (như ngắt khi thay đổi trạng thái) sẽ không thực hiện các thanh ghi tương ứng.

P x IN
Cổng x đầu vào. Đây là một thanh ghi chỉ đọc và phản ánh trạng thái hiện tại của các chân của cổng.
P x OUT
Cổng x . Các giá trị được ghi vào thanh ghi đọc / ghi này được điều khiển ra khỏi các chân tương ứng khi chúng được cấu hình thành đầu ra.
P x DIR
Cổng x hướng dữ liệu. Các bit được viết là 1 cấu hình pin tương ứng cho đầu ra. Các bit được viết là 0 cấu hình pin cho đầu vào.
P x SEL
Cổng x chọn chức năng. Các bit được viết là 1 cấu hình pin tương ứng để sử dụng bởi các thiết bị ngoại vi chuyên dụng. Các bit được viết là 0 cấu hình pin cho I / O cho mục đích chung. Cổng 0 (chỉ phần 3xx) không được ghép với các thiết bị ngoại vi khác và không có thanh ghi P0SEL.
P x REN
Cổng x & 'Chỉ 5xx). Các bit được đặt trong thanh ghi này cho phép các điện trở kéo lên hoặc kéo xuống yếu trên các chân I / O tương ứng ngay cả khi chúng được cấu hình làm đầu vào. Hướng kéo được thiết lập bởi bit được ghi vào thanh ghi OUT P x .
P x DS
Cổng x 'Chỉ 5xx). Các bit được thiết lập trong thanh ghi này cho phép đầu ra hiện tại cao. Điều này làm tăng công suất đầu ra, nhưng có thể gây ra EMI.

Cổng 0 Hay2 có thể tạo ra các ngắt khi đầu vào thay đổi. Các thanh ghi bổ sung cấu hình khả năng này:

P x IES
Cổng x chọn cạnh ngắt. Chọn cạnh sẽ làm cho bit IFG P x được đặt. Khi bit đầu vào thay đổi từ khớp với trạng thái P x không khớp với nó (tức là bất cứ khi nào một bit trong P x IES XOR P x IN thay đổi từ rõ ràng để thiết lập), bit P x tương ứng được thiết lập.
P x IE
Cổng x ngắt cho phép. Khi cả bit này và bit IFG x đều được thiết lập, một ngắt được tạo ra.
P x IFG
Cổng x . Đặt bất cứ khi nào chân tương ứng thực hiện thay đổi trạng thái theo yêu cầu của P x IES. Chỉ có thể được xóa bằng phần mềm. (Cũng có thể được thiết lập bằng phần mềm.)
P x IV
Cổng x vectơ ngắt (chỉ '5xx). Thanh ghi 16 bit này là một bộ mã hóa ưu tiên có thể được sử dụng để xử lý các ngắt thay đổi pin. Nếu n là bit ngắt được đánh số thấp nhất đang chờ xử lý trong P x IFG và được bật trong P x IE, thanh ghi này đọc là 2 n +2. Nếu không có bit như vậy, nó đọc là 0. Hệ số tỷ lệ 2 cho phép sử dụng trực tiếp như một phần bù vào bảng nhánh. Đọc thanh ghi này cũng xóa cờ P x được báo cáo.

Một số chân có mục đích đặc biệt là đầu vào hoặc đầu ra. (Ví dụ: các chân hẹn giờ có thể được cấu hình làm đầu vào chụp hoặc đầu ra PWM.) Trong trường hợp này, bit P x điều khiển bit của hai chức năng mà chân thực hiện khi P x Bit bit được đặt. Nếu chỉ có một chức năng đặc biệt, thì P x DIR thường bị bỏ qua. Thanh ghi P x IN vẫn có thể đọc được nếu bit P x được đặt, nhưng việc tạo ngắt bị vô hiệu hóa. Nếu P x SEL rõ ràng, đầu vào của chức năng đặc biệt bị đóng băng và ngắt kết nối với pin bên ngoài. Ngoài ra, việc định cấu hình mã pin cho đầu ra cho mục đích chung không không vô hiệu hóa việc tạo ngắt.

Bản đồ địa chỉ đăng ký I / O mục đích chung
'1xx gia '4xx
P x IN P x OUT P x DIR P x ] P x IES P x IE P x IFG P x REN
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 cộng '6xx &' 0xx gia đình
P x IN P x OUT P x DIR P x ] P x DS P x SEL P x IV P x IES x IE P x IFG
PA P1 0x200 0x202 0x204 0x206 0x208 0x20A 0x20E 0x218 0x218
P2 0x201 0x203 0x205 0x207 0x209 0x20B 0x21E 0x219 0x219
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 Chỉ 4 bit; đã chia sẻ với các chân JTAG.

Các thiết bị ngoại vi tích hợp [ chỉnh sửa ]

Analog
  • Bộ chuyển đổi tương tự sang số
Dòng MSP430 cung cấp hai loại chuyển đổi tương tự sang số (ADC). Bộ chuyển đổi xấp xỉ 10 và 12 bit liên tiếp, cũng như bộ chuyển đổi Sigma-Delta 16 bit. Bộ điều khiển truyền dữ liệu và bộ đệm điều khiển và chuyển đổi 16 từ cho phép MSP430 chuyển đổi và lưu trữ các mẫu mà không cần sự can thiệp của CPU, giảm thiểu mức tiêu thụ điện năng. bộ so sánh, SVS hoặc cảm biến nhiệt độ. Nó cho phép người dùng linh hoạt lập trình một loạt các chức năng tương tự chỉ với một thiết lập.
Mô-đun so sánh của MSP430 cung cấp độ chính xác Chuyển đổi tương tự sang số. Màn hình tín hiệu tương tự bên ngoài và cung cấp đo điện áp và giá trị điện trở. Có khả năng của các chế độ năng lượng có thể lựa chọn.
Mô-đun DAC12 là một bộ giải mã điện áp 12-bit, có tính năng lựa chọn tham chiếu bên trong / bên ngoài và thời gian giải quyết được lập trình để tiêu thụ năng lượng tối ưu. Nó có thể được cấu hình ở chế độ 8- hoặc 12 bit. When multiple DAC12 modules are present, they may be grouped together for synchronous update operation.
Feature single supply, low current operation with rail-to-rail outputs and programmable settling times. Software selectable configuration options: unity gain mode, comparator mode, inverting PGA, non-inverting PGA, differential and instrumentation amplifier.
The SD16/SD16_A/SD24_A modules each feature 16-/24-bit sigma-delta A/D converters with an internal 1.2-V reference. Each converter has up to eight fully differential multiplexed inputs, including a built-in temperature sensor. The converters are second-order oversampling sigma-delta modulators with selectable oversampling ratios of up to 1024 (SD16_A/SD24_A) or 256 (SD16).
Timers
The BT has two independent 8-bit timers that can be cascaded to form a 16-bit timer/counter. Both timers can be read and written by software. The BT is extended to provide an integrated RTC. An internal calendar compensates for months with less than 31 days and includes leap-year correction.
RTC_A/B are 32-bit hardware counter modules that provide clock counters with a calendar, a flexible programmable alarm, and calibration. The RTC_B includes a switchable battery backup system that provides the ability for the RTC to operate when the primary supply fails.
Timer_A, Timer_B and Timer_D are asynchronous 16-bit timers/counters with up to seven capture/compare registers and various operating modes. The timers support multiple capture/compares, PWM outputs, and interval timing. They also have extensive interrupt capabilities. Timer_B introduces additional features such as programmable timer lengths (8, 10, 12 or 16-bit) and double-buffered compare register updates, while Timer_D introduces a high-resolution mode (4 ns resolution).
The WDT+ performs 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 configured as an interval timer and can generate interrupts at selected time intervals.
System
  • Advanced Encryption Standard (AES)
The AES accelerator module performs encryption and decryption of 128-bit data with 128-bit keys according to the advanced encryption standard in hardware, and can be configured with user software.
The BOR circuit detects low supply voltages and resets the device by triggering a power-on reset (POR) signal when power is applied or removed. The MSP430 MCU’s zero-power BOR circuit is continuously turned on, including in all low-power modes.
  • Direct Memory Access (DMA) Controller
The DMA controller transfers data from one address to another across the entire address range without CPU intervention. The DMA increases the throughput of peripheral modules and reduces system power consumption. The module features up to three independent transfer channels.
Although the MSP430's DMA subsystem is very capable it has several flaws, the most significant of which is the lack of an external transfer strobe. Although a DMA transfer can be triggered externally, there is no external indication of completion of a transfer. Consequently DMA to and from external sources is limited to external trigger per byte transfers, rather than full blocks automatically via DMA. This can lead to significant complexity (as in requiring extensive hand tweaking of code) when implementing processor to processor or processor to USB communications.[2] The reference cited uses an obscure timer mode to generate high speed strobes for DMA transfers. Unfortunately, the timers are not flexible enough to easily make up for the lack of an external DMA transfer strobe.
DMA operations that involve word transfers to byte locations cause truncation to 8 bits rather than conversion to two byte transfers. This makes DMA with A/D or D/A 16 bit values less useful than it could be (although it is possible to DMA these values through port A or B on some versions of the MSP 430 using an externally visible trigger per transfer such as a timer output).
  • Enhanced Emulation Module (EEM)
The EEM provides different levels of debug features such as 2-8 hardware breakpoints, complex breakpoints, break when read/write occurs at specified address, and more. Embedded into all flash-based MSP430 devices.
Some MSP430 models include a memory-mapped hardware multiplier peripheral which performs various 16×16+32→33-bit multiply-accumulate operations. Unusually for the MSP430, this peripheral does include an implicit 2-bit write-only register, which makes it effectively impossible to context switch. This peripheral does not interfere with CPU activities and can be accessed by the DMA. The MPY on all MSP430F5xx and some MSP430F4xx devices feature up to 32-bit x 32-bit.
The 8 registers used are:
Address Name Function
0x130 MPY Operand1 for unsigned multiply
0x132 MPYS Operand1 for signed multiply
0x134 MAC Operand1 for unsigned multiply-accumulate
0x136 MACS Operand1 for signed multiply-accumulate
0x138 OP2 Second operand for multiply operation
0x13A ResLo Low word of multiply result
0x13C ResHi High word of multiply result
0x13E SumExt Carry out of multiply-accumulate
The first operand is written to one of four 16-bit registers. The address written determines the operation performed. While the value written can be read back from any of the registers, the register number written to cannot be recovered.
If a multiply-accumulate operation is desired, the ResLo and ResHi registers must also be initialized.
Then, each time a write is performed to the OP2 register, a multiply is performed and the result stored or added to the result registers. The SumExt register is a read-only register that contains the carry out of the addition (0 or 1) in case of an unsigned multiply), or the sign extension of the 32-bit sum (0 or -1) in case of a signed multiply. In the case of a signed multiply-accumulate, the SumExt value must be combined with the most significant bit of the prior SumHi contents to determine the true carry out result (-1, 0, or +1).
The result is available after three clock cycles of delay, which is the time required to fetch a following instruction and a following index word. Thus, the delay is typically invisible. An explicit delay is only required if using an indirect addressing mode to fetch the result.
  • Memory Protection Unit (MPU)
The FRAM MPU protects against accidental writes to designated read-only memory segments or execution of code from a constant memory. The MPU can set any portioning of memory with bit level addressing, making the complete memory accessible for read, write and execute operations in FRAM devices.
  • Power management module (PMM)
The PMM generates a supply voltage for the core logic, and provides several mechanisms for the supervision and monitoring of both the voltage applied to the device and the voltage generated for the core. It is integrated with a low-dropout voltage regulator (LDO), brown-out reset (BOR), and a supply voltage supervisor and monitor.
  • Supply-Voltage Supervisor (SVS)
The SVS is a configurable module used to monitor the AVCC supply voltage or an external voltage. The SVS can be configured to set a flag or generate a power-on reset (POR) when the supply voltage or external voltage drops below a user-selected threshold.
Communication and Interface
  • Capacitive Touch Sense I/Os
The integrated capacitive touch sense I/O module offers several benefits to touch button and touch slider applications. The system does not require external components to create the self-oscillation (reducing bill of materials) and the capacitor (that defines the frequency of the self-oscillation) can be connected directly. In addition, there is no need for external MUXes to allow multiple pads and each I/O pad can directly serve as a cap sense input. A hysteresis of ~0.7 V ensures robust operation. Control and sequencing is done completely in software.
MSP430 devices have up to 12 digital I/O ports implemented. Each port has eight I/O pins. Every I/O pin can be configured as either input or output, and can be individually read or written to. Ports P1 and P2 have interrupt capability. MSP430F2xx, F5xx and some F4xx devices feature built-in, individually configurable pull-up or pull-down resistors.
The flexible CC1101 sub-1 GHz transceiver delivers the sensitivity and blocking performance required to achieve successful communication links in any RF environment. It also features low current consumption and supports flexible data rates and modulation formats.
The universal synchronous/asychrnous receive/transmit (USART) peripheral interface supports asynchronous RS-232 and synchronous SPI communication with one hardware module. The MSP430F15x/16x USART modules also support I²C, programmable baud rate, and independent interrupt capability for receive and transmit.
The USB module is fully compliant with the USB 2.0 specification and supports control, interrupt and bulk transfers at a data rate of 12 Mbps (full speed). The module supports USB suspend, resume and remote wake-up operations and can be configured for up to eight input and eight output endpoints. The module includes an integrated physical interface (PHY); a phase-locked loop (PLL) for USB clock generation; and a flexible power-supply system enabling bus-powered and self-powered devices.
  • USCI (UART, SPI, I²C, LIN, IrDA)
The universal serial communication interface (USCI) module features two independent channels that can be used simultaneously. The asynchronous channel (USCI_A) supports UART mode; SPI mode; pulse shaping for IrDA; and automatic baud-rate detection for LIN communications. The synchronous channel (USCI_B) supports I²C and SPI modes.
The universal serial interface (USI) module is a synchronous serial communication interface with a data length of up to 16-bits and can support SPI and I²C communication with minimal software.
Available on the MSP430FR4xxx and MSP430FR2xxx series chips, this feature is configured via the SYSCFG register set. This peripheral ties into other peripherals (Timers, eUSCI_A) to generate an IR modulated signal on an output pin.[4] (page 43)
Metering
  • ESP430 (integrated in FE42xx devices)
The ESP430CE module performs metering calculations independent of the CPU. Module has separate SD16, HW multiplier, and the ESP430 embedded processor engine for single-phase energy-metering applications.
The SIF module, a programmable state machine with an analog front end, is used to automatically measure linear or rotational motion with the lowest possible power consumption. The module features support for different types of LC and resistive sensors and for quadrature encoding.
Display
The LCD/LCD_A controller directly drives LCDs for up to 196 segments. Supports static, 2-mux, 3-mux, and 4-mux LCDs. LCD_A module has integrated charge pump for contrast control. LCD_B enables blinking of individual segments with separate blinking memory.
The LCD_E controller comes with the newer MSP430FR4xxx series microcontrollers and directly drives LCDs up to 448 segments. Supports static, 2-mux, 3-mux, 4-mux, 5-mux, 6-mux, 7-mux, 8-mux (1/3 bias) LCDs. Segment and Common pins may be reprogrammed to available LCD drive pins. This peripheral may be driven in LPM3.5 (RTC running+Main CPU core shutdown low-power mode).[4]

Software development environment[edit]

Texas Instruments provides various hardware experimenter boards that support large (approximately two centimeters square) and small (approximately one millimeter square) MSP430 chips. TI also provides software development tools, both directly, and in conjunction with partners (see the full list of compilers, assemblers, and IDEs). One such toolchain is the IAR C/C++ compiler and Integrated development environmentor IDE. A Kickstart edition can be downloaded for free from TI or IAR; it is limited to 8 KB of C/C++ code in the compiler and debugger (assembly language programs of any size can be developed and debugged with this free toolchain).

TI also combines a version of its own compiler and tools with its Eclipse-based Code Composer Studio IDE ("CCS"). It sells full-featured versions, and offers a free version for download which has a code size limit of 16 KB. CCS supports in-circuit emulators, and includes a simulator and other tools; it can also work with other processors sold by TI.

For those who are more comfortable with the Arduino, there is also another software Energia, an open source electronics prototyping platform with the goal to bring the Wiring and Arduino framework to the Texas Instruments MSP430 based LaunchPad where Arduino code can be exported for programming MSP430 chips. The latest release of Energia supports the MSP-EXP430G2xxx, MSP-EXP430FR5739, MSP-EXP430FR5969, MSP-EXP430F5529LP, Stellaris EK-LM4F120XL, Tiva-C EK-TM4C123GXL, Tiva-C EK-TM4C1294XL, CC3200 WiFi LaunchPad.[5]

The open source community produces a freely available software development toolset based on the GNU toolset. The GNU compiler is currently declined in three versions:

(MSPGCC)

(MSPGCC Uniarch)

TI consulted with RedHat to provide official support for the MSP430 architecture to the GNU Compiler Collection C/C++ compiler. This msp430-elf-gcc compiler is supported by TI's Code Composer Studio version 6.0 and higher.

There is a very early llvm-msp430 project, which may eventually provide better support for MSP430 in LLVM.

Other commercial development tool sets, which include editor, compiler, linker, assembler, debugger and in some cases code wizards, are available. VisSim, a block diagram language for model based development, generates efficient fixed point C-Code directly from the diagram.[6] VisSim generated code for a closed loop ADC+PWM based PID control on the F2013 compiles to less than 1 KB flash and 100 bytes RAM.[7] VisSim has on-chip peripheral blocks for the entire MSP430 family I²C, ADC, SD16, PWM.

Low cost development platforms[edit]

The MSP430F2013 and its siblings are set apart by the fact that (except for the MSP430G2 Value Line) it is the only MSP430 part that is available in a dual in-line package (DIP). Other variants in this family are only available in various surface-mount packages. TI has gone to some trouble to support the eZ430 development platform by making the raw chips easy for hobbyists to use in prototypes.

eZ430-F2013[edit]

TI has tackled the low-budget problem by offering a very small experimenter board, the eZ430-F2013on a USB stick. This makes it easy for designers to choose the MSP430 chip for inexpensive development platforms that can be used with a computer. The eZ430-F2013 contains an MSP430F2013 microcontroller on a detachable prototyping board, and accompanying CD with development software. It is helpful[citation needed] for schools, hobbyists and garage inventors. It is also welcomed[citation needed] by engineers in large companies prototyping projects with capital budget problems.

MSP430 Launchpad[edit]

Texas Instruments released the MSP430 Launchpad in July 2010. The MSP430 Launchpad has an onboard flash emulator, USB, 2 programmable LEDs, and 1 programmable push button.[8] As an addition to experimentation with the Launchpad a shield board is available.

TI has since provided several new LaunchPads based on the MSP430 platform:

  • MSP-EXP430F5529LP features the MSP430F5529 USB device-capable MCU with 128KB flash and 8KB SRAM
  • MSP-EXP430FR5969 features the MSP430FR5969 FRAM MCU with 64KB FRAM and 2KB SRAM
  • MSP-EXP430FR4133 features the MSP430FR4133 FRAM MCU with 16KB FRAM, 2KB SRAM and on-board LCD
  • MSP-EXP430FR6989 features the MSP430FR6989 FRAM MCU with 128KB FRAM, 2KB SRAM, on-board LCD and Extended Scan Interface peripheral
  • MSP-EXP430FR2311 features the MSP430FR2311 FRAM MCU with 4KB FRAM, 1KB SRAM, OpAmp and Transimpedance Amplifier peripheral
  • MSP-EXP430FR2433 features the MSP430FR2433 FRAM MCU with 15.5KB FRAM, 4KB SRAM
  • MSP-EXP430FR2355 features the MSP430FR2355 FRAM MCU with 32KB FRAM, 4KB SRAM, 12-bit ADC, 12-bit DAC, OpAmp/PGA, ICC for nested interrupts
  • MSP-EXP430FR5994 features the MSP430FR5994 FRAM MCU with 256KB FRAM, 8KB SRAM, 12-bit ADC and LEA DSP peripheral

All three of these LaunchPads include an eZ-FET JTAG debugger with backchannel UART capable of 1Mbit/s speeds. The FRAM LaunchPads (e.g. MSP-EXP430FR5969, MSP-EXP430FR4133) include EnergyTrace, a feature supported by TI's Code Composer Studio IDE for monitoring and analyzing power consumption.

Debugging interface[edit]

In common with other microcontroller vendors, TI has developed a two-wire debugging interface found on some of their MSP430 parts that can replace the larger JTAG interface. The eZ430 Development Tool contains a full USB-connected flash emulation tool ("FET") for this new two-wire protocol, named "Spy-Bi-Wire" by TI. Spy-Bi-Wire was initially introduced on only the smallest devices in the 'F2xx family with limited number of I/O pins, such as the MSP430F20xx, MSP430F21x2, and MSP430F22x2. The support for Spy-Bi-Wire has been expanded with the introduction of the latest '5xx family, where all devices have support Spy-Bi-Wire interface in addition to JTAG.

The advantage of the Spy-Bi-Wire protocol is that it uses only two communication lines, one of which is the dedicated _RESET line. The JTAG interface on the lower pin count MSP430 parts is multiplexed with general purpose I/O lines. This makes it relatively difficult to debug circuits built around the small, low-I/O-budget chips, since the full 4-pin JTAG hardware will conflict with anything else connected to those I/O lines. This problem is alleviated with the Spy-Bi-Wire-capable chips, which are still compatible with the normal JTAG interface for backwards compatibility with the old development tools.

JTAG debugging and flash programming tools based on OpenOCD and widely used in the ARM community are not available for the MSP430. Programming tools specially designed for the MSP430 are marginally less expensive than JTAG interfaces that use OpenOCD. However, should a project discover midstream that more MIPS, more memory, and more I/O peripherals are needed, those tools will not transfer to a processor from another vendor.

MSP430 CPU[edit]

The MSP430 CPU uses a von Neumann architecture, with a single address space for instructions and data. Memory is byte-addressed, and pairs of bytes are combined little-endian to make 16-bit words.

The processor contains 16 16-bit registers,[9] of which 4 are dedicated to special purposes: R0 is the program counter, R1 is the stack pointer, and R2 is the status register. Some R2 and R3 source encodings yield six commonly used constant values without requiring an additional operand. (R3 can only be used as a constant generator.) R4 through R15 are available for general use.

The instruction set is very simple; there are 27 instructions in three families. Most instructions are available in .B (8-bit byte) and .W (16-bit word) suffixed versions, depending on the value of a B/W bit: the bit is set to 1 for 8-bit and 0 for 16-bit. A missing suffix is equivalent to .W. Byte operations to memory affect only the addressed byte, while byte operations to registers clear the most significant byte.

MSP430 instruction set
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 Instruction
0 0 0 1 0 0 opcode B/W As register Single-operand arithmetic
0 0 0 1 0 0 0 0 0 B/W As register RRC Rotate right (1 bit) through carry
0 0 0 1 0 0 0 0 1 0 As register SWPB Swap bytes
0 0 0 1 0 0 0 1 0 B/W As register RRA Rotate right (1 bit) arithmetic
0 0 0 1 0 0 0 1 1 0 As register SXT Sign extend byte to word
0 0 0 1 0 0 1 0 0 B/W As register PUSH Push value onto stack
0 0 0 1 0 0 1 0 1 0 As register CALL Subroutine call; push PC and move source to PC
0 0 0 1 0 0 1 1 0 0 0 0 0 0 0 0 RETI Return from interrupt; pop SR then pop PC
0 0 1 condition 10-bit signed offset Conditional jump; PC = PC + 2×offset
0 0 1 0 0 0 10-bit signed offset JNE/JNZ Jump if not equal/zero
0 0 1 0 0 1 10-bit signed offset JEQ/JZ Jump if equal/zero
0 0 1 0 1 0 10-bit signed offset JNC/JLO Jump if no carry/lower
0 0 1 0 1 1 10-bit signed offset JC/JHS Jump if carry/higher or same
0 0 1 1 0 0 10-bit signed offset JN Jump if negative
0 0 1 1 0 1 10-bit signed offset JGE Jump if greater or equal
0 0 1 1 1 0 10-bit signed offset JL Jump if less
0 0 1 1 1 1 10-bit signed offset JMP Jump (unconditionally)
opcode source Ad B/W As destination Two-operand arithmetic
0 1 0 0 source Ad B/W As destination MOV Move source to destination
0 1 0 1 source Ad B/W As destination ADD Add source to destination
0 1 1 0 source Ad B/W As destination ADDC Add source and carry to destination
0 1 1 1 source Ad B/W As destination SUBC Subtract source from destination (with carry)
1 0 0 0 source Ad B/W As destination SUB Subtract source from destination
1 0 0 1 source Ad B/W As destination CMP Compare (pretend to subtract) source from destination
1 0 1 0 source Ad B/W As destination DADD Decimal add source to destination (with carry)
1 0 1 1 source Ad B/W As destination BIT Test bits of source AND destination
1 1 0 0 source Ad B/W As destination BIC Bit clear (dest &= ~src)
1 1 0 1 source Ad B/W As destination BIS Bit set (logical OR)
1 1 1 0 source Ad B/W As destination XOR Exclusive or source with destination
1 1 1 1 source Ad B/W As destination AND Logical AND source with destination (dest &= src)

Instructions are 16 bits, followed by up to two 16-bit extension words. Addressing modes are specified by the 2-bit As field and the 1-bit Ad field. Some special versions can be constructed using R0, and modes other than register direct using R2 (the status register) and R3 (the constant generator) are interpreted specially. Ad can use only a subset of the addressing modes for As.

Indexed addressing modes add a 16-bit extension word to the instruction. If both source and destination are indexed, the source extension word comes first. x refers to the next extension word in the instruction stream in the table below.

MSP430 addressing modes
As Ad Register Syntax Description
00 0 n Rn Register direct. The operand is the contents of Rn.
01 1 n x(Rn) Indexed. The operand is in memory at address Rn+x.
10 n @Rn Register indirect. The operand is in memory at the address held in Rn.
11 n @Rn+ Indirect autoincrement. As above, then the register is incremented by 1 or 2.
Addressing modes using R0 (PC)
01 1 0 (PC) ADDR Symbolic. Equivalent to x(PC). The operand is in memory at address PC+x.
11 0 (PC) #x Immediate. Equivalent to @PC+. The operand is the next word in the instruction stream.
Addressing modes using R2 (SR) and R3 (CG), special-case decoding
01 1 2 (SR) &ADDR Absolute. The operand is in memory at address x.
10 2 (SR) #4 Constant. The operand is the constant 4.
11 2 (SR) #8 Constant. The operand is the constant 8.
00 3 (CG) #0 Constant. The operand is the constant 0.
01 3 (CG) #1 Constant. The operand is the constant 1. There is no index word.
10 3 (CG) #2 Constant. The operand is the constant 2.
11 3 (CG) #−1 Constant. The operand is the constant −1.

Instructions generally take 1 cycle per word fetched or stored, so instruction times range from 1 cycle for a simple register-register instruction to 6 cycles for an instruction with both source and destination indexed.

The MSP430X extension with 20-bit addressing adds additional instructions that can require up to 10 clock cycles. Setting or clearing a peripheral bit takes two clocks. A jump, taken or not takes two clocks. With the 2xx series 2 MCLKs is 125 ns at 16 MHz.

Moves to the program counter are allowed and perform jumps. Return from subroutine, for example, is implemented as MOV @SP+,PC.

When R0 (PC) or R1 (SP) are used with the autoincrement addressing mode, they are always incremented by two. Other registers (R4 through R15) are incremented by the operand size, either 1 or 2 bytes.

The status register contains 4 arithmetic status bits, a global interrupt enable, and 4 bits that disable various clocks to enter low-power mode. When handling an interrupt, the processor saves the status register on the stack and clears the low-power bits. If the interrupt handler does not modify the saved status register, returning from the interrupt will then resume the original low-power mode.

Pseudo-operations[edit]

A number of additional instructions are implemented as aliases for forms of the above. For example, there is no specific "return from subroutine" instruction, but it is implemented as "MOV @SP+,PC". Emulated instructions are:

MSP430 Emulated instructions
Emulated Actual Description
ADC.x dst ADDC.x #0,dst Add carry to destination
BR dst MOV dst,PC Branch to destination
CLR.x dst MOV.x #0,dst Clear destination
CLRC BIC #1,SR Clear carry bit
CLRN BIC #4,SR Clear negative bit
CLRZ BIC #2,SR Clear zero bit
DADC.x dst DADD.x #0,dst Decimal add carry to destination
DEC.x dst SUB.x #1,dst Decrement
DECD.x dst SUB.x #2,dst Double decrement
DINT BIC #8,SR Disable interrupts
EINT BIS #8,SR Enable interrupts
INC.x dst ADD.x #1,dst Increment
INCD.x dst ADD.x #2,dst Double increment
INV.x dst XOR.x #−1,dst Invert
NOP MOV #0,R3 No operation
POP dst MOV @SP+,dst Pop from stack
RET MOV @SP+,PC Return from subroutine
RLA.x dst ADD.x dst,dst Rotate left arithmetic (shift left 1 bit)
RLC.x dst ADDC.x dst,dst Rotate left through carry
SBC.x dst SUBC.x #0,dst Subtract borrow (1−carry) from destination
SETC BIS #1,SR Set carry bit
SETN BIS #4,SR Set negative bit
SETZ BIS #2,SR Set zero bit
TST.x dst CMP.x #0,dst Test destination

Note that the immediate constants −1 (0xffff), 0, 1, 2, 4 and 8 can be specified in a single-word instruction without needing a separate immediate operand.

MSP430X 20-bit extension[edit]

The basic MSP430 cannot support more memory (ROM + RAM + peripherals) than its 64K address space. In order to support this, an extended form of the MSP430 uses 20-bit registers and a 20-bit address space, allowing up to 1 MB of memory. This uses the same instruction set as the basic form, but with two extensions:

  1. A limited number of 20-bit instructions for common operations, and
  2. A general prefix-word mechanism that can extend any instruction to 20 bits.

The extended instructions include some additional capabilities, notably multi-bit shifts and multi-register load/store operations.

20-bit operations use the length suffix "A" (for address) instead of .B or .W. .W is still the default. In general, shorter operations clear the high-order bits of the destination register.

The new instructions are as follows:

MSP430X extended instructions
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 Second word Instruction
0 0 0 0 source 0 0 opcode destination Extended memory-register moves
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 addr[19:16] 0 0 1 0 dst addr[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 W/A destination Bit shifts (1–4 bit positions)
0 0 0 0 n−1 0 0 0 1 0 W/A dst RRCM.x #n,Rdst (Rotate right through carry.)
0 0 0 0 n−1 0 1 0 1 0 W/A dst RRAM.x #n,Rdst (Rotate right arithmetic, a.k.a. shift right signed.)
0 0 0 0 n−1 1 0 0 1 0 W/A dst RLAM.x #n,Rdst (Rotate left arithmetic, a.k.a. shift left.)
0 0 0 0 n−1 1 1 0 1 0 W/A dst RRUM.x #n,Rdst (Rotate right unsigned, a.k.a. shift right logical.)
0 0 0 0 source 0 1 1 op. destination Extended register-memory moves
0 0 0 0 src 0 1 1 0 addr[19:16] addr[15:0] MOVA Rsrc,&abs20
0 0 0 0 src 0 1 1 1 dst x[15:0] MOVA Rsrc,x(Rdst)
0 0 0 0 source 1 opcode destination Extended ALU operations
0 0 0 0 imm[19:16] 1 0 0 0 dst imm[15:0] MOVA #imm20,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] ADDA #imm20,Rdst
0 0 0 0 imm[19:16] 1 0 1 1 dst imm[15:0] SUBA #imm20,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. mode varies CALLA
0 0 0 1 0 0 1 1 0 0 0 0 0 0 0 0 RETI (Same as MSP430)
0 0 0 1 0 0 1 1 0 1 As register CALLA source
0 0 0 1 0 0 1 1 1 0 0 0 abs[19:16] abs[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 (reserved)
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 (reserved)
0 0 0 1 0 1 dir W/A n−1 register Push/pop n registers ending with specified
0 0 0 1 0 1 0 W/A n−1 src PUSHM.x #n,Rsrc  Push RsrcR(src−1), ... R(srcn+1)
0 0 0 1 0 1 1 W/A n−1 dst−n+1 POPM.x #n,Rdst  Pop R(dstn+1), R(dstn+2), ... Rdst

All other instructions can have a prefix word added which extends them to 20 bits. The prefix word contains an additional operand size bit, which is combined with the existing B/W bit to specify the operand size. There is one unused size combination; there are indications that this might be used in future for a 32-bit operand size.[10]

The prefix word comes in two formats, and the choice between them depends on the instruction which follows. If the instruction has any non-register operands, then the simple form is used, which provides 2 4-bit fields to extend any offset or immediate constant in the instruction stream to 20 bits.

If the instruction is register-to-register, a different extension word is used. This includes a "ZC" flag which suppresses carry-in (useful for instructions like DADD which always use the carry bit), and a repeat count. A 4-bit field in the extension word encodes either a repeat count (0–15 repetitions in addition to the initial execution), or a register number which contains a 4-bit repeat count.

MSP430X prefix words
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 Instruction
0 0 0 1 1 A/L 0 0 Extension word
0 0 0 1 1 src[19:16] A/L 0 0 dst[19:16] Memory operand extension
0 0 0 1 1 0 0 ZC 0 A/L 0 0 n−1 Register operand extension (immediate repeat count)
0 0 0 1 1 0 0 ZC 1 A/L 0 0 Rn Register operand extension (register repeat count)

MSP430 address space[edit]

The general layout of the MSP430 address space is:

0x0000–0x0007 
Processor special function registers (interrupt control registers)
0x0008–0x00FF 
8-bit peripherals. These must be accessed using 8-bit loads and stores.
0x0100–0x01FF 
16-bit peripherals. These must be accessed using 16-bit loads and stores.
0x0200–0x09FF 
Up to 2048 bytes of RAM.
0x0C00–0x0FFF 
1024 bytes of bootstrap loader ROM (flash parts only).
0x1000–0x10FF 
256 bytes of data flash ROM (flash parts only).
0x1800-0x19FF 
512 bytes of data FRAM (most FRAM MCUs, user-writable containing no calibration data)
0x1100–0x38FF 
Extended RAM on models with more than 2048 bytes of RAM. (0x1100–0x18FF is a copy of 0x0200–0x09FF)
0x1100–0xFFFF 
Up to 60 kilobytes of program ROM. Smaller ROMs start at higher addresses. The last 16 or 32 bytes are interrupt vectors.

A few models include more than 2048 bytes of RAM; in that case RAM begins at 0x1100. The first 2048 bytes (0x1100–0x18FF) is mirrored at 0x0200–0x09FF for compatibility. Also, some recent models bend the 8-bit and 16-bit peripheral rules, allowing 16-bit access to peripherals in the 8-bit peripheral address range.

There is a new extended version of the architecture (called MSP430X) which allows a 20-bit address space. It allows additional program ROM beginning at 0x10000.

The '5xx series has a greatly redesigned address space, with the first 4K devoted to peripherals, and up to 16K of RAM.

References[edit]

External links[edit]

Community and information sites[edit]

Visual programming C code generators[edit]

Compilers, assemblers and IDEs[edit]

  Free Compiler and IDEs[edit]

  Most popular unrestricted IDEs and compilers[edit]

  Miscellaneous IDEs[edit]

List of debugging tools (not complete)[edit]

Name Manufacturer Interface Protocol(s) Status
MSP-FET430PIF TI Parallel-Port JTAG
MSP-FET430UIF TI USB-Interface JTAG, Spy-Bi-Wire
MSP-FET TI USB-Interface JTAG, Spy-Bi-Wire
MSP-430 LaunchPad TI USB-Interface Spy-Bi-Wire
MSP-430 LaunchPad eZ-FET TI USB-Interface Spy-Bi-Wire
eZ430-F2013 TI USB-Interface Spy-Bi-Wire
eZ430-RF2500 TI USB-Interface Spy-Bi-Wire
FETP SoftBaugh Parallel-Port JTAG
USBP SoftBaugh USB-Interface JTAG, Spy-Bi-Wire discontinued
MSP430-JTAG Olimex Parallel-Port JTAG
MSP430-JTAG-ISO Olimex USB-Interface JTAG, Spy-Bi-Wire obsolete
MSP430-JTAG-ISO-MK2 Olimex USB-Interface JTAG, Spy-Bi-Wire
MSP430-JTAG-Tiny Olimex USB-Interface JTAG, Spy-Bi-Wire not found
MSP430-JTAG-TINY-V2 Olimex USB-Interface JTAG?, Spy-Bi-Wire
MSP430-JTAG-RF Olimex USB-Interface JTAG, Spy-Bi-Wire
FlashPro-CC Elprotronic USB-Interface JTAG, Spy-Bi-Wire, BSL
VisSim/ECD Visual Solutions USB-Interface JTAG, Spy-Bi-Wire
LA-3713 Lauterbach USB-Interface / Ethernet JTAG, Spy-bi-Wire

Other tools[edit]


visit site
site

Comments

Popular posts from this blog

Diễn đàn Holitorium - Wikipedia

Các tọa độ: 41 ° 53′28 N 12 ° 28′48 ″ E / 41,8911 ° N 12,48000 ° E / 41,8911; 12.48000 Holitorium Forum (trung tâm thấp hơn) Holitorium (tiếng Ý: Foro Olitorio ; Tiếng Anh: Chợ bán rau trang web của một thị trường thương mại (macellum) [1] cho các loại rau, thảo mộc và dầu ở Rome cổ đại. Nó nằm ở "vị trí kỳ lạ" bên ngoài Porta Carmentalis trong khuôn viên Martius, chen chúc giữa Forum Boarium ("Chợ gia súc") và các tòa nhà nằm trong Circus Flinius. [2] Đền [ chỉnh sửa ] Bốn ngôi đền của đảng Cộng hòa là một phần của khu phức hợp chợ. Hai ngôi nhà đầu tiên được xây dựng trong Chiến tranh Punic lần thứ nhất, Đền thờ Janus đầu tiên được Gaius Duilius tuyên bố sau chiến thắng của ông trong trận hải chiến tại Mylae với Carthaginians vào năm 260 trước Công nguyên. [3] Một ngôi đền của Spes ("Hope") là được xây dựng ngay sau đó bởi Aulus Atilius Calatinus. [4] Một ngôi đền của Juno Sospita đã được Gaius Cor

Roi da (chính trị) - Wikipedia

Một roi là một quan chức của một đảng chính trị có nhiệm vụ đảm bảo kỷ luật đảng trong một cơ quan lập pháp. Roi da là "thực thi" của đảng; họ mời các nhà lập pháp đồng bào của họ tham dự các phiên bỏ phiếu và bỏ phiếu theo chính sách của đảng chính thức. Thuật ngữ này được lấy từ "người đánh cá" trong một cuộc đi săn, người cố gắng ngăn những con chó săn đi lang thang khỏi bầy. Ngoài ra, thuật ngữ "roi da" có thể có nghĩa là các hướng dẫn bỏ phiếu được ban hành cho các thành viên bởi roi [1] hoặc trạng thái của một nhà lập pháp nhất định trong nhóm nghị sĩ của đảng họ. Từ nguyên [ chỉnh sửa ] Biểu thức roi trong bối cảnh nghị viện có nguồn gốc từ thuật ngữ săn bắn. Từ điển tiếng Anh Oxford định nghĩa thuật ngữ whipper-in là "trợ lý của thợ săn giữ chó săn không đi lạc bằng cách đưa chúng trở lại bằng roi vào cơ thể chính của gói". Theo từ điển đó, lần đầu tiên sử dụng thuật ngữ whipper-in theo

Westing (bởi Musket và Sextant)

Westing (Tác giả Musket và Sextant) là một bản tổng hợp các EP và đĩa đơn đầu tiên của ban nhạc Pavement. Nó có tất cả các bản nhạc từ ba EP đầu tiên của họ, Slay Track (1933 Công1919) Âm mưu phá hủy J-7 và Âm thanh hoàn hảo mãi mãi cũng là bản phối duy nhất của "Summer Babe", hai mặt B của nó và hai bản nhạc tổng hợp. Danh sách bản nhạc [ chỉnh sửa ] Tất cả các bản nhạc được viết bởi Stephen Malkmus. "Bạn đang giết tôi" - 3:20 "Elder Box" - 2:26 "Có lẽ có thể" - 2:14 "Cô ấy tin" - 3:02 "Giá Yeah!" - 3:00 "Xe nâng" - 3:27 "Thân cây Spizzle" - 1:23 "Máy ghi âm" - 2:08 "K-Dart nội bộ" - 1:51 [19659007] "Độ sâu hoàn hảo" - 2:43 "Máy ghi âm (Rally)" - 0:21 "Xịt Heckler" - 1:06 "Từ bây giờ trở đi" - 2:03 &