- •Микроконтроллеры msp430 Введение
- •1. Центральный процессор msp430
- •1.1. Адресное пространство микроконтроллеров msp430f1xx
- •1.2. Регистровый файл
- •1.3. Байтовая и словная формы инструкций.
- •1.4. Режимы адресации
- •1.4.1 Регистровая адресация
- •1.4.2. Индексная адресация
- •1.4.3 Символьная адресация
- •1.4.4 Абсолютная адресация
- •1.4.5. Косвенная адресация
- •1.4.6. Косвенная адресация с автоинкрементом
- •1.4.7 Непосредственная адресация
- •2. Система команд msp микроконтроллеров
- •2.1. Двухадресные команды
- •2.2 Одноадресные команды
- •2.3 Команды переходов
- •2.4. Эмулируемые команды
- •3. Периферийные устройства микроконтроллеров msp430f1xx
- •3.1 Внешние выводы микроконтроллера msp430f149
- •3.2 Система прерываний
- •3.3 Система тактирования
- •3.4 Сторожевой таймер
- •3.5 Аппаратный умножитель
- •3.6 Порты ввода/вывода
- •3.7 Таймер a3
- •3.8 Таймер b7
- •3.9 Интерфейс usart
- •3.9.1 Режим uart
- •3.9.1.1 Передача данных
- •3.9.1.2 Прием данных
- •3.9.1.3 Поддержка коммуникации в многопроцессорных системах
- •3.9.1.4 Обнаружение стартового бита при приеме
- •3.9.1.5 Скорость передачи
- •3.9.1.6 Регистры usart
- •3.9.2 Режим spi
- •3.9.3 Режим i2c
- •3.9.3.1 Общие сведения о шине i2c
- •3.9.3.2 Режимы работы usart в режиме i2c
- •3.9.3.3 Арбитраж
- •3.9.3.4 Тактирование i2c модуля
- •3.9.3.4 Инициализация модуля i2c
- •3.9.3.5 Регистры модуля usart в режиме i2c
- •3.10 Аналоговый компаратор
- •3.11 Аналого-цифровой преобразователь adc12
- •3.12 Flash контроллер
- •3.12.1 Стирание Flash памяти
- •3.12.2 Запись Flash памяти
- •3.12.3 Регистры Flash контроллера
- •3.13 Цифро-аналоговый преобразователь
- •Контроллер dma
Микроконтроллеры msp430 Введение
Микроконтроллеры семейства MSP430 - серия 16-ти разрядных микроконтроллеров фирмы Texas Instruments (www.ti.com). Американская фирма TI является мировым лидером по производству цифровых сигнальных процессоров. Ею также производятся микроконтроллеры индустриального применения, аналоговые и цифровые микросхемы широкого применения.
Микроконтроллеры семейства MSP430 имеют одинаковое 16-разрядное процессорное ядро и отличаются друг от друга объемом встроенной памяти программ и данных, набором периферийных устройств, количеством внешних выводов.
Как и AVR микроконтроллеры, MSP реализует RISC (Reduced Instruction Set Computer) идеологию (всего 27 базовых команд). Однако, а отличие от AVR, данная серия построена по фон-неймановской (von Neumann) архитектуре, предполагающей, что память программ и память данных находятся в одном адресном пространстве. Основными чертами рассматриваемых микроконтроллеров являются широкий набор встроенных периферийных устройств, высокая производительность процессора и крайне низкая мощность потребления, что делает их идеальными для применения в портативных измерительных индустриальных и биомедицинских приборах.
В настоящее время имеется 5 групп микроконтроллеров MSP430:
MSP430C3xx - имеет производительность до 4 миллионов инструкций в секунду (4 MIPS), память программ – ПЗУ до 32 kB, память данных (ОЗУ)– до 1 kB, имеется аппаратная поддержка ЖК индикаторов. В настоящее время эта серия считается устаревшей и в новых разработках не используется.
MSP430F1xx – имеет производительность 8 MIPS, Flash память программ до 60 kB, ОЗУ- до 2 kB (ОЗУ модели MSP430F1611 - 10 kB);
MSP430F4xx - производительность 8 MIPS, Flash память программ до 120 kB, ОЗУ-до 8 kB, имеется аппаратная поддержка ЖКИ;
MSP430F2xx - производительность 16 MIPS, Flash память программ до 120 kB, ОЗУ-до 8 kB, имеет усиленную по отношению к MSP430F1xx периферию;
MSP430F5xx – новейшая серия, анонсированная во 2 квартале 2008г, имеет производительность до 25 MIPS, Flash память программ до 256 kB, ОЗУ-до 16 kB, имеет усиленную по отношению к MSP430F2xx периферию;
Новейшие микроконтроллеры, имеющие объем встроенной Flash памяти больше 64 kB, оснащены усиленным процессорным ядром MSP430X, поддерживающим 20-ти разрядную арифметику и имеют расширенную систему команд. В данном курсе будут рассматриваться только микросхемы группы MSP430F1xx .
Микроконтроллеры серии MSP430F1xx строятся по модульному принципу, включая в себя набор однотипных функциональных устройств.
Все микроконтроллеры серии содержат следующие функциональные модули:
- память программ типа Flash ;
- память данных RAM (Random Access Memory);
- сторожевой таймер (Watch Dog Timer);
- супервизор питания;
- аналоговый компаратор;
- 16-разрядный таймер A с тремя модулями захвата/сравнения (Capture/Compare);
- перестраиваемый RC – генератор DCO (Digitally Controlled Oscillator).
Модели микроконтроллеров внутри семейства отличаются друг от друга объемами встроенной памяти и набором дополнительных периферийных устройств. В таблице 1 сведены характеристики микроконтроллеров серии MSP430F1xx.
В таблице 1 приняты следующие обозначения:
Int (interrupt) – количество источников прерывания;
I/O (input/output) – количество внешних линий портов ввода/вывода;
Mul (multiplier) – наличие аппаратного умножителя;
#CC (capture/compare) – количество модулей захвата/сравнения;
ADC# (Analog to Digital Converter) – разрядность аналого-цифрового преобразователя;
DAC (Digital to Analog Converter) – количество цифро-аналоговых преобразователей;
DMA (Direct Memory Access) – количество каналов контроллера прямого доступа в память.
Таблица 1
-
Модель
Flash, kB
RAM, B
Int
I/O
Mul
TimerB
UART/SPI
ADC
DAC
DMA
Выв.
корпуса
MSP430F1101
1
128
7
14
-
-
-
-
-
-
20
MSP430F1121
4
256
7
14
-
-
-
-
-
-
20
MSP430F122
4
256
9
24
-
-
1
-
-
-
28
MSP430F123
8
256
9
24
-
-
1
-
-
-
28
MSP430F1222
4
256
10
24
-
-
1
ADC10
-
-
28
MSP430F1232
8
256
10
24
-
-
1
ADC10
-
-
28
MSP430F133
8
256
15
54
-
3CC
2
ADC12
-
-
64
MSP430F135
16
512
15
54
-
3CC
2
ADC12
-
-
64
MSP430F147
32
1k
15
54
+
7CC
2
ADC12
-
-
64
MSP430F148
48
2k
15
54
+
7CC
2
ADC12
-
-
64
MSP430F149
60
2k
15
54
+
7CC
2
ADC12
-
-
64
MSP430F155
16
512
16
54
-
3CC
1
ADC12
2
3
64
MSP430F156
24
1k
16
54
-
3CC
1
ADC12
2
3
64
MSP430F157
32
1k
16
54
-
3CC
1
ADC12
2
3
64
MSP430F167
32
1k
16
54
+
7CC
2 +I2C
ADC12
2
3
64
MSP430F168
48
2k
16
54
+
7CC
2 +I2C
ADC12
2
3
64
MSP430F169
60
2k
16
54
+
7CC
2 +I2C
ADC12
2
3
64
MSP430F1610
32
5k
16
54
+
7CC
2 +I2C
ADC12
2
3
64
MSP430F1611
48
10k
16
54
+
7CC
2 +I2C
ADC12
2
3
64
