October 16 2017 22:57:21
Навигация
Авторизация
Логин

Пароль



Вы не зарегистрированы?
Нажмите здесь для регистрации .

Забыли пароль?
Запросите новый здесь.
приложения высокого напряжения
МИКРОКОНТРОЛЛЕРЫ СЕМЕЙСТВА НС08

В процессе программирования время приложения высокого напряжения должно быть, с одной стороны, достаточным для надежной записи единиц в соответствующие разряды ячеек памяти, а с другой - не слишком большим, чтобы не произошло записи единиц в те разряды, которые программированию на данном этапе не подлежат. Кроме того, многократное приложение высокого напряжения в процессе программирования к одному и тому же блоку недопустимо по причине возникновения необратимых изменений структуры FLASH-ПЗУ, следствием которых является потеря свойства программируемости. Поэтому в процессе программирования блока (а не страницы!) допускается выполнение операции программирования страницы не более восьми раз. Далее обязательно должна последовать операция стирания блока. Причем не имеет значения, какие именно страницы блока подвергли программированию. Ситуации, когда последовательно программировали все 8 страниц блока и когда одну страницу "допрограммировали" 8 раз, эквивалентны с точки зрения рассматриваемого ограничения.

Для записи информации в ячейки FLASH-ПЗУ первого поколения разработан специальный алгоритм бережного программирования порциями. Сущность алгоритма заключается в том, что высокое напряжение программирования прикладывается к одной странице на короткое время, после чего считывают информацию из всех 8 ячеек памяти страницы. Если значение каждого байта совпадет с тем, которое необходимо записать, то процесс программирования прекращается. Если же при контрольном считывании на месте некоторых единиц оказались нули, то выполняется следующий цикл (порция) программирования без предварительного стирания страницы. Режим контрольного считывания отличается от режима простого считывания временными и электрическими параметрами. Во время контрольного чтения схема управления удерживает соответствующие внутренние сигналы CS (Chip Select) под малым отрицательным напряжением, а длительность цикла чтения увеличивается в 8 раз. Если при таком режиме считываются единицы на желаемых позициях, то гарантируется надежное сохранение запрограммированных данных в течение 10 лет. Режим контрольного считывания допускается использовать только после режима программирования.

Операцию программирования каждой страницы FLASH-памяти следует производить в соответствии с приведенным ниже алгоритмом программирования:

1. Отключите стабилизатор повышающего преобразователя напряжения, если величина напряжения питания МК менее 3.6 В. Выполняется посредством установки в 1 бита PWPSGVLVEN регистра конфигурации CONFIG2 (только для HC908GP20).

2. Проверьте состояние регистра защиты FLASH-ПЗУ. Убедитесь, что тот блок, который подлежит программированию, находится в незащищенном режиме.

3. Установите обязательно одной командой значения следующих битов в регистре управления FLASH-ПЗУ:

  1. Биты FDIV1:FDIV0 в соответствие с необходимым коэффициентом деления повышающего преобразователя напряжения.

  2. Бит РGМ=1.

4. Прочитайте регистр защиты FLASH-ПЗУ. В процессе выполнения операции чтения содержимое регистра будет автоматически скопировано в регистр-защелку схемы управления модулем FLASH-ПЗУ.

5. Произведите запись массива из 8 байтов программируемых данных в ячейки памяти с действительными адресами ячеек выбранной страницы памяти. В процессе выполнения операции записи данные массива из 8 байтов копируются в буфер схемы управления модулем FLASH-ПЗУ.

6. Установите в 1 бит HVEN регистра управления FLASH-ПЗУ. Этот бит разрешает работу повышающего преобразователя напряжения, и высокое напряжение программирования прикладывается к ячейкам выбранной страницы памяти.

7. Программная задержка

t=tPROG=1.2 мс

8. Произведите сброс бита HVEN.

9. Программная задержка

t=thvtv=50 мс.

10. Установите в 1 бит MARGIN регистра управления FLASH-ПЗУ. Этот бит разрешает режим контрольного считывания памяти.

11. Программная задержка

t=tVTP=150 мкс.

12. Очистите бит PGM.

13. Программная задержка

t=tHVD=50 мкс.

14. Произведите контроль выполнения операции программирования. Для этого прочтите в режиме контрольного считывания каждый байт страницы и сравните его значение с эталонным, которое должно быть запрограммировано.

15. Очистите бит MARGIN.

Если операция программирования страницы завершилась удачно, перейдите к программированию следующей страницы. Если в процессе контрольного считывания выявлено несовпадение эталонного и записанного массивов, то повторите алгоритм начиная с разд. 3 (Рис. 3.36). Допускается повторять операцию допрограммирования страницы не более 30 раз. Модуль FLASH08/1 перейдет в режим считывания по истечении tRECOVERY=500 циклов чтения после завершения режима контрольного чтения.

Комментарии
Нет комментариев.
Добавить комментарий
Пожалуйста, залогиньтесь для добавления комментария.
Рейтинги
Рейтинг доступен только для пользователей.

Пожалуйста, авторизуйтесьили зарегистрируйтесь для голосования.

Нет данных для оценки.

Время загрузки: 0.05 секунд 2,254,087 уникальных посетителей