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

Дипломная работа - Компьютеры, программирование

Другие дипломы по предмету Компьютеры, программирование

писи 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>