Разработка и изготовление лабораторного блока для программирования микроконтроллеров
Дипломная работа - Компьютеры, программирование
Другие дипломы по предмету Компьютеры, программирование
писи 0 = память данных EEPROM защищена от записи
bit6 WRTB бит защиты от записи в загрузочный блок
= Загрузочный блок (000000 - 0007FFh) не защищен
= Загрузочный блок (000000 - 0007FFh) защищен
bit5 WRTC бит защиты от записи в регистр конфигурации
= регистры конфигурации (300000 - 3000FFh) не защищены от записи
= регистры конфигурации (300000 - 3000FFh) защищены от записиПримечание 1: В обычном режиме этот бит доступен только для чтения, его состояние может быть изменено только в режиме программмирования.
bit4-0 He используется, читается, как 0
Регистр конфигурации CONFI7L (младший байт регистра конфигурации 7)
bit7-4 He используется, читается, как 0
bit3 EBTR3 бит защиты блока от табличного чтения1
= Блок 3 (006000 - 007FFFh) не защищен от табличного чтения издругих блоков
= Блок 3 (006000 - 007FFFh) защищен от табличного чтения издругих блоков
Примечание 1: Не применяется в кристаллах PIC18FX455. В этом случае всегда оставляйте его сброшенным.
bit2 EBTR2 бит защиты блока от табличного чтения
= Блок 2 (004000 - 005FFFh) не защищен от табличного чтения издругих блоков
= Блок 2 (004000 - 005FFFh) защищен от табличного чтения издругих блоков
bitl EBTR1 бит защиты блока от табличного чтения
= Блок 1 (002000 - 003FFFh) не защищен от табличного чтения из другихблоков
= Блок 1 (002000 - 003FFFh) защищен от табличного чтения из другихблоков
bitO EBTR0 бит защиты блока от табличного чтения
= Блок 0 (000800 - 001 FFFh) не защищен от табличного чтения издругих блоков
= Блок 0 (000800 - 001 FFFh) защищен от табличного чтения из другихблоков
Регистр конфигурации CONFIG7H (старший байт регистра конфигурации 7)
bit7 He используется, читается, как 0
bit6 EBTRB бит защиты загрузочного блока от табличного чтения
1 = загрузочный блок (000000 - 0007FFh) не защищен от табличного чтения из других блоков.
= загрузочный блок (000000 - 0007FFh) защищен от табличного чтения из других блоков.
bit5-0 He используется, читается, как 0
Описанные далее регистры-идентификаторы используются для автоматического распознавания типа микросхемы программатором.
Регистр идентификатора DEVID1 для кристаллов PIC18F2455/2550/4455/4550
bit7-5 DEV2:DEV0 младшие биты идентификатора
=PIC18F2455
= PIC18F2550
= PIC18F4455
= PIC18F4550
bit4-0 REV4 - REV0 биты версии (ревизии) микросхемы
Эти биты содержат номер технологической версии (ревизии) кристалла
Регистр идентификатора DEVID2 для кристаллов PIC18F2455/2550/4455/4550
bit7-0 DEV10:DEV3 старшие биты идентификатора
Эти биты используются совместно с битами DEV2:DEV0 регистра DEVID1 для идентификации номера микросхемы.
В данном случае: 0001 0010 = PIC18F2455/2550/4455/4550
Внимание! Эти значения DEV10:DEV3 могут совпадать с идентификаторами других микроконтроллеров Microchip. Для однозначного определения типа микросхемы необходимо использовать полный идентификатор DEV10:DEV0, составленный из содержимого двух регистров.
лабораторный программирование бутлоадер микроконтроллер
Глава 2. Разработка и изготовление лабораторного блока для программирования микроконтроллеров
.1 Разработка блок схемы устройства
Программатор был создан на базе микроконтроллера PIC18F2550. Для его программирования и проверки работоспособности в программаторе находятся следующие элементы и модули:
- программатор с COM-портом, который служит для программирования микроконтроллера от ПК в режиме HVP;
программатор с USB портом, который служит для программирования микроконтроллера от ПК;
блок кнопок для перехода в режим программирования и обратно;
блок питания для автономной работы;
светодиод для индексации режимов питания;
светодиод для тестирования;
переключатель режимов питания USB - 9В.
Рис 4. Блок схема программатора
2.2 Проектирование принципиальной электрической схемы
При разработке электрической схемы программатора для микроконтроллера PIC18F2550 ,было решено совместить высоковольтный программатор (HVP) и низковольтный (LVP).
HVP - (Hard Voltage Programming) высоковольтное программирование.
LVP - (Low Voltage Programming) низковольтное программирование.
Это пришлось сделать по ряду причин:
)Посредством HVP в микроконтроллер вносится небольшая программка, БУТЛОАДЕР - интерфейс к персональному компьютеру, находящийся внутри микропроцессора, который позволяет программировать микроконтроллер через USB порт, а так же позволяющий стирать и программировать основную программу, не затрагивая сам бутлоадер.
2)Если бутлоадер был запрограммирован на LVP программаторе, то порт RB7 к которому подсоединяется кнопка BOOT, работать как программируемый порт не будет (на этом выводе постоянно будет логическая единица). Эту проблему можно решить путем программирования на HVP программаторе.
3)Программировать, стирать и считывать основную программу через USB возможно только через LVP программатор.
Важным моментом в программировании является то, что бутлоадер программируется через HVP программатор лишь один раз. Далее микроконтроллер с бутлоадером, находящимся внутри микроконтроллера можно использовать для сборки каких либо устройств работающих посредством USB порта. Так же надо отметить, что при желании можно сменить бутлоадер и это можно сделать при помощи HVP программатора.
Принципиальная электрическая схема автомата, разработанная нами представлена на рисунке 5, и в приложении 1. Также в приложении 4 приведена спецификация радиоэлементов, использованных в программаторе.
Рис 5. ?/p>