Jump to content

Willem EPROM Programmer...


Recommended Posts

Модифицированный вариант pcb3b

This is the hidden content, please

изменена схема формирования Vpp и добавлены резисторы, рекомендованные разработчиками софта.

Импульсный преобразователь с микросхемой 34063 заменен на LM 7812 (как в оригинале Willem 3,1).

Добавлены джамперы переключения между версиями pcb3b и pcb35.

Функционально полный аналог pcb3b/35.

Изменена печатная плата в части стабилизаторов Vpp и Vcc.

Перемычка для i28001 и две линии D04, D05 напаяны проводом с обратной стороны платы,

два диода и резистор (D8, D9, R21) так же паять с обратной стороны.

Диод D3 служит для предотвращения попадания потенциала 3-5 v от LPT

в цепь питания программируемой МС при выключенном питании,

в этом варианте можно заменить перемычкой.

В монтаже и наладке сложнее, чем v3.1s, более высокая плотность компоновки и много перемычек

(как и у прототипа, 76 перемычек и 3 провода), но работать с ним удобнее.

Расчистка дефектов печатной платы и монтаж заняли около 10 часов. После сборки программатор заработал сразу.

Проверил работу на МС: W29C020 - ok SST49LF002A - ok W49V002FAP-w/r/er ok,

ID nok (вместо ID читает первые адреса области данных, хотя алгоритм чтения ID точно такой же,

как у SST49LFxxx) AT49F002NT - ok i28F001BXT - ok 24C08 - ok MX29F002NT – nok

(На другом программаторе пишется нормально)

Проверял эти же микросхемы с ПО версий 097g, 097ja, 098d2 - результат тот же.

Для контроля проделал то же на программаторе pcb3,1s

- все повторяется один в один. С ПО версии 0,98D5 программатор не работает.

Стирание проходит нормально, Hardware test нормально, запись и чтение – ошибка.

По некоторым признакам сбоит схема считывания (4014).

На рисунке осциллограммы тактовой частоты на выводе 10 МС 4014. 

This is the hidden content, please

 

При работе с ПО 0,97ja и 0,98D2 на экране четко видны пакеты из 8-и импульсов тактовой частоты

с интервалом примерно 100 мкс, длительность импульсов примерно 5 мкс,

более точно мой антикварный осциллограф не показывает.

При работе с ПО 0,98D5 в пакете отсутствуют 2-й и 6-й импульсы,

естественно считывание происходит не полностью и на выходе мусор.

Исходя из этого можно предположить следующие причины (в порядке возрастания вероятности):

1. Быстродействие схемы видимо не при чем, но чтобы окончательно убедиться в этом,

нужно собрать программатор на скоростной серии 74HCxxx.

Это потребует некоторых изменений в схеме и полной переделки разводки.

2. В схеме программатора pcb4,5, для которого разработана эта версия ПО,

есть изменения, не влияющие на работу с другими версиями.

Например, тактовые импульсы подаются на вход 10 МС 4014 от двух линий LPT через диодную развязку (схема "ИЛИ").

Прецедент уже был - в pcb3,5 изменена схема установки адреса. 3. EPROM51.exe v0,98D5 содержит ошибки.

Чтобы окончательно выяснить это нужно еще несколько экспериментов со схемой,

возможно потребуется собрать новый программатор ну и конечно пораскинуть мозгами. Support CHIPS

 

(EPROM,EEPROM,FLASH,I2C,PIC,MCS-51,AVR, 93Cxx, ISP)

EPROM 27C64 , 27C128 , 27C256 , 27C512 , 27C010 , 27C020 ,27C040 , 27C1001 M27C1001 , M27C2001 , M27C4001, 27C080 (A19) , M27C801 , M87C257 2716(Vpp25V) , 2732 , (adapter DIP24), 2764 , 27128 , 27256 , 27512 , 27010, Vpp12.5V (21Vpp Modify Circuit)

EEPROM 28C65 , 28C64 , 28C128 , 28C256 , 28C512 , 28C010 , 28C020 , 28C040 M28C16A/17A (DIP28) (Adapter or Jumper) 28C16,XLS2816 (DIP24)

FLASH Memory 28F64 , 28F128 , 28F256 , 28F512 , 28F010 , 28F020, MX26C1000 , MX26C2000 , MX28F1000 , MX28F2000 Am28F256A , Am28F512A , Am28F010A , Am28F020A (New command erase/prog.) -- intel --- i28F001BX , 28F004 , 28F008 , 28F016 FLASH Memory 29F64 , 29F128 , 29F256 , 29F512 , 29F010 , 29F020 , 29F040 , 29F080 29F001 , 29F002 , 29F004 , 29F008 , 29F016 , 29F032 , V29C51002T , 29LV040 Serial (I2C) EEPROM 24Cxx 24C02 , 24C04 , 24C08 , 24C16 , 85C72 , 85C82 , 85C92 --- page write ---- 24C32 , 24C64 , 24C128 , 24C256 , 24C512 Microwire EEPROM (pin 6 ->ORG. [schematic connect to GND]) 93C06 , 93C46 , 93LC46 , 93C56 , 93C57, 93C66 , 93C76 , 93C86 (8bit) , AT59C11 , AT59C22 , AT59C13 CAT35C102 , CAT35C104 , CAT35C108 (pullup pin7) (pin 6 ->NC [No Connect]) 93C06A , 93C46X , 93C56 , 93C66 , 93C76 , 93C86 (NS) Microchip PIC 16C84 , 16F84 ,16F84A , 16F627/16F628 12C508/A , 12C509/A , 12CE518 , 12CE519 , 16C505 16C620 , 16C621 , 16C622 , 16CE623 , 16CE624 , 16CE625 , 16C710/711 ---ICSP connector---- 16F870 , 16F871 , 16F872 , 16F873 , 16F874 , 16F876 , 16F877 PIC16F873A , PIC16F874A , PIC16F876A , PIC16F877A -Add PIC microchip 14bit PIC12F629 , PIC12F675 , PIC16F630 , PIC16F676 , PIC12F635 , PIC12F683 , PIC16F636 , PIC16F684 , PIC16F688 PIC16F72/73/74/76/77 , PIC16F737/747/767/777 , PIC16F87/88 , rfPIC12F675x , PIC16F785/PS200 , PIC16F716 -Add microchip 14bit,12bit OTP PIC12C671 , PIC12C672 , PIC12CE673 , PIC12CE674 PIC16C61/71 , PIC16C62/64/65/73 , PIC16C62A/62B/62C/63/63A/64A/65A/65B/66/67 PIC16C72/72A/73A/74A/74B/76/77 , PIC16C620/620A/621/621A/622/622A PIC16CE/623/624/625 , PIC16C710/711/712/716 , PIC16C773/774 , PIC16C745/765/923/924 , PIC16C925/926 PIC16C554/556/557/558 , PIC16C432/433 , PIC16C717/770/771/781/782 -Add PIC microchip 12bit (FLASH memory) PIC12F508/509 , PIC10F200/202/204/206 , PIC16F505 , PIC16F54/57 -Add PIC18Fxxx PIC18F242 , 18F248 , 18F252 , 18F258 , 18F442 , 18F448 , 16F452 , 16F458 PIC18F1220 , 18F2220 , 18F4220 , 18F1320 , 18F2320 , 18F4320 PIC18F6520 , 18F6620 , 18F6720 , 18F8520 , 18F8620 , 18F8720 PIC18F2331 , 18F2431 , 18F4331 , 18F4431 PIC18F6525 , 18F6621 , 18F8525 , 18F8621 PIC18F6585 , 18F6680 , 18F8585 , 18F8680 PIC18F2439 , 18F2539 , 18F4439 , 18F4539 PIC18F6410 , 18F8410 , 18F6490 , 18F8490 Add PIC18Fxxx PIC18F2410 , PIC18F2420 , PIC18F2455 PIC18F2510 , PIC18F2515 , PIC18F2520 , PIC18F2525 , PIC18F2550 , PIC18F2585 PIC18F2610 , PIC18F2620 , PIC18F2680 PIC18F4410, PIC18F4420 , PIC18F4455 PIC18F4510 , PIC18F4515 , PIC18F4520 , PIC18F4525 , PIC18F4550 , PIC18F4585 PIC18F4610 , PIC18F4620 , PIC18F4680 Add Find and edit value OSCCAL (PIC12F629/675 , PIC16F630/676) Add Edit config at address 0x2008,0x2009 (PIC12F635/683 , PIC16F636/684/688 , PIC16F785) Fixed Programming PIC all Test on chip PIC12F675 , PIC16F676 , PIC16F684 ,PIC16F767, PIC16F74 PIC16F872 , PIC16F876 , PIC16F877, PIC16F876A, PIC16F873A, PIC16F819 PIC16F84 , PIC16F84A , PIC16F628, PIC16F628A, eprom PIC12C509JW , PIC16C505JW , PIC16C711JW , PIC16CE625JW PIC18F458 , PIC18F4320 , PIC18LF258 , PIC18F4539 , PIC18F4431 Atmel Flash Memory (Sector Programming) (Software Data Protection) AT29C256 , AT29C512 , AT29C010A , AT29C020 , AT29C040 , AT29C040A W29EE512 , W29EE011 , W29EE012 , W29C020(128) , W29C040 PH29EE010(W29EE011) ASD AE29F1008 (AT29C010), AE29F2008 (AT29C020) Ver 0.992 up(DOS). Can run under win9x (disable prog. CPUIdle or CPUCool) AT49BV512 Atmel Flash Memory AT49Fxxx (Subset 29Fxxx) (Byte-by-Byte Programming) Command seq. 5555/AA, 2AAA/55, 5555/A0 AT49F512 , AT49F010 , AT49F020 , AT49F040, SST39SF010 , SST3S9F020 ,SST39SF040 AT49F001 , AT49F002 , AT49F008A Command seq. 555/AA, 2AA/55, 555/A0 Am29F512 , Am29F010 , Am29F020 , Am29F040 , HY29F080 29F002 , 29F002T , Pm29F002T Serial Peripheral Interface (SPI) EEPROM Mode0 (0,0) AT25xxx, W95xxx [Atmel] AT25010 , 020 , 040 (A8-A0) AT25080 , 160 , 320 , 640 , 128 , 256 (A15-A0) [sT] W95010....256, Microchip 25x010 - 25x640 --- Byte programming 25010 , 25020 , 25040 --- Page programming 25C080 , 25C160 , 25C320 , 25C640 , 25C128 , 25C256 , 25C512 AT25HP256 , AT25HP512 AT25HP1024 (24bit address) -- CAT64LCxxx (16bit DATA IN/OUT) use Socket 93Cxxx CAT64LC010, CAT64LC020, CAT64LC040 Atmel EEPROM (page prog.) AT28C256 , AT28C010 , AT28C040 Nonvaltile SRAM (DS12xx) DS1220 , DS1225Y , DS1230Y/AB , DS1245Y/AB , DS1249Y/AB static RAM (Test RAM) 6116 , 6264 , 62256 , 62512 , 628128 EPROM winbond,SST Electrical Erase Chip W27E512 , W27E010 , W27C010 , W27C020 , W27C040 SST27SF256 , SST27SF512 , SST27SF010 , SST27SF020 MX26C4000 Vcc = 3.3-3.6V SST37VF512 , SST37VF010 , SST37VF020 , SST37VF040 Flash Memory SST,Sanyo SST28SF040A , LE28F4001 Support CHIPS : Use together with Adapters Atmel AT89Cxx (MCS-51) Adapter 32pin to MCS-51 Atmel Auto Setect AT89C51 , 52 , 55 , AT89LV51 , 52 , 55 AT89S8252 (8K+2K) , AT89S53 , AT89LS8252 , AT89LS53 AT89C1051 , AT89C2051 , AT89C4051 (20pin) AT89C51RC (32KB) , AT89C55WD (6.2V) SST89C54/58 , SI89C52 Intel Auto Select i87C51 , i87C51FA , i87C51FB i8xC51 , i8xC52 , i8xC54 , i8xC58 (tWP = 100uS*25 Pulse) Atmel AVR 8-bit RISC AT90Sxxx (Parallel programming) Adapter 32pin to MCS-51 (read , write , erase , verify , checkempty , Lockbits , Fusebits) [Flash memory/EEPROM] AT90S1200 , AT90S2313 90S2333 , 90S4433 , 90S4414 , 90S8515 , 90S4434 , 90S8535 reference AT90S2313 pin Function Lockbit read AT90S2313 Errata Sheet.pdf MCS-48,MCS-41 Adapter 32pin to MCS-48/41 ROM (read/verify) P8048AH , P8049AH,P8050AH , P8042AH Vea = 12V P8041 , P8042 OTP (read/verify/Progam) P8748 , P8749H , P8742H Vea = 18V EPROM (read/verify/Progam) D8748 , D8749 , D8742 , D8741 , D8742 Vea = 18V FLASH memory 8/16bit Adapter (TSOP48) Am29F400 , Am29F800 , 29F160 , 29F320 (read , write byte mode) HY29F200 , HY29F400 , HY29F800 , AT49F2048A , AT49F4096A , AT49F8192A FLASH memory 8/16bit (Vpp12V) Adapter (TSOP48) i28F200 , i28F400 , i28F800 , i28F160 (TSOP48) 28F001(DIP32 or PLCC32) EPROM 16bit (DIP40) (1-4Mbit) Adapter Eprom 16bit Eprom only 27C1024 (27C210) , 27C2048 (27C2002) , 27C4096 (27C4002), Schematic by Toomas Toots (read , Program byte mode by use Resister pull up Data Bus (0xFF) , A0 select low or high byte) EPROM 16bit (DIP42) (4-32Mbit) Adapter Eprom DIP42 Eprom only M27C400(DIP40) , 27C800 , 27C160 , 27C322 Schematic by Toomas Toots (read , Program byte mode by use Resister pull up Data Bus (0xFF), A0 select low or high byte) FLASH memory 8/16bit Adapter (TSOP48LV) 29LV200 , 29LV400 , 29LV800 , 29LV160 , 29LV320 (read,write byte mode) Firmware Hub / LPC FLASH Adapter Firmware Hub/LPC (PLCC32) (PP mode) (3.3V) Firmware Hub 82802AB , 82802AC , AT49LW040 , AT49LW080 SST49LF002A , SST49LF003A , SST49LF004A , SST49LF008A W49V002FA , W39V040FA LPC flash SST49LF020 , SST49LF040 W49V002A , W39V040A P28F002BC Adapter P28F002BC (DIP40) BOOT BLOCK FLASH MEMORY - P28F002BC TSOP40A MBM29LV002TA/BA , MBM29LV004 , MBM29LV008 , MBM29LV017 , MBM29LV080 MBM29F002ST/SB , MBM29LV016 , Am29LV004 , Am29LV002 , Am29LV008 TSOP40B MBM29F017A , MBM29F016A , MBM29F080 , 28F008SA , 29F004S5 Am29F080 , Am29F016B , Am29F016 , Am29F017B , Am29F065MU

 

Этот текст - вольный перевод файла debug с сайта willem.org.

За точность перевода поручиться не могу, но в общих чертах все верно, кроме того нужно понимать,

что невозможно дать рекомендации на все случаи. (Нумерация компонентов по схеме v3m)

Эти рекомендации предназначены для версий программатора 4.0, 4.5, 3.1,

но в равной мере применимы и для любых других версий.

Функциональная часть схемы существенных изменений не претерпела и все отличия касаются схемы питания,

количества и конфигурации джамперов и панелек.

1.Визуальный осмотр После того, как Вы закончили монтаж программатора, сделайте полный визуальный осмотр.

Это очень важно для выявления проблем, вызванных плохой пайкой и деффектами печатной платы,

неизбежными при "утюжно-лазерной" технологии (особенно pcb3b, где плотность монтажа намного выше).

Используйте сильный источник света и лупу.

Проверьте правилность установки компонентов, особенно микросхем.

В сомнительных случаях сверяйтесь с принципиальной схемой, нельзя доверятся только монтажке.

Это самый важны пункт.

ПРАВИЛЬНО СОБРАННЫЙ ПРОГРАММАТОР РАБОТАЕТ СРАЗУ И НАЛАДКИ НЕ ТРЕБУЕТ. ПРОВЕРЕНО!!

2.Проверка стабилизаторов напряжения и цепей питания.

При первом включении подключите источник питания 14-30в через резистор 150-300ом,

это поможет избежат неприятностей связанных с короткими замыканиями и неправильно вставленными микросхемами.

Переключатели напряжений в положении 5в и 12в, DIP12 - все off.

Должен загорется зеленый светодиод( во всяком случае у меня он зеленый).

В противном случае ищите кз и обрывы.

Проверьте 12,7 в на выходе 7812 , если установлены стабилитроны, можно проверить 21в и 25в переключая джамперы.

Напряжение должно отличатся не более 5% .

Если Vpp слишком мало, 20.5 в, например, Вы можете подключить последовательно со стабилитроном

диод 1n4148 в прямом направлении или использовать стабилитрон другого номинала.

Проверьте напряжение на выходе 7805 и на всех ИС pin - 16. (4049 pin 1).

Если на выходе 7805 не 5 в, а ноль и она греется, то в цепях питания кз, если напряжение ниже чем 5 в и нагрев,

это наиболее вероятно чип, установленный наоборот, этот чип также станет теплым.

В версиях 4,0 и 4,5 это немного отличается: в них используются 2 LM317 с несколькими резисторами в цепи обратной связи,

которыми и подстраивается напряжение.

В pcb3b для формирования необходимого напряжения Vpp используется импульсный преобразователь на микросхеме 34063,

при правильной сборке его настройка тоже не вызывает затруднений.

3.Испытание вашего программатора.

Подключите программатор к PC, включите источник питания и загрузите OS.

У меня используются:

Acorp 6BX86 PII233 64Mb RAM LPT-EPP+ECP Блок питания 15в не стабилизированный вилочный.

Windows 98SE2. Epr097ja Запустите EpromM51.exe, если программатор не обнаружен

( меню HelpTest Hardware - в строке состояния должно появиться сообщение Hardware present)

проверьте электропитание и кабель. Можно поэкспериментировать с настройками bios, но это вряд ли поможет.

Если вы уверены в исправности внешних цепей( LPT, кабель, блок питания) ,

то переходите на закладку H/Wtest и проверьте "сериал (D0 pin 2) ", должна стать '1', иначе есть проблема со связью с PC.

Проверьте прохождение сигнала (3-5в или 0) по цепочке от LPT

pin 1 - 74HC04 

pin 2 - 74HC04

pin 2 - Q4 - Q5 - 74HC04

pin 3 - 74HC04

pin 4 - LPT pin 11.

Если изменение сигнала проходит, должна быть связь и проблема в вашем PC.

Если программа определяет наличие программатора, Вы можете продолжить испытания.

Важно понять, что контроль подключения программатора не говорит ничего о параллельной eprom секции,

контроль Аппаратных средств использует последовательный контур устройства.

Установите DIP12 в положения показанные в окне H/W Test программы.

Поочередно ставьте "птички" на всех выводах ZIF32 и проверяйте напряжение вольтметром,

на Vcc, A0-A17, D0-D7, WE должно быть 5в (на А9 3-4в из-за диодной развязки).

Для обнаружения возможных замыканий проверяйте контакты ZIF рядом с тем, который стоит в "1", там должны быть "0".

Для примера: Вы проверяете A5, A4 и A6 должны остаться в "0".

Теперь можно пробовать программировать eprom, лучше использовать 28F010 или 020,

что позволит проверить все линии адреса, данных и Vpp

( не забудте выставить в меню Device тип микросхемы и установить DIP12 в нужное положение).

Вы можете легко стереть чип программатором. Можно также использовать eproms 27xxx, предварительно стертую конечно.

Если проверка стирания терпит неудачу, и Вы уверены, что МС пуста, то проблема в секции чтения(4014).

Загрузите файл, который равен по размеру EPROM, чтобы использовать весь диапазон адреса устройства.

Проверьте ID микросхемы, если это работает и выводится hex ID микросхемы, тип и производитель,

то программатор работает. Запустите erasewriteverify.

Если пограммирование неудачно, то нужно сделать больше попыток, чтобы определить местонахождение проблемы.

Отказ в том же самом месте подобно "ошибке в 0x040000 buffer=0xXX, chip=0xXX" вызван отказом адресации.

Случайная ошибка, может быть вызвана плохо стертым УЛЬТРАФИОЛЕТОВЫМ чипом или Vpp слишком низко,

могут также быть другие причины , например, нестабильность регуляторов напряжения.

Если в результате всех проверок программатор не заработал, то у вас по прежнему есть деффекты печатной платы,

неправильно установленные или неисправные компоненты и тп. Начните все с начала.

Замеченные проблемы: было два замыкания на плате из-за плохого травления и одно из-за капли припоя,

одна неправильно установленная перемычка. Иногда проходит сбой из-за небрежно изготовленного адаптера PLCC32 и устраняемый простой переустановкой в ZIF. Других проблем не было.

*Это описание сделано только на основании анализа схемы и наверняка содержит много неточностей,

но для понимания принципов работы схемы этого достаточно.

** Нумерация компонентов по схеме pcb3m

Программатор состоит из двух частей, функционально полностью самостоятельных: последовательной секции и главной параллельной EPROM части. Последовательная секция поддерживает микросхемы I2C

(Intelligent Circuit) серии: 24CXXX, 25Cxxx, 93Cxxx и PIC-контроллеры.

Эти МС программируются либо через встроенные панельки,

либо через адаптер, подключаемый разъемом к шине ICSP(Integrated Circuit Serial Peripheral).

Эта секция - простая последовательная цепь, которая идет от DO0

(pin 2 LPT) к U1a(74HC04), через Q6, Q5, U1b к BUSY (pin 11 LPT).

При отсутствии МС в сокетах U7, U10, U12, U13 сигнал от DO0 без изменений проходит на вход BUSI,

что используется для контроля подключения программатора к порту.

Программирование МС 24Cxx и PIC осуществляется по линии Data.

Установка режима, адреса, данных при чтении и записи производится по одному проводу.

МС 25Cxx и 93Cxx имеют раздельные ввод и вывод сигналов.

Установка режима чтение запись и адреса, активизация, передача данных при записи осуществляется по линии Data2,

а вывод данных по линии DOut, при этом информация на входе BUSI полностью определяется состоянием линии DOut,

так как резистор R3 много больше R4. Тактовая частота подается от DO1 через буфер U2.2 по линии D1, CS (Chip Select)

и WP (Write Protect для старых МС 24Cxx) поступает от SELIN LPT через буфер U4.5 по линии S4.

По схеме хорошо видно, что эта часть программатора полностью автономна и может быть исключена или напротив,

собрана в виде отдельной конструкции. Параллельная секция состоит из трех основных частей:

Две микросхемы 4503 (2+4 буфера с тремя состояниями и раздельными цепями управления)

используются как буфер данных LPT и для управления режимами программатора.

Две секции по 4 буфера U2.1-U2.4 и U4.1-U4.4 подключают шину данных LPT (DO0-DO7) к шине данных записываемой МС.

В зависимости от режима работы-чтение запись переключаются сигналом

E1 (pin1 U2 U4) от AUTOFEED (pin 14 LPT) через буфер U4.6.

Логический ноль - "0" включает буферы шины данных, логическая еденица - "1" - отключает.

Два буфера U2.5 и U2.6 управляют загрузкой регистра адреса и выгрузкой регистра данных U3 (4014).

Включаются нулем от инвертора U1E, когда AUTO="1".

Буферы U4.5 и U4.6 включены постоянно и используются просто как повторители сигналов SELIN и AUTO.

SELIN управляет сигналом WE (write enable), сигнал идет от LPT pin 17 к U4 pin 12, от U4 pin 11 на DIP-switches (S4).

Регистр адреса - 24х разрядный регистр сдвига на 3 x микросхемах 4015 (U6, U11, U14)

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

поступающих от DO1 через U2.5 на вход D.

Значения адреса начиная со старшего разряда поочередно выставляются на DO1 и по положительному

фронту тактовой частоты (DO0-U1.6-CLK) сдвигаются в сторону старшего разряда регистра,

таким образом за 24 такта регистр полностью заполняется.

Когда на входе CLK сохраняется постоянное значение "1" или "0" регистр не изменяет состояния выходов А0-А24.

В программаторе версии pcb3,5 входы D U11a и U14a подключены не к выходу предыдущего разряда, а к DO4, DO5 LPT и регистр адреса заполняется так же последовательным сдвигом,

но все три микросхемы одновременно, т.е. втрое быстрее (это не означает, что и запись Flash в три раза быстрее).

Параллельно-последовательный регистр U3 (4014) используются для чтения данных с EPROM.

Параллельный вход (pin P1-P8 4014) связан с 8-и разрядной шиной данных EPROM (D0.. D7).

При "1" на P/S (pin 9) по положительному фронту CLK (от DO2 через инвертор U1D) byte данных записывается в регистр.

Затем P/S устанавливается в "0" и по каждому положительному фронту CLK данные сдвигаются в сторону старшего разряда.

Таким образом на выходе Q8 поочередно появляются все значения D7-D0 через инвертор U1F поступающие на вход ACK,

где они считываются и записываются в буфер программы.

Если на входе CLK неизменяемый уровень "1" или "0",

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

Схема питания, построенная на интегральных стабилизаторах 7805 и 7812, подробных пояснений не требует.

Дополнительные напряжения получаются включением в "земляной" вывод стабилизатора диодов и стабилитронов,

переключаемых джамперами J6-J8. Vpp управляется сигналом Strob (pin 1 LPT) и транзисторами Q3 и Q1.

Vcc управляется сигналом Init (pin 16LPT) через U1C и Q2. DIP switch 12 используется для поддержки различных типов микросхем. Vcc, Vpp и WE и некоторые адреса могут быть подключены к различным выводам Zif 32.

Джамперы J1 и J2 также обеспечивают возможность программирования без дополнительных адаптеров МС с нестандартной разводкой выводов. J5 переключает схему регистра адреса для совместимости с pcb3b/pcb3,5,

чтобы иметь возможность работы с ПО версий 0,97j и 0,98C-0,98D2 Алгоритмы чтения, записи,

стирания, чтения ID любой реальной микросхемы достаточно сложны,

в чем можно убедиться заглянув в документацию от производителя.

Для понимания принципа работы программатора не требуется описывать их во всей полноте, достаточно упрощений.

Тем более, что все операции состоят из ряда элементарных действий - установка шины адреса,

установка шины данных, WE, CE, OE, выполняемых в определенной последовательности.

Запись Flash: 1. SELIN - "1" (WE - "1" запись запрещена),

AUTO - "1", шина данных отключена (E1 - "1", U2.1 - U2.4, U4.1 - U4.4 отключены),

U2.5 и U2.6 включены. На DO1 выставляется значение старшего разряда адреса An, на DO0 поступает тактовая частота.

С приходом положительного фронта CLK значение адреса записывается в ячейку Q1 регистра.

На DO1 выставляется значение адреса An-1, следующий импульс CLK сдвигает An в ячейку Q2, а в Q1 записывает An-1 и тд.

Цикл повторяется до полного заполнения регистра значениями адреса A0 - An. 2. AUTO - "0",

SELIN - "1", U2.5 и U2.6 выключены, U2.1-U2.4 и U4.1-U4.4 включены. CLK=D="1" и регистр адреса в режиме хранения.

S6=OE="1"- вывод данных записываемой Flash запрещен.

На шине DO0-DO7 выставляется первый Byte записываемых данных.

3. AUTO - "0", U2.1-U2.4 и U4.1-U4.4 включены, на выводах записываемой МС присутствуют значения адреса и данные.

SELIN = WE = "0" - запись разрешена - внутренняя логика Flash микросхемы производит запись данных

D0-D7 в массив памяти по установленному адресу.

Чтение Flash: 1. Установка адреса аналогично зписи. 2. SELIN - "1" (WE - "1" запись запрещена),

AUTO - "1", S6=OE="0" вывод данных разрешен, DO2 имеет постоянное значение и регистр 4014 в пассивном состоянии.

На выводах Flash микросхемы присутствуют адрес и сигнал разрешения вывода OE="0".

Внутренняя логика микросхемы дешифрует адрес и выводит на шину D0-D7 Byte данных.

3. На вход CLK U3 подается импульс по положительному фронту которого данные с шины D0-D7 записываются в регистр 4014.

4. DO1=D="0" регистр 4014 переключается в режим сдвига. На вход CLK от DO2 подается импульсная последовательность и записанные данные сдвигаются на вывод Q8 U3, оттуда через инвертор U1F на вход ACK, где считываются программой.

Для чтения ID программатор использует программный метод суть которого заключается в записи

в микросхему определенного набора команд для перевода в режим чтения ID и считывании 3х Byte'ного кода.

Таким способом можно прочитать ID не всех микросхем.

Например в старых EPROM для перехода в режим ID нужно подать на вывод А9 напряжение 12 в.

Многие МС более поздних выпусков тоже поддерживают этот способ для совместимости со старой аппаратурой.

Это реализуемо и в Willem'е, достаточно подать 12в на А9 при чтении МС

(убедившись по документации, что этот режим поддерживается) , значения адресов 0000 и 0001 и будут содержать ID.

Информацию по кодам ID можно найти в документации или на тематических сайтах,

например, на форуме по программатору BiDiPro.

Работа схемы в других режимах и при записи МС других типов происходит аналогично, но могут быть некоторые отличия.

Например при записи 16-bit EPROM на каждый адрес пишется 2 Byte'а данных,

а при записи FWH адрес устанавливается два раза на каждый Byte,

что обусловлено конструктивными особенностями этих микросхем.

 

Программатор Willem Prog (Продолжение).

EVM News --------

This is the hidden content, please
Для просмора журнала:

1. Cоздайте отдельную папку, назвав ее например "news" и скопируйте туда файл news***.exe (***-номер жрнала)

В нее же в дальнейшем, для сохранения навигации, распаковывать следующие журналы.

2. Запустите файл, он предложит распаковаться в эту же папку, распакуйте его.

У вас появится файл ***.chm, после чего исходный файл news***.exe можно удалить.

3. Для запуска двойным щелчком мыши щелкните по файлу ***.chm

Системные требования:

Операционная система, начиная от Windows 98 и выше. браузер Internet Explorer версии начиная от 5.0 или выше.

Журнал оптимизирован под разрешение 1024x768.

This is the hidden content, please
This is the hidden content, please
This is the hidden content, please
This is the hidden content, please
This is the hidden content, please
This is the hidden content, please

This is the hidden content, please
This is the hidden content, please
This is the hidden content, please
This is the hidden content, please
This is the hidden content, please
This is the hidden content, please

Каждый участник форума должен проявлять активность, в решении вопросов ремонта и поиска нужной радиотехнической информации.

Вы тоже можете пополнить нашу базу ценной технической информацией, личный опыт ремонта, лично снятые прошивки, всё что вам помогает в вашей работе.

Делитесь своим опытом ремонта, помогайте другим участникам  форума в поиске информации.

Делитесь прошивками, новыми схемами, все что вы сами любите на форуме читать и смотреть!

В этом и заключается суть работы на форуме - обмен информацией!

 

Link to comment

Для просмора журнала:

1. Cоздайте отдельную папку, назвав ее например "news" и скопируйте туда файл news***.exe (***-номер жeрнала)

В нее же в дальнейшем, для сохранения навигации, распаковывать следующие журналы.

2. Запустите файл, он предложит распаковаться в эту же папку, распакуйте его.

У вас появится файл ***.chm, после чего исходный файл news***.exe можно удалить.

3. Для запуска двойным щелчком мыши щелкните по файлу ***.chm

Системные требования:

Операционная система, начиная от Windows 98 и выше. браузер Internet Explorer версии начиная от 5.0 или выше.

Журнал оптимизирован под разрешение 1024x768.

This is the hidden content, please

This is the hidden content, please

This is the hidden content, please

willem pcb 5.0  переходник для прошивки ATMEGA 8......ATTINY2313.

This is the hidden content, please

программное обеспечение 98D12C3 для windows xp ( vista . 7 ) x64

Каждый участник форума должен проявлять активность, в решении вопросов ремонта и поиска нужной радиотехнической информации.

Вы тоже можете пополнить нашу базу ценной технической информацией, личный опыт ремонта, лично снятые прошивки, всё что вам помогает в вашей работе.

Делитесь своим опытом ремонта, помогайте другим участникам  форума в поиске информации.

Делитесь прошивками, новыми схемами, все что вы сами любите на форуме читать и смотреть!

В этом и заключается суть работы на форуме - обмен информацией!

 

Link to comment

СПИСОК МИКРОСХЕМ КОТОРЫХ НЕТ В СОФТЕ НО ШЬЁТ  PCB-5.0
 
Структура: микросхема которую нужно прошить- выбор в софте который ее запросто прошивает.
W49F002UP12B- вставляем в нижний разьем PLCC32 ( PCB 5F )- не в верхний хаб!!!, в софте выбираем AT49F002
W39V040BPZ - W39V040FA ( НА Willem 3.5 софт 0.97 нет BPZ, при выборе FA, прошивается без проблем) адаптер FWH_LPC
W39V040BPZ - иногда не хочит дружить с софтом 0.98D10, ... с 0.98D8 без проблем берется. слот FWH_LPC
W39V040FCPZ- софт 0.98D10, tWP - 1uS, tWC - 1uS .
перемычки onoff Hub включены. нормально стерлася и записалася, но ID показала только что виндбонд..
EON EN29F002T - 29F002NT
3132(smd)Volvo - как 24С01, слот 24Схх
KKZ-06 – читать и писать как 24С01, слот 24Схх
D6253 – читать и писать как 24С01, слот 24Схх
D6254 – читать и писать как 24С02, слот 24Схх
6006L - читать и писать как 9306
7002MN - читать и писать как 9306
GRN-001- читать и писать как 93C46
GRN-002- читать и писать как 93C46
GRO-001- читать и писать как 93C46
KKZ-001- читать и писать как 93C46
D2915 - читать и писать как 93C46
9308 - читать и писать как 93C46
SST39VF040 - шьем как SST39LF040 ( в самом низу выбора ис в софте ) .
джампер J3 в верхнее положение Р1-А18 (джампер с лева от дип переключателя.).
группа джамперов J8(возле разьема бп) ставим в положение 5v7
Микросхему в программаторе PCB5F ставим в нижний разъем PLCC32- не в всерхний возле перемычек хаб.. он..оф.. !!!
А В НИЖНИЙ! БЛИЖНИЙ К ДИП ПЕРЕКЛЮЧАТЕЛЮ. )
MX29LV008 в софте выбираем MBM29F008 . адаптер TSOP40A . джампер на базе адаптера на 3в. шлейф соединен с программатором и базой.
M29W320ET в софте выбираем AM29F320 , адаптер TSOP48 816 bit , соединяем плату адаптера с программатором - A19, A20 , A21 .
На плате базе адаптера - Джампер J-1 в положение 3в. J2 в положение 29F.
ID отдает только что это ST. Но при этом, стирается, программируется, записывается и проходит верификацию.
en25f80.выбрал производителя Numonix,а там 25р80...шьёт,читает,стирает...
W39L04P-70Z выбираем 39SF/49F040,ставим в нижнюю панельку,софт 098.10.Читается и шьётся без проблем.
MX25L1005A заменяется (полный аналог) следующим флешкой SST 25VF010A
SST39VF040 - шьем как SST39LF040 ( в самом низу выбора ис в софте ) .
не забываем поставить джампер J3 в верхнее положение Р1-А18 (джампер с лева от дип переключателя.)
Микросхему в программаторе PCB5F ставим в нижний разъем PLCC32- не в всерхний возле перемычек хаб.. он..оф.. !!!
А В НИЖНИЙ! БЛИЖНИЙ К ДИП ПЕРЕКЛЮЧАТЕЛЮ. )
Иногда попадаются эти флешки, которые полностью не стираются с первого раза.. нажимаем несколько раз на стирание , и все гуд.
 
НАЗНАЧЕНИЕ И ВЫСТАВЛЕНИЕ ДЖАМПЕРОВ В ПРОГРАММАТОРАХ WILLEM
PCB 3.0-4

This is the hidden content, please

PCB 5.0F
This is the hidden content, please

PCB 5.5C
This is the hidden content, please
This is the hidden content, please

Информационная поддержка программаторы семейства
This is the hidden content, please

EZoFlash +  
This is the hidden content, please

Каждый участник форума должен проявлять активность, в решении вопросов ремонта и поиска нужной радиотехнической информации.

Вы тоже можете пополнить нашу базу ценной технической информацией, личный опыт ремонта, лично снятые прошивки, всё что вам помогает в вашей работе.

Делитесь своим опытом ремонта, помогайте другим участникам  форума в поиске информации.

Делитесь прошивками, новыми схемами, все что вы сами любите на форуме читать и смотреть!

В этом и заключается суть работы на форуме - обмен информацией!

 

Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...