Смекни!
smekni.com

Разработка программатора микросхем ПЗУ (стр. 17 из 18)

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

Замечания:

- Для качественного программирования ПЗУ не пожалейте блокировочных конденсаторов на все питания.

- !!! Рекомендуем настройку начинать с выключенным высоким напряжением +27v, т.к. возможные замыкания или некоторые неисправные элементы могут повлечь выгорание других элементов. !!! Опцию Bus translate в таких тестах как "Пила" и т.д. можно продолжительно использовать только с радиатором на транзисторе VT33(E1).

- У разных программаторов из-за разброса параметров элементной базы напряжения Е1-Е4 могут несколько отличаться. В Uniprog Plus осуществляется коррекция этих напряжений посредством программы test.bat (раздел "Юстировка напряжений E1-E4").

Замечания.

К плате Uniprog

- В Setup-е IBM PC желательно переключить тип LPT - порта из Normal(SPP) в ECP/EPP.

- В кабеле, соединяющем PC и UniProg, необходимо сигнальные шины чередовать с землей. Т.е. расположение сигналов на плоском кабеле должно быть: сигнал1-земля, сигнал2-земля, и т.д.

- На монтажной схеме 555 ЛА13 и 555 ЛН3 суть микросхемы 155 ЛА13 и 155 ЛН3.

- D2 (на схеме 555КП11) надо использовать более мощных серий - 531 или 155.

К модулю PIC

Программирование PIC последовательного типа (т.е. для всех серий, кроме PIC1652-58) осуществляется при помощи пяти проводов (например, на разъеме Х2):

Программатор —> PIC16x(12x,14000)

PA8 CLOCK

PD0 DATA

E4 MCLR

E2 Vcc (Питание)

GND GND (Земля) - это сигналы Пика могут быть на разных ножках (например, для pic16f84 CLOCK(RB6) - 12, DATA(RB7) - 13, MCLR - 4, Vcc(Vdd) - 14, GND(Vss) - 5).

Сигналы с программатора см. по схеме (так на внешнем разъеме Х2 для версии 1.x и 2.x PA8 - А18, PD0 - А4, E4 - В9, E2 - В12, GND - А10,В10)

Программирование параллельного типа (т.е. для серии PIC1652-58) осуществляется при помощи семнадцати проводов:

Программатор —> PIC16x52-58

PA8 INCPC (OSC1)

PA9 PROG/VER (T0CKI)

PD0-7 D4-D11 (RB0-RB7)

PA0-3 D0-D3 (RA0-RA3)

E4 MCLR

E2 Vcc (Питание)

GND GND (Земля)

Распределение памяти для модуля PIC в бинарном виде представлено в следующем виде:

с нулевого адреса - память программ, далее - память данных(если она есть) в словном размере и в конце восемь слов: первые четыре - ID, далее 5,6,7-е зарезервированные слова(в 7-м слове в новых микросхемах содержится идентификационный код) и, наконец последнее слово - конфигурационное. Т.е. :

0 - size_addr-1 - память программ;

size_addr - size_data-1 - памятьданных;

size_data - size_data+3 - ID;

NNN_data+4 - резерв;

NNN_data+5 - резерв;

NNN_data+6 - резерв или идентификационный код микросхемы;

NNN_data+7 - конфигурационное слово;

Биты слов, выходящие за пределы разрядности соответствующей памяти, игнорируются.

Можно также пользоваться .hex(или другими текстовыми форматами) файлами или конвертировать их в бинарный вид (cм. конверторы, пункт Source на стр. 6).

Более подробную информацию можно получить в контекстной справке по клавише 'F1' в модуле PIC.

К модулю FLASH

Микросхемы, имеющие более 32 выводов, можно программировать через внешний разъем Х2:

Программатор —> FLASH

E2 Vcc (Питание)

E3 Reset

E4 Vpp

PA16 CE

PA17 OE

PA18 WE

PA0 - PA15 A0 - A15

PD0 - PD7 D0 - D7

GND GND (Земля)

Если имеется сигнал BYTE, то он должен быть замкнут но 0, чтобы обеспечить байтовую шину данных.

Адрес РА19 зарезервирован для внешнего регистра, расширяещего адресное пространство до 24 (и более), т.е. дополнительные A16-A23 а также A-1. В ближайшее время ПО будет поддерживать этот регистр (поэтому пока можно программировать эти ПЗУ блоками по 64к).

К модулю ПОСЛЕДОВАТЕЛЬНЫХ ПЗУ и AVR.

Последовательные ПЗУ в основном имеют не более 8 выводов, назовем их P1-P8, поэтому для программирования было решено использовать шину данных PD0-PD7. Т.е. к соответствующему выводу микросхемы P (DIP - корпуса) подключается соответствующий сигнал PD (PD0->P1, PD1->P2, ..., PD(x-1)->Px) ). При этом на тот вывод где земля (GND) подается логический 0, а где питание 1, напряжение Е1 выставляется на "напряжение питания" + 0.5v (с поправкой на падение на транзисторах). Дополнительно на Е2 выставляется точное напряжение питания, чтобы можно было непосредственно подключить его на P=Vcc (обычно вывод P8). А также на один (или несколько) из адресов шины PA0-PA7 соответствующему P=GND, подается логическая 1 для возможности подключить "землю" через полевой N-канальный транзистор (т.е. PA(x-1)->транзистор->Px=GND) следующим образом:

Px

например IRF7303

PA(x-1)

GND

Такое подключение земли более корректно, чем через PDx (где логический ТТЛ уровень 0), но никто не мешает непосредственно заземлить соответствующий вывод GND микросхемы.

Для подключения последовательных ПЗУ планируется выпустить переходную панель с распиновкой:

Программатор ---> ПЗУ

PD0 -PD7 P1-P8

E2 через полевой P-транзистор P8 (управления пока нет)

PA2 -PA4 через полевой N-транзистор P3-P5

Приведем примеры подключения СТАНДАРТНЫХ микросхем следующих серий:

Подключение серии IIC(24xx)

PA3 через полевой N-транзистор или GND

PD0 PD1 PD2 | PD4 PD5 PD6 E2 или PD7

A0 A1 A2 GND SDA SCL WP Vcc

Подключение серии MicroWire(59xx)

PA4 через полевой N-транзистор или GND

PD0 PD1 PD2 PD3 | PD5 PD6 E2 или PD7

CS CLK DI DO GND ORG RDY Vcc

Подключение серии MicroWire(93xx)

PA4 через полевой N-транзистор или GND

PD0 PD1 PD2 PD3 | PD5 PD6 E2 или PD7

CS CLK DI DO GND ORG WP Vcc

Подключение серии SPI(25xx)

PA3 через полевой N-транзистор или непосредственно GND

PD0 PD1 PD2 | PD4 PD5 PD6 E2 или PD7

CS DO WP GND DI CLK HOLD Vcc

Подключение DataFlash At45xx:

PA3 через полевой N-транзистор или GND

PD0 PD1 PD2 | PD4 PD5 PD6 E2 или PD7

CS CLK DI GND DO RESET WP Vcc

Микроконтроллеры AVR подключаются аналогично. Распиновку установили в соответствии с 8-ножечным корпусом типа Atiny10(11,12) или AT90S2323(2343), а именно:

PA3 через полевой N-транзистор или GND

PD0 PD1 PD2 | PD4 PD5 PD6 E2 или PD7

RESET XTAL1 NC GND DI DO CLK Vcc

|_нет контакта

Для RESET можно также использовать Е3, а для Vcc - Е4. На выводы XTAL1 и XTAL2 микросхемы необходимо подать сигналы с кварца по стандартной схеме (см. докуметацию на соответсвующую микросхему) или кварцевого генератора на вывод XTAL1 (кварц должен быть рядом с чипом). Можно также програмно сэмулировать эту частоту с помощью PD1, при этом указать это в опциях "Эмуляция XTAL". Заметим, что время чтения микросхемы значительно увеличится.

Старые версии.

Общие к платам Uniprog версий £2.00 и programmator 2.50-3.00:

1. Для устойчивой работы желательно для всех остальных:

• Подтянуть сигналы - ADWR, IOWR, XI4 на +5v через резистор ~1.2 kOm. Замкнуть XI7(15в D2) на землю непосредственно на плате UniProg-а. Дополнительно ADWR соединяем с землей через конденсатор ~100pF.

• 1в D1 соединить с +5v, не повредив сигнал IORD.

• Непосредственно на плате UniProg-а соединить 1в D29(555ИР23) c землей, а для версии 2.00 и 15в D2(555КП11) тоже заземлить.

• В кабеле, соединяющем PC и UniProg, необходимо сигнальные шины чередовать с землей

2. Обратите внимание, что при работе с некоторыми RT-шками (т.к 556rt7a, 556rt18) источник питания Е4 должен обладать быстрой обратной связью (дело в том, что потребление этих RT при считывании 0 и 1 разное, что вызывает скачки напряжения в медленных схемах усилителя). Поэтому транзисторы VT36, VT32 и VT40 должны быть с граничными частотами >= 20 МГц, например КТ805(А) (КТ819 - не подходит!), КТ972 (КТ815 - не подходит!) и КТ973 (КТ814 - не подходит!) соответственно. Это замечание также актуально для некоторых микросхем 27хх - серии, в случае если их питанием является напряжение E2 .

3. Для программирования Protect (полная защита), Code programming (шифровальной таблицы) и ERASE (стирание для AT89c5x) необходимо к выводам WR(16) и RD(17) панельки DP11 подсоединить соответственно сигналы PA18 и PA19. Кроме того, необходимо уменьшить емкость конденсаторов C5 и C6 (C13, C14 в Programmator’е v2.50) до 20-30pf.

Для микросхем i87C5x/51Fx/51Rx/51GB, i87C51SL и вообще с FX-Core необходимо к выводу P3.3(13) панельки DP11 подсоединить сигнал PA17. Кроме того, для 32Kb-ных микросхем фирмы Intel и для At89C55 необходимо к выводу P3.4(14) и P3.0(10) панельки DP11 подсоединить сигнал PA16.

4. При программировании "хорошо" потребляющих микросхем (типа 1556хх) транзисторы VT33–VT36 объединить единой пластиной теплоотвода.

5. Вместо резисторных матриц RDIР допускается запаивать по 8 резисторов R=2К.

Для UniРrog версии 1.00:

1. Поменять местами проводники, идущие на 15 и 16 выводы панельки DР8 (2716 – 512).

2. На шину +27V напаять керамический конденсатор емкостью не менее 1 мкФ.

3. При подключении к IBM не впаивайте резистор R58 и замкните перемычки J1 и J2.

Для UniРrog версии 1.1:

1. При подключении к IBM разомкните перемычки J1 и J2 и замкните J1 и J3.

2. При подключении к Sinсlair - совместимому компьютеру убедитесь, что у вас правильно настроен сигнал маскируемых прерываний процессора – он должен иметь длительность 8-10 мкс. В противном случае у микросхем, критичных к параметрам программирования (1556ХЛ8, 556РТ1 и т.д.), процент брака повышается до 50% и более.

Для UniРrog версии 1.2:

1. D3 (555TM9) на плате не устанавливается.

2. R4, R7 и R9 – по 2К, а R5, R6 и R8 – по 1К (сборки).

3. VD42 – КД522.

4. С7 и С9 расположены рядом с разъемом Х3.

5. VD41 расположен рядом с R8.

6. Разъемы Х1 и Х4 совмещены в один SNP 64, для питания предназначен только Х3.

7. Для тех, кто все еще подключает программатор к Sinclair-у, на разъем Х1 подать следующие сигналы от Sinclair-а: Д0–Д7 — на В12–В5; А8, А9, RD, IORQ, A1, M1 на В13, А13, В14, А14, В15, А18 соответственно. И замкнуть перемычки J6–J7, J8–J9, J10–J11, J12–J13.