Лекция № 2 (1085691)

Файл №1085691 Лекция № 2 (Лекции МП)Лекция № 2 (1085691)2018-01-12СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла

ЛЕКЦИЯ № 2.

Характеристика основных функциональных узлов процессорного ядра микроконтроллеров среднего уровня.

Память программ (ПП).

1) Способ занесения записи по последовательному каналу с помощью двух линий по I2С, где имеется 2 счётчика: один считает синхросигнал, другой считает ячейки памяти. Этот способ называется ICSP - можно программировать непосредственно на плате, для этого на плате должен быть разъем для программирования.

2) Разрядность равна 14.


3) Объём памяти программ: 512 X 14 разрядов;

1024 X 14 разрядов; Для микроконтроллеров нижнего

2048 X 14 разрядов; уровня.

4096 X 14 разрядов;

8192 X 14 разрядов.

Для микроконтроллеров высокого уровня 1 М слов X 16 разрядов.

Это внутренняя память

У микроконтроллеров нижнего и среднего уровня память программ не может быть расширена за счёт подключения внешних микросхем памяти.

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

Счетчик команд.

Счетчик команд и регистр PCLATCH (защёлка) имеют разрядность 13 бит. Младший байт счетчика (PCL) доступен для чтения и записи и находится в регистре 02h. Старшие разряды счетчика команд не могут быть напрямую записаны или считаны и берутся из регистра PCLATH (PC latch high), адрес которого 0Ah. Содержимое PCLATH передается в старшие разряды счетчика команд, когда он загружается новым значением.

Старшие биты счетчика команд загружаются из PCLATH разными способами:

  • Если в счетчик команд загружается новое значение во время выполнения команд CALL, GOTO, то в два старших разряда счетчика команд <12:11> загружается содержимое двух разрядов <4: 3> регистра PCLATH.

  • Если в младший байт счетчика команд (PCL) производится запись, то в пять старших

разрядов счетчика команд <12:8> загружается содержимое пяти разрядов <4: 0> регистра PCLATH.

При выполнении команды CALL или при выполнении прерывания весь 13-битный счетчик команд помещается в стек. При выполнении процедуры возврата из подпрограммы (команды RETLW, RETFIE или RETURN) содержимое счетчика команд восстанавливается из стека. Регистр PCLATCH при операциях со стеком не изменяется.

Третий и четвертый разряды регистра PCLATCH используются для обращения к страницам 1, 2 и 3 программной памяти. Так, например, если необходимо перейти с нулевой страницы на первую, то нужно записать в третий разряд регистра PCLATCH единицу. При этом переключение происходит не сразу, а по команде CALL или по команде безусловного перехода.

BCF PCLATCH, 3

GOTO PACE1_METKA

Стек.

Стек – это память, в которую загружается содержимое счетчика команд при вызове/ возврате из подпрограмм или по прерыванию. Микроконтроллеры среднего уровня имеют восьмиуровневый аппаратный стек шириной 13 бит. Область стека не принадлежит ни к программной области, ни к области данных, а указатель стека пользователю недоступен.

Стек работает как циклический буфер. Следовательно, после того как стек был загружен 8 раз, девятая загрузка перепишет значение первой. Десятая загрузка перепишет вторую и т.д. Если стек был выгружен 9 раз, счетчик команд становится таким же, как после первой выгрузки.

Запись в стек производится по команде CALL “NAME” или по запросам прерывания (если они разрешены):

(PC) → ((SP)) (SP) + 1→ (SP)

Возврат обратно происходит по команде:

  1. возврата из подпрограммы:

RETURN ((SP)) → (PC)

  1. возврата из подпрограммы c загрузкой константы в W:

RETLW L ((SP)) → (PC) L → (W)

  1. возврата из прерывания:

RETFIE ((SP)) → (PC) 1 → GIE

(разрешение прерывания)

Организация памяти данных.

1) В связи с малой разрядностью командного слова, память данных разбита на банки. Число банков у микроконтроллеров среднего уровня может быть два или четыре, а у микроконтроллеров верхнего уровня их шестнадцать.

2) Существует два способа адресации:

  • прямая адресация;

  • косвенная адресация.

Прямая адресация.

При прямой адресации адрес ячейки памяти указывается в команде. Номер банка определяется содержимым RP1 и RP0 <6:5> регистра состояния. Память данных разделена на четыре банка. Каждый банк содержит по 128 ячеек. Номер ячейки в банке определяется семью младшими разрядами адреса. Таким образом, когда производится прямая 9-битная адресация, младшие 7 бит берутся как прямой адрес из кода операции, а два бита указателя страниц (RP1, RP0) из регистра статуса (03h).

Одним из недостатков РIC – контроллеров является необходимость указания в них: к какому банку мы обращаемся, так как в этом случае нужно иметь перед собой карту памяти, определяющую где какие регистры находятся (особенно управляющие).

Например, при переходе из 0 в 1 банк нужно установить бит в пятом разряде регистра STATUS:

BCF STATUS, 5

В последние 3-4 года появилась ещё одна директива:

BANKSEL имя регистра

Косвенная адресация.

Существует специальный регистр косвенной адресации FSR. В нём семь младших разрядов <6:0> указывают номер ячейки в банке. Номер банка определяется содержимым старшего разряда регистра STATUS <7> и старшего разряда регистра FSR <7>. Таким образом, при косвенной адресации необходимый 9 – битный адрес формируется объединением содержимого 8 – битного FSR регистра и бита IRP из регистра статуса.

Признаком косвенной адресации является обращение к регистру INDF. Любая команда, которая использует INDF (адрес 00h) в качестве регистра фактически обращается к указателю, который хранится в FSR (адрес 04h). Чтение косвенным образом самого регистра INDF даст результат 00h.

Пример: пусть мы находимся в нулевом банке и нам необходимо:

((FSR)) +1 → ((FSR))

Тогда: MOVLW .10 ; запись десятичного числа в W

MOVWF FSR ; пересылка из W в регистр FSR

INCF INDF, F ; инкремент регистра и запись в тот же регистр



Два варианта распределения памяти у четырёх – банковых

микроконтроллеров среднего уровня.



1.) На примере: PIC16F873.





Регистры общего назначения (POH) 0 и 2 банка, а также POH 1 и 3 банка имеют прямое отображение друг на друга (дублируются), то есть, несмотря на то, что у них разные адреса физически они одни и те же.

Исходя из этого, POH занимает: 96 * 2 = 192 байта.

2.) На примере: PIC16F877.

Банк 3

16 ячеек доступа (POH) 0, 1, 2 и 3 банков зеркально отображаются друг на друга, то есть к ним можно обращаться без обращения к банкам.

Исходя из этого, POH занимает: (80 * 4) + (3 * 16) = 368 байта, а

PCH занимает: 512 - 368 = 144 байта.

Система запуска (сброса).

Она должна обеспечивать:

1) задержку на время нарастания питающего напряжения до номинальной величины.

2) задержку на время разгона тактового генератора, то есть до тех пор, пока его амплитуда и частота не будет требуемой заданной величины.

3) запись в счетчик команд нулевого значения. После этого микроконтроллер должен начать работать, то есть из нулевой ячейки адреса команд микроконтроллер должен достать команду, дешифроваться и т.д.

Это происходит следующим образом:

После того, как подано напряжение питания, оно должно нарастать.

После того, как напряжение питания пересекло уровень 1,5 Вольт, таймер запуска начинает счет выдержки времени. По истечении выдержки около 72 – 96 мс считается, что напряжение достигло номинала и запускается другой таймер выдержки на стабилизацию кварцевого генератора. Программируемый бит конфигурации позволяет разрешать или запрещать выдержку от встроенного таймера запуска. Если питание батарейное выдержка от встроенного таймера запуска не нужна. Таймер на стабилизацию генератора отчитывает 1024 импульса от начавшего работу генератора. Считается, что кварцевый генератор за это время вышел на режим. При использовании RC генераторов – выдержка на стабилизацию не производится. Затем в счетчике команд устанавливается нулевое значение и начинается работа настоящего тактового генератора.

Сброс.

Сброс можно осуществить подачей на специальный вход MCLR отрицательного импульса.

Также сброс может происходить от сторожевого таймера.



Сторожевой таймер (Watch Dog).

Сторожевой таймер – это устройство, предназначенное для двух целей:

  • для выхода из порочного круга (зависания);

  • для выхода из спящего режима.

Сторожевой таймер работает от полностью автономного внутреннего RC-генератора. Это позволяет сторожевому таймеру продолжать работать в режиме SLEEP, когда внутренний тактовый генератор процессора остановлен, и периодически выводить контроллер в нормальный режим.

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

Номинальный период срабатывания сторожевого таймера составляет 18 миллисекунд.

Для реализации больших задержек необходим предделитель. Он может иметь такие коэффициенты деления: 1 : 1; 1 : 2; 1 : 4; ... 1 : 128.

Применяя предделитель с коэффициентом деления до 1:128 можно реализовать интервал величиной до 2,3 сек, который зависит от температуры и напряжения питания. В исключительных ситуациях, когда присутствует минимально возможное питающее напряжение и высокая температура, период срабатывания сторожевого таймера с предделителем может достигать трех и более секунд.

Команда CLRWDT обнуляет сторожевой таймер и предделитель, если он подключен к WDT. Это запускает выдержку времени сначала и предотвращает на некоторое время выработку сигнала сброс. Команда SLEEP также очищает сторожевой таймер и предделитель, если он подключен к WDT, что позволяет достичь максимального пребывания в режиме SLEEP до момента пробуждения по сбросу от WDT.

Когда происходит переполнение счетчика сторожевого таймера, он генерирует либо сигнал сброса, либо сигнал сброса для выхода из режима SLEEP. Одновременно с сигналом сброса от WDT обнуляется 4 бит «TO» в регистре STATUS.

Характеристики

Тип файла
Документ
Размер
216 Kb
Материал
Тип материала
Высшее учебное заведение

Тип файла документ

Документы такого типа открываются такими программами, как Microsoft Office Word на компьютерах Windows, Apple Pages на компьютерах Mac, Open Office - бесплатная альтернатива на различных платформах, в том числе Linux. Наиболее простым и современным решением будут Google документы, так как открываются онлайн без скачивания прямо в браузере на любой платформе. Существуют российские качественные аналоги, например от Яндекса.

Будьте внимательны на мобильных устройствах, так как там используются упрощённый функционал даже в официальном приложении от Microsoft, поэтому для просмотра скачивайте PDF-версию. А если нужно редактировать файл, то используйте оригинальный файл.

Файлы такого типа обычно разбиты на страницы, а текст может быть форматированным (жирный, курсив, выбор шрифта, таблицы и т.п.), а также в него можно добавлять изображения. Формат идеально подходит для рефератов, докладов и РПЗ курсовых проектов, которые необходимо распечатать. Кстати перед печатью также сохраняйте файл в PDF, так как принтер может начудить со шрифтами.

Список файлов лекций

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