Популярные услуги

КМ-6. Динамические массивы. Семинар - выполню любой вариант!
КМ-2. Разработка простейших консольных программ с использованием ООП + КМ-4. Более сложные элементы ООП - под ключ!
Оба семинара по программированию под ключ! КМ-2. Разработка циклических алгоритмов + КМ-3. Функции и многофайловые программы в Си
Одно любое задание в mYsql
Любая задача на C/C++
Сделаю ваше задание: Лабораторная работа на Pascal / Lazarus
Любой тест по базам данных максимально быстро на хорошую оценку - или верну деньги!
Любой реферат по объектно-ориентированному программированию (ООП)
Повышение уникальности твоей работе
Любой реферат по информатике

Работа с памятью PIC16FXXX

2021-03-09СтудИзба

РАБОТА С ПАМЯТЬЮ РIС16FХХХ

Память делится на:

- память программ;

- flash-память;

- оперативная память.

Доступ к функциям записи/чтения ЕЕРRОМ памяти данных и FLASH памяти программ выполняется через шесть регистров специального назначения:

- ЕЕDАТА;

- ЕЕDАТН;

- ЕЕАDR;

Рекомендуемые материалы

- ЕЕАDRН;

- ЕЕСОN1;

- ЕЕСОN2.

Операции чтения/записи ЕЕРRОМ памяти данных не приостанавливают выполнение программы. В регистре ЕЕАDR сохраняется адрес ячейки ЕЕРRОМ памяти данных. Данные сохраняются/читаются из регистра ЕЕDАТА. В микроконтроллерах РIС16F873/874 объем ЕЕРRОМ памяти 128 байт. Старший бит адреса в регистре ЕЕАDR всегда должен равняться нулю, потому что не поддерживается циклическая адресация (т.е. ячейка с адресом 0х80 не отображается на 0х00). В РIС16F876/877 объем ЕЕРRОМ памяти данных 256 байт (используются все 8-разрядов регистра ЕЕАDR).

Чтение FLASH памяти программ не влияет на выполнение программы, а во время операции записи выполнение программы приостановлено. В спаренных регистрах ЕЕАDRН:ЕЕАDR сохраняется 13-разрядный адрес ячейки памяти программ, к которой необходимо сделать обращение. Спаренные регистры ЕЕАDRН:ЕЕАDR содержат 14-разрядные данные для записи или отображают значение из памяти программ при чтении. Также как для ЕЕРRОМ памяти данных, в регистры ЕЕАDRН:ЕЕАDR должен быть загружен адрес физически реализованной памяти программ, потому что циклическая адресация не поддерживается.

При работе с памятью не выполняется проверка на правильность и качество записи. Если попадается некорректное значение адреса или данных, то выполняется NОР.

ЕЕРRОМ рассчитана на 100 000 циклов чтения/записи, а flash-память на 10000 циклов.

Чтение из ЕЕРRОМ-памяти

1. Записать адрес в регистр ЕЕАDR. Проверить, что записанный адрес корректен для данного типа микроконтроллера.

2. Сбросить в '0' бит ЕЕРGD для обращения к ЕЕРRОМ памяти данных.

3. Инициализировать операцию чтения установкой бита RD в ‘1’.

4. Прочитать данные из регистра ЕЕDАТА.

Пример: Чтение из ЕЕРRОМ памяти данных

BSF        STATUS.RP1             ;

BCF        STATUS.RPO             ; Выбрать банк 2

MOVF       ADDR.W                 ; Записать адрес

MOVWF      EEADR                  ; ячейки

BSF        STATUS.RFO             ; Выбрать банк 3

BCF        EECON1.EEPGD           ; Выбрать EEPROM память

BSF        EECON1.RD              ; Инициализировать чтения

BCF        STATUS.RPO             ; Выбрать банк 2

MOVF       EEDATA.W               ; W = EEDATA

Запись ЕЕРRОМ данных

1. Если шаг 10 не был выполнен, то необходимо проверить, что не происходит запись (WR=0).

2. Записать адрес в регистр ЕЕАDR. Проверьте, что записанный адрес корректен для данного типа микроконтроллера.

3. Записать 8-разрядное значение в регистр ЕЕDАТА.

4. Сбросить в '0' бит ЕЕРGD для обращения к ЕЕРRОМ памяти данных.

5. Установить бит WREN в ‘1’, разрешив запись в ЕЕРRОМ память.

6. Запретить прерывания, если они разрешены.

7. Выполнить обязательную последовательность из пяти команд:

- Запись значения 55h в регистр ЕЕСОN2 (две команды, сначала в W затем в ЕЕССЖ2):

- Запись значения ААh в регистр ЕЕСОN2 (две команды, сначала в W затем в ЕЕСON2);

- Установить бит WR в ‘1’.

8. Разрешить прерывания (если необходимо).

9. Сбросить бит WREN в ‘0’.

10. После завершения цикла записи сбрасывается в '0' бит WR, устанавливается в ‘1’ флаг прерывания ЕЕIF (сбрасывается программно). Если шаг 1 не выполняется, то необходимо проверить состояние битов ЕЕIF, WR перед началом записи.

Пример: Запись в ЕЕРRОМ память данных

BSF        STATUS,RP1          ;

BCF        STATU,RPO           ; Выбрать банк 3

BTFSC      EECON1,WR           ; Проверить завершения

GOTO       $-1                 ; операции записи

BCF        STATUS, RPO         ; Выбрать банк 2

MOVF       ADDR,W              ; Указать адрес ячейки

MOVWF      EEADR               ;

MOVWF      EEDATA              ;

BSF        STATUS,RFO          ; Выбрать банк 3

BCF        EECON1,EEPGD        ; Выбрать EEPROM память данных

BSF        EECON1,WREN         ; Разрешить запись в EEPROM память данных

BСF        INTCON,GIE          ; Запретить прерывания

MOVLW      0x55                ; Записать 55h в регистр ЕЕСОN2

Лекция "2 - Второе начало термодинамики" также может быть Вам полезна.

MOVWF      EECON2              ;

MOVLW      OxAA                ; Записать ААh в регистр ЕЕСОN2

MOVWF      EECON2              ;

BSF        EECON1.WR           ; Инициализировать запись

BSF        INTCON, GIE         ; Разрешить прерывания

BCF        EECON1.WREN         ; Выбрать банк 2


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