48448 (Работа микроконтроллера и его программирование)

2016-07-29СтудИзба

Описание файла

Документ из архива "Работа микроконтроллера и его программирование", который расположен в категории "". Всё это находится в предмете "информатика" из 1 семестр, которые можно найти в файловом архиве . Не смотря на прямую связь этого архива с , его также можно найти и в других разделах. Архив можно найти в разделе "контрольные работы и аттестации", в предмете "информатика, программирование" в общих файлах.

Онлайн просмотр документа "48448"

Текст из документа "48448"

Работа микроконтроллера и его программирование

Программирование микроконтроллера заключается в записи:

■ кодов команд программы и констант в FlashROM;

■ кодов исходных данных в EEPROM;

■ требуемых значений установочных битов (Fuse Bits);

■ требуемых значении битов защиты (Lock Bits).

В микроконтроллерах, поступающих в продажу, во всех ячейках FlashROM записан код $FFFF, во всех ячейках EEPROM — код $FF, биты защиты имеют единичное значение, а установочные биты могут иметь разные значения. Исходные значения установочных битов у микроконтроллеров разных типов указаны в приложении П6. Кроме того, в трех специальных ячейках памяти записаны сигнатурные байты, определяющие тип микроконтроллера.

Коды, записанные в FlashROM и EEPROM, сигнатурные байты и значения установочных битов и битов защиты могут быть прочитаны для контроля правильности записи и определения типа и состояния микроконтроллера.

В микроконтроллерах семействах AVR имеются два бита защиты — LB1 и LB2. При единичном значении обоих битов возможны и запись, и чтение кодов. После программирования бита LB1 (LB1=O) дальнейшая запись кодов в FlashROM и EEPROM и изменение значения установочных битов невозможны. После программирования бита LB2 (LB1=O, LB2 = 0) невозможно также чтение кодов, записанных в FlashROM и EEPROM, и значений установочных битов.

При перепрограммировании микроконтроллера (программировании микроконтроллера, ранее прошедшего программирование) необходимо предварительно "стереть" прежнюю запись.

При стирании во всех ячейках FlashROM и EEPROM восстанавливаются коды $FFFF и $FF соответственно, биты защиты принимают единичное значение, а установочные биты и сигнатурные байты остаются без изменения. Допускается выполнить до 1000 циклов "стирание-запись" для ячеек FlashROM и до 100000 циклов для ячеек EEPROM.

Запись и чтение кодов при программировании выполняются побайтно. Ввод и вывод битов в байте могут выполняться параллельно или последовательно.

В микроконтроллерах семейства AVR реализуются следующие способы программирования:

1. Параллельное программирование с использованием дополнительного источника напряжения +12 В (High-Voltage Parallel Programming, HVPP);

2. Последовательное программирование с использованием дополнительного источника напряжения +12 В (High-Voltage Serial Programming, HVSP);

3. Последовательное программирование без использования дополнительного источника напряжения {Low-Voltage Serial Programming, LVSP).

Самопрограммирование (Self-Programming, SLFP). Возможность использования названных способов программирования в микроконтроллерах разных типов отмечена знаком "+" в табл. 1.

Программирование с использованием дополнительного источника напряжения (HVPP и HVSP) выполняется с помощью программатора до установки микроконтроллера в аппаратуре, где ему предстоит работать. Последовательное программирование без использования дополнительного источника напряжения (LVSP) может выполняться после установки микроконтроллера в аппаратуре (In-System Programming). Программирование по способу LVSP возможно при нулевом значении установочного бита SPIEN.

При программировании по способу LVSP микроконтроллер находится в рабочем состоянии, значения напряжения питания и тактовой частоты лежат в пределах, установленных для микроконтроллера данного типа (приложение Ш). Вывод RESET соединен с шиной GND. Ввод и вывод байтов при программировании выполняются с использованием трех выводов - MOSI, MISO и SCK.

Таблица 1

Тип МК

Способ программирования

Выводы порта

SPI

HVPP

HVSP

LVSP*

SLFP

MOSI

MISO

SCK

t11

+

t12

+

+

PBO

PB1

PB2

t15

+

+

PBO

PB1

PB2

2323

+

+

PBO

PB1

PB2

2343

+

+

PBO

PB1

PB2

1200

+

+

PB5

PB6

PB7

2313

+

+

PB5

PB6

PB7

t28

+

4433

+

+

PB3

PB4

PB5

8515

+

+

PB5

PB6

PB7

8535

+

+

PB5

PB6

PB7

m163

+

+

+

PB5

PB6

PB7

m103

+

+

PB2**

PB3"

PB1

* — выполняется при SPIEN = 0;

1 — при программировании RXD и TXD

В микроконтроллерах, имеющих последовательный порт ввода-вывода SPI (табл. 1), используются выводы этого порта. В микро-Контроллерах без порта SPI находится вспомогательный порт SPI, работающий только при программировании в режиме ведомого устройства. Функции выводов MOSI, MISO и SCK выполняют выводы параллельных портов ввода-вывода.

Выводы микроконтроллера, используемые в качестве входов MOSI и SCK и выхода MISO у микроконтроллеров разных типов указаны в табл. 1. В микроконтроллере типа m10З вместо выводов MOST и MISO используются выводы RXD и TXD соответственно.

У микроконтроллеров типа ml63 и ml03 запись байтов в FlashROM выполняется за два этапа. На первом этапе байты записываются в буферное запоминающее устройство. На втором этапе выполняется перепись всех кодов из буферного запоминающего устройства в страницу FlashROM. Страница у микроконтроллеров типа т163 и ml03 имеет емкость 128 и 256 байтов соответственно.

При программировании по способу LVSP в микроконтроллере могут выполняться следующие операции:

1) разрешение LVSP (Programming Enable);

2) стирание записи (Chip Erase);

3) запись байта в FlashROM (Write Program Memory);

4) запись байта в буферные ЗУ (Load Flash Page);

5) перепись из буферного ЗУ в FlashROM (Write Flash Page);

6) чтение байта из FlashROM (Read Program Memory);

7) запись байта в EEPROM (Write EEPROM);

8) чтение байта из EEPROM (Read EEPROM);

9) запись битов защиты (Write Lock Bits);

10) чтение битов защиты (Read Lock Bits);

11) запись установочных битов (Write Fuse Bits);

12) чтение установочных битов (Read Fuse Bits);

13) чтение сигнатурного байта (Read Signature Byte);

14) чтение калибровочного байта (Read Calibration Byte).

Операции №№ 10 и 12 у микроконтроллеров некоторых типов

объединены в одну операцию. При выполнении операции "Запись байта в EEPROM" автоматически перед записью выполняется стирание соответствующей ячейки EEPROM.

Операции №№ 1, 2, 6, 7, 8, 9, 13 выполняются в микроконтроллерах всех типов. Возможность выполнения других операций у микроконтроллеров разных типов отмечена знаком "+" в табл. 2.

Таблица 2

Тип МК

t12

t15

2323

2343

1200

2313

4433

8515

8535

m163

m103

Write

Program Memory

+

+

+

+

+

+

+

+

+

Load

Flash Page

+

+

Write

Flash Page

+

+

Read

Lock Bits

+

+

+

+

+

+

+

+

Write

Fuse Bits

+

+

+*

+*

+*

+*

+*

+*

Read

Fuse Bits

+

+

+

+

+

+

+

+

Read

Calibration Byte

+

+

+

Если операция "запись установочных битов" в микроконтроллере не выполняется, а значения этих битов перед программированием (перепрограммированием) отличаются от требуемых, необходимо до установки микроконтроллера в аппаратуре выполнить запись требуемых значений установочных битов с помощью программатора.

Для выполнения любой операции в микроконтроллер через вход MOSI вводится последовательность из четырех байтов, в которую входят один или два байта, определяющие тип операции, и байты, используемые при выполнении операции (адресный байт, записываемый байт, байт, содержащий значения установочных битов и битов защиты, холостой байт).

При выполнении операции чтения одновременно с вводом одного из байтов выводится считанный байт через выход MISO. Байты вводятся и выводятся, начиная со старшего бита. Частота следования импульсов на входе SCK должна быть не более 1/4 частоты тактового сигнала микроконтроллера. Сигнал на входе SCK при отсутствии импульсов должен иметь низкий уровень.

Свежие статьи
Популярно сейчас
Почему делать на заказ в разы дороже, чем купить готовую учебную работу на СтудИзбе? Наши учебные работы продаются каждый год, тогда как большинство заказов выполняются с нуля. Найдите подходящий учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
5224
Авторов
на СтудИзбе
427
Средний доход
с одного платного файла
Обучение Подробнее