SlideShare a Scribd company logo
MSP430. Краткое введение+
(по мотивам: Texas Instruments — «MSP430x2xx
Family User's Guide» и «Energia» )
Архитектура
Адресное пространство
Регистры
● R0/PC – счетчик команд
● R1/SP – указатель стека
● R2/SR/CG1 – регистр состояния (флагов)
● R3/CG2 – генератор констант
● R4-R15 – общего назначения
Язык программирования
● Wiring IDE, Wiring IDE
● Элементы:
– структурные компоненты
● setup()
● loop()
● if/switch/for...
– переменные
– функции
● Energia: http://energia.nu/Reference_Index.html
Hello world
MSP430 LaunchPad
UART
universal asynchronous receiver/transmitter
https://pycpu.wordpress.com/category/pycpu-uart-access/
Дополнительные слайды
Режимы адресации
Обозначения
●
ACLK (Auxiliary CLocK) — вспомогательный тактовый сигнал
●
ADC (Analog@to@Digital Converter) — аналого@цифровой
преобразователь, АЦП
●
BOR (Brown@Out Reset) — сброс по снижению напряжения
питания
●
BSL (BootStrap Loader) — начальный загрузчик
●
CPU (Central Processing Unit) — центральный процессор, ЦПУ
●
DAC (Digital@to@Analog Converter) — цифро@аналоговый
преобразователь, ЦАП
●
DCO (Digitally Controlled Oscillator) — генератор с цифровым
управлением
●
dst (Destination) — получатель
●
FLL (Frequency Locked Loop) — система автоматической
подстройки частоты
●
GIE (General Interrupt Enable) — общее разрешение прерываний
●
INT(N/2) (Integer portion of N/2) — целая часть от N/2
●
I/O (Input/Output) — ввод/вывод
●
ISR (Interrupt Service Routine) — процедура обработки прерывания
●
LSB (Least@Significant Bit) — младший значащий бит
●
LSD (Least@Significant Digit) — младший значащий разряд
●
LPM (Low@Power Mode) — режим пониженного энергопотребления
●
MAB (Memory Address Bus) — шина адреса
● MCLK (Master CLocK) — основной тактовый сигнал
● MDB (Memory Data Bus) — шина данных
● MSB (Most@Significant Bit) — старший значащий бит
● MSD (Most@Significant Digit) — старший значащий разряд
● NMI (Non@Maskable Interrupt) — немаскируемое прерывание
● PC (Program Counter) — счётчик команд
● POR (Power@On Reset) — сброс по включению питания
● PUC (Power@Up Clear) — очистка по включению питания
● RAM (Random Access Memory) — оперативное запоминающее
устройство, ОЗУ
● SCG (System Clock Generator) — генератор системного тактового
сигнала
● SFR (Special Function Register) — регистр специальных функций
● SMCLK (Sub@system Master CLocK) — дополнительный
тактовый сигнал
● SP (Stack Pointer) — указатель стека
● SR (Status Register) — регистр состояния
● src (Source) — источник
● TOS (Top@of@Stack) — вершина стека
● WDT (WatchDog Timer) — сторожевой таймер

More Related Content

Similar to 06 - Программирование микроконтроллеров. Обзор контроллера MSP-430

Лекция 4. Оптимизация доступа к памяти (Memory access optimization, cache opt...
Лекция 4. Оптимизация доступа к памяти (Memory access optimization, cache opt...Лекция 4. Оптимизация доступа к памяти (Memory access optimization, cache opt...
Лекция 4. Оптимизация доступа к памяти (Memory access optimization, cache opt...
Mikhail Kurnosov
 
Раскручиваем стек. Иван Пономарев. CoreHard Spring 2019
Раскручиваем стек. Иван Пономарев. CoreHard Spring 2019Раскручиваем стек. Иван Пономарев. CoreHard Spring 2019
Раскручиваем стек. Иван Пономарев. CoreHard Spring 2019
corehard_by
 
Архитектура и программирование потоковых многоядерных процессоров для научных...
Архитектура и программирование потоковых многоядерных процессоров для научных...Архитектура и программирование потоковых многоядерных процессоров для научных...
Архитектура и программирование потоковых многоядерных процессоров для научных...
a15464321646213
 
09. АЦП STM32(2)
09. АЦП STM32(2)09. АЦП STM32(2)
09. АЦП STM32(2)
KamlachPV
 
Hacking PostgreSQL. Обзор исходного кода
Hacking PostgreSQL. Обзор исходного кодаHacking PostgreSQL. Обзор исходного кода
Hacking PostgreSQL. Обзор исходного кода
Anastasia Lubennikova
 
pgconf.ru 2015 avito postgresql
pgconf.ru 2015 avito postgresqlpgconf.ru 2015 avito postgresql
pgconf.ru 2015 avito postgresql
Михаил Тюрин
 
Как обслужить 60 миллионов абонентов, Артем Руфанов (ПЕТЕР-СЕРВИС)
Как обслужить 60 миллионов абонентов, Артем Руфанов (ПЕТЕР-СЕРВИС)Как обслужить 60 миллионов абонентов, Артем Руфанов (ПЕТЕР-СЕРВИС)
Как обслужить 60 миллионов абонентов, Артем Руфанов (ПЕТЕР-СЕРВИС)
Ontico
 
Лекция 2. Оптимизация ветвлений и циклов (Branch prediction and loop optimiz...
Лекция 2. Оптимизация ветвлений и циклов (Branch prediction and loop optimiz...Лекция 2. Оптимизация ветвлений и циклов (Branch prediction and loop optimiz...
Лекция 2. Оптимизация ветвлений и циклов (Branch prediction and loop optimiz...
Mikhail Kurnosov
 
01 - Программирование микроконтроллеров. Введение. Предварительные сведения
01 - Программирование микроконтроллеров. Введение. Предварительные сведения01 - Программирование микроконтроллеров. Введение. Предварительные сведения
01 - Программирование микроконтроллеров. Введение. Предварительные сведения
Roman Brovko
 
Аппаратная реализация персонального компьютера
Аппаратная реализация персонального компьютераАппаратная реализация персонального компьютера
Аппаратная реализация персонального компьютераstudent_SSGA
 
Гирлянда для программистов
Гирлянда для программистовГирлянда для программистов
Гирлянда для программистов
GetDev.NET
 
Архитектура и уникальные особенности магистральной платформы Cisco NCS 6000
Архитектура и уникальные особенности магистральной платформы Cisco NCS 6000Архитектура и уникальные особенности магистральной платформы Cisco NCS 6000
Архитектура и уникальные особенности магистральной платформы Cisco NCS 6000
Cisco Russia
 
ПВТ - осень 2014 - Лекция 2 - Архитектура вычислительных систем с общей памятью
ПВТ - осень 2014 - Лекция 2 - Архитектура вычислительных систем с общей памятьюПВТ - осень 2014 - Лекция 2 - Архитектура вычислительных систем с общей памятью
ПВТ - осень 2014 - Лекция 2 - Архитектура вычислительных систем с общей памятью
Alexey Paznikov
 
Лекция 1: Архитектурно-ориентированная оптимизация программного обеспечения (...
Лекция 1: Архитектурно-ориентированная оптимизация программного обеспечения (...Лекция 1: Архитектурно-ориентированная оптимизация программного обеспечения (...
Лекция 1: Архитектурно-ориентированная оптимизация программного обеспечения (...Mikhail Kurnosov
 
Эффективное использование x86-совместимых CPU (Алексей Тутубалин)
Эффективное использование x86-совместимых CPU (Алексей Тутубалин)Эффективное использование x86-совместимых CPU (Алексей Тутубалин)
Эффективное использование x86-совместимых CPU (Алексей Тутубалин)Ontico
 
Лекция №4(часть 1) Организация ЭВМ и систем
Лекция №4(часть 1) Организация ЭВМ и системЛекция №4(часть 1) Организация ЭВМ и систем
Лекция №4(часть 1) Организация ЭВМ и системpianist2317
 
Доклад на Highload-2012
Доклад на Highload-2012Доклад на Highload-2012
Доклад на Highload-2012Alex Tutubalin
 
Новейшие разработки в области технологий L2VPN.
Новейшие разработки в области технологий L2VPN.Новейшие разработки в области технологий L2VPN.
Новейшие разработки в области технологий L2VPN.Cisco Russia
 
Лекция 2: Оптимизация ветвлений и циклов (Branch prediction and loops optimiz...
Лекция 2: Оптимизация ветвлений и циклов (Branch prediction and loops optimiz...Лекция 2: Оптимизация ветвлений и циклов (Branch prediction and loops optimiz...
Лекция 2: Оптимизация ветвлений и циклов (Branch prediction and loops optimiz...Mikhail Kurnosov
 

Similar to 06 - Программирование микроконтроллеров. Обзор контроллера MSP-430 (20)

Лекция 4. Оптимизация доступа к памяти (Memory access optimization, cache opt...
Лекция 4. Оптимизация доступа к памяти (Memory access optimization, cache opt...Лекция 4. Оптимизация доступа к памяти (Memory access optimization, cache opt...
Лекция 4. Оптимизация доступа к памяти (Memory access optimization, cache opt...
 
Раскручиваем стек. Иван Пономарев. CoreHard Spring 2019
Раскручиваем стек. Иван Пономарев. CoreHard Spring 2019Раскручиваем стек. Иван Пономарев. CoreHard Spring 2019
Раскручиваем стек. Иван Пономарев. CoreHard Spring 2019
 
Архитектура и программирование потоковых многоядерных процессоров для научных...
Архитектура и программирование потоковых многоядерных процессоров для научных...Архитектура и программирование потоковых многоядерных процессоров для научных...
Архитектура и программирование потоковых многоядерных процессоров для научных...
 
09. АЦП STM32(2)
09. АЦП STM32(2)09. АЦП STM32(2)
09. АЦП STM32(2)
 
3
33
3
 
Hacking PostgreSQL. Обзор исходного кода
Hacking PostgreSQL. Обзор исходного кодаHacking PostgreSQL. Обзор исходного кода
Hacking PostgreSQL. Обзор исходного кода
 
pgconf.ru 2015 avito postgresql
pgconf.ru 2015 avito postgresqlpgconf.ru 2015 avito postgresql
pgconf.ru 2015 avito postgresql
 
Как обслужить 60 миллионов абонентов, Артем Руфанов (ПЕТЕР-СЕРВИС)
Как обслужить 60 миллионов абонентов, Артем Руфанов (ПЕТЕР-СЕРВИС)Как обслужить 60 миллионов абонентов, Артем Руфанов (ПЕТЕР-СЕРВИС)
Как обслужить 60 миллионов абонентов, Артем Руфанов (ПЕТЕР-СЕРВИС)
 
Лекция 2. Оптимизация ветвлений и циклов (Branch prediction and loop optimiz...
Лекция 2. Оптимизация ветвлений и циклов (Branch prediction and loop optimiz...Лекция 2. Оптимизация ветвлений и циклов (Branch prediction and loop optimiz...
Лекция 2. Оптимизация ветвлений и циклов (Branch prediction and loop optimiz...
 
01 - Программирование микроконтроллеров. Введение. Предварительные сведения
01 - Программирование микроконтроллеров. Введение. Предварительные сведения01 - Программирование микроконтроллеров. Введение. Предварительные сведения
01 - Программирование микроконтроллеров. Введение. Предварительные сведения
 
Аппаратная реализация персонального компьютера
Аппаратная реализация персонального компьютераАппаратная реализация персонального компьютера
Аппаратная реализация персонального компьютера
 
Гирлянда для программистов
Гирлянда для программистовГирлянда для программистов
Гирлянда для программистов
 
Архитектура и уникальные особенности магистральной платформы Cisco NCS 6000
Архитектура и уникальные особенности магистральной платформы Cisco NCS 6000Архитектура и уникальные особенности магистральной платформы Cisco NCS 6000
Архитектура и уникальные особенности магистральной платформы Cisco NCS 6000
 
ПВТ - осень 2014 - Лекция 2 - Архитектура вычислительных систем с общей памятью
ПВТ - осень 2014 - Лекция 2 - Архитектура вычислительных систем с общей памятьюПВТ - осень 2014 - Лекция 2 - Архитектура вычислительных систем с общей памятью
ПВТ - осень 2014 - Лекция 2 - Архитектура вычислительных систем с общей памятью
 
Лекция 1: Архитектурно-ориентированная оптимизация программного обеспечения (...
Лекция 1: Архитектурно-ориентированная оптимизация программного обеспечения (...Лекция 1: Архитектурно-ориентированная оптимизация программного обеспечения (...
Лекция 1: Архитектурно-ориентированная оптимизация программного обеспечения (...
 
Эффективное использование x86-совместимых CPU (Алексей Тутубалин)
Эффективное использование x86-совместимых CPU (Алексей Тутубалин)Эффективное использование x86-совместимых CPU (Алексей Тутубалин)
Эффективное использование x86-совместимых CPU (Алексей Тутубалин)
 
Лекция №4(часть 1) Организация ЭВМ и систем
Лекция №4(часть 1) Организация ЭВМ и системЛекция №4(часть 1) Организация ЭВМ и систем
Лекция №4(часть 1) Организация ЭВМ и систем
 
Доклад на Highload-2012
Доклад на Highload-2012Доклад на Highload-2012
Доклад на Highload-2012
 
Новейшие разработки в области технологий L2VPN.
Новейшие разработки в области технологий L2VPN.Новейшие разработки в области технологий L2VPN.
Новейшие разработки в области технологий L2VPN.
 
Лекция 2: Оптимизация ветвлений и циклов (Branch prediction and loops optimiz...
Лекция 2: Оптимизация ветвлений и циклов (Branch prediction and loops optimiz...Лекция 2: Оптимизация ветвлений и циклов (Branch prediction and loops optimiz...
Лекция 2: Оптимизация ветвлений и циклов (Branch prediction and loops optimiz...
 

More from Roman Brovko

Individual task Networking
Individual task NetworkingIndividual task Networking
Individual task Networking
Roman Brovko
 
Networking essentials lect3
Networking essentials lect3Networking essentials lect3
Networking essentials lect3
Roman Brovko
 
Gl embedded starterkit_ethernet
Gl embedded starterkit_ethernetGl embedded starterkit_ethernet
Gl embedded starterkit_ethernet
Roman Brovko
 
Networking essentials lect2
Networking essentials lect2Networking essentials lect2
Networking essentials lect2
Roman Brovko
 
Networking essentials lect1
Networking essentials lect1Networking essentials lect1
Networking essentials lect1
Roman Brovko
 
Bare metal training_07_spi_flash
Bare metal training_07_spi_flashBare metal training_07_spi_flash
Bare metal training_07_spi_flash
Roman Brovko
 
Bare metal training_06_I2C
Bare metal training_06_I2CBare metal training_06_I2C
Bare metal training_06_I2C
Roman Brovko
 
Glesk worshop
Glesk worshopGlesk worshop
Glesk worshop
Roman Brovko
 
Bare metal training_05_uart
Bare metal training_05_uartBare metal training_05_uart
Bare metal training_05_uart
Roman Brovko
 
Bare metal training_04_adc_temp_sensor
Bare metal training_04_adc_temp_sensorBare metal training_04_adc_temp_sensor
Bare metal training_04_adc_temp_sensor
Roman Brovko
 
Bare metal training_03_timers_pwm
Bare metal training_03_timers_pwmBare metal training_03_timers_pwm
Bare metal training_03_timers_pwm
Roman Brovko
 
Bare metal training_02_le_ds_and_buttons
Bare metal training_02_le_ds_and_buttonsBare metal training_02_le_ds_and_buttons
Bare metal training_02_le_ds_and_buttons
Roman Brovko
 
Bare metal training_01_hello_world
Bare metal training_01_hello_worldBare metal training_01_hello_world
Bare metal training_01_hello_world
Roman Brovko
 
Bare metal training_00_prerequisites
Bare metal training_00_prerequisitesBare metal training_00_prerequisites
Bare metal training_00_prerequisites
Roman Brovko
 
C language lect_23_advanced
C language lect_23_advancedC language lect_23_advanced
C language lect_23_advanced
Roman Brovko
 
C language lect_22_advanced
C language lect_22_advancedC language lect_22_advanced
C language lect_22_advanced
Roman Brovko
 
C language lect_21_advanced
C language lect_21_advancedC language lect_21_advanced
C language lect_21_advanced
Roman Brovko
 
подготовка рабочего окружения
подготовка рабочего окруженияподготовка рабочего окружения
подготовка рабочего окружения
Roman Brovko
 
C language lect_20_advanced
C language lect_20_advancedC language lect_20_advanced
C language lect_20_advanced
Roman Brovko
 
C language lect_19_basics
C language lect_19_basicsC language lect_19_basics
C language lect_19_basics
Roman Brovko
 

More from Roman Brovko (20)

Individual task Networking
Individual task NetworkingIndividual task Networking
Individual task Networking
 
Networking essentials lect3
Networking essentials lect3Networking essentials lect3
Networking essentials lect3
 
Gl embedded starterkit_ethernet
Gl embedded starterkit_ethernetGl embedded starterkit_ethernet
Gl embedded starterkit_ethernet
 
Networking essentials lect2
Networking essentials lect2Networking essentials lect2
Networking essentials lect2
 
Networking essentials lect1
Networking essentials lect1Networking essentials lect1
Networking essentials lect1
 
Bare metal training_07_spi_flash
Bare metal training_07_spi_flashBare metal training_07_spi_flash
Bare metal training_07_spi_flash
 
Bare metal training_06_I2C
Bare metal training_06_I2CBare metal training_06_I2C
Bare metal training_06_I2C
 
Glesk worshop
Glesk worshopGlesk worshop
Glesk worshop
 
Bare metal training_05_uart
Bare metal training_05_uartBare metal training_05_uart
Bare metal training_05_uart
 
Bare metal training_04_adc_temp_sensor
Bare metal training_04_adc_temp_sensorBare metal training_04_adc_temp_sensor
Bare metal training_04_adc_temp_sensor
 
Bare metal training_03_timers_pwm
Bare metal training_03_timers_pwmBare metal training_03_timers_pwm
Bare metal training_03_timers_pwm
 
Bare metal training_02_le_ds_and_buttons
Bare metal training_02_le_ds_and_buttonsBare metal training_02_le_ds_and_buttons
Bare metal training_02_le_ds_and_buttons
 
Bare metal training_01_hello_world
Bare metal training_01_hello_worldBare metal training_01_hello_world
Bare metal training_01_hello_world
 
Bare metal training_00_prerequisites
Bare metal training_00_prerequisitesBare metal training_00_prerequisites
Bare metal training_00_prerequisites
 
C language lect_23_advanced
C language lect_23_advancedC language lect_23_advanced
C language lect_23_advanced
 
C language lect_22_advanced
C language lect_22_advancedC language lect_22_advanced
C language lect_22_advanced
 
C language lect_21_advanced
C language lect_21_advancedC language lect_21_advanced
C language lect_21_advanced
 
подготовка рабочего окружения
подготовка рабочего окруженияподготовка рабочего окружения
подготовка рабочего окружения
 
C language lect_20_advanced
C language lect_20_advancedC language lect_20_advanced
C language lect_20_advanced
 
C language lect_19_basics
C language lect_19_basicsC language lect_19_basics
C language lect_19_basics
 

06 - Программирование микроконтроллеров. Обзор контроллера MSP-430

  • 1. MSP430. Краткое введение+ (по мотивам: Texas Instruments — «MSP430x2xx Family User's Guide» и «Energia» )
  • 4. Регистры ● R0/PC – счетчик команд ● R1/SP – указатель стека ● R2/SR/CG1 – регистр состояния (флагов) ● R3/CG2 – генератор констант ● R4-R15 – общего назначения
  • 5. Язык программирования ● Wiring IDE, Wiring IDE ● Элементы: – структурные компоненты ● setup() ● loop() ● if/switch/for... – переменные – функции ● Energia: http://energia.nu/Reference_Index.html
  • 10.
  • 12. Обозначения ● ACLK (Auxiliary CLocK) — вспомогательный тактовый сигнал ● ADC (Analog@to@Digital Converter) — аналого@цифровой преобразователь, АЦП ● BOR (Brown@Out Reset) — сброс по снижению напряжения питания ● BSL (BootStrap Loader) — начальный загрузчик ● CPU (Central Processing Unit) — центральный процессор, ЦПУ ● DAC (Digital@to@Analog Converter) — цифро@аналоговый преобразователь, ЦАП ● DCO (Digitally Controlled Oscillator) — генератор с цифровым управлением ● dst (Destination) — получатель ● FLL (Frequency Locked Loop) — система автоматической подстройки частоты ● GIE (General Interrupt Enable) — общее разрешение прерываний ● INT(N/2) (Integer portion of N/2) — целая часть от N/2 ● I/O (Input/Output) — ввод/вывод ● ISR (Interrupt Service Routine) — процедура обработки прерывания ● LSB (Least@Significant Bit) — младший значащий бит ● LSD (Least@Significant Digit) — младший значащий разряд ● LPM (Low@Power Mode) — режим пониженного энергопотребления ● MAB (Memory Address Bus) — шина адреса ● MCLK (Master CLocK) — основной тактовый сигнал ● MDB (Memory Data Bus) — шина данных ● MSB (Most@Significant Bit) — старший значащий бит ● MSD (Most@Significant Digit) — старший значащий разряд ● NMI (Non@Maskable Interrupt) — немаскируемое прерывание ● PC (Program Counter) — счётчик команд ● POR (Power@On Reset) — сброс по включению питания ● PUC (Power@Up Clear) — очистка по включению питания ● RAM (Random Access Memory) — оперативное запоминающее устройство, ОЗУ ● SCG (System Clock Generator) — генератор системного тактового сигнала ● SFR (Special Function Register) — регистр специальных функций ● SMCLK (Sub@system Master CLocK) — дополнительный тактовый сигнал ● SP (Stack Pointer) — указатель стека ● SR (Status Register) — регистр состояния ● src (Source) — источник ● TOS (Top@of@Stack) — вершина стека ● WDT (WatchDog Timer) — сторожевой таймер