Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: AT89S52 не программируется, почему?
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > Все остальные микроконтроллеры
ZXprSL
Помогите пожалуйста!
Непойму в чём дело!!
Купил микруху AT89S52-24pi
Пытаюсь программировать - не прогрпммиркется.
Прогил двумя программаторами: as2 и PonyProg.
AS2 как будто бы программирует, провожу верификацию - не проходит
считываю из флешь - мусор, причём постоянно разный при каждом считывании.
Стираю, программирую снова - тоже самое!!
PonyProg из флешки считывает тот же мусор, так же разный при каждом считывании, раз через 3-5 считывает все FF (FF - нормальное состояние чистой флешь), пытаюсь программировать, пишет ДЕВАЙС ИЗ НОТ РЕСПОНДИНГ

программирую по SPI

Запускаю контроллер - на портах всякая хрень, что попало.
Жму ресет - при каждом нажатии разное занчение на выводах всех портов!

Контроллер новый, только купил!


ето безнадёжно или можно вылечить?
или смело его выкинуть?
elserge
При программировании генератор тактовых сигналов МК должен работать на частоте, превышающей скорость программирования на какое-то число (посмотри даташит). Так что проверь тактирование МК (не забудь кондеры при кварце), тем более что и в работе у тебя полный бардак.
ZXprSL
Кондёры стоят на 33пф
Кварц ставил и 4 и 8 и 20 МХЗ - один результат!
Alexandr
А не висит ли у Вас на SPI еще чего-нибудь? В ds конечно написано, что можно программировать несколько устройств через один SPI - на практике тоже можно, но с большими оговорками.
elserge
Вспомнил! Не упускай следующее:

Serial Programming Fuse: A programmable fuse is available
to disable Serial Programming if the user needs
maximum system security. The Serial Programming Fuse
can only be programmed or erased in the Parallel Programming
Mode.
The AT89S8252 is shipped with the Serial Programming
Mode enabled.

Точно она у тебя чистая?!
А также при большой длине кабеля (1 метр) от МК до программатора у меня понадобилась подтяжка линий к 5В на уровне 1..2 кОм. А вообще-то написание своего простенького программатора на Паскале у меня заняло 1 день, если надо, могу поискать.
Ну а насчет мусора, проверь подключение МК. Питание, XTAL, Reset, EA (точно помню что я лажанулся с EA).
-=Space=-
А программишь через LPT?
Может он по току не тянет?
Можно попробовать на другом компе.

У меня кабель самодельный, прямой, без всяких микрушек.
питание не требуется, однако, если что сгорит уже не микрушка а порт компа.
прогу тоже сам писал, не понравился интерфейс у PonyProg smile.gif
ZXprSL
на SPI ничего не весит, платка не является законченным устройством, я собрал как бы лобораторный стенд для себя, для изучения контроллеров.
АВР прошивается, без проблем темиже программаторами!!!
AT89S52 не хочет (естественно соблёл перепиновку), ето вообще мой первый 51-совметимый!! и сразу такое!

Кабель программатора менее 1 метра
Питанеие в норме!
цепи кварца тоже в порядке! (33пф и кв. на 4мхз).
EA на Vcc.
Ресет на Vcc при программировании

по поводу параллельного программирования конечно вопрос!!
но микруха новая, никто ФУЗ биты не устанавливал

сразу попутный вопрос:
есть ли у кого схема параллельного программатора??
или ссылка может есть?
ROC
Цитата(ZXprSL @ May 3 2005, 22:17)
на  SPI ничего не весит, платка не является законченным устройством, я собрал как бы лобораторный стенд для себя, для изучения контроллеров.
АВР прошивается, без проблем темиже программаторами!!!
AT89S52 не хочет (естественно соблёл перепиновку), ето вообще мой первый 51-совметимый!! и сразу такое!

Кабель программатора менее 1 метра
Питанеие в норме!
цепи кварца тоже в порядке! (33пф и кв. на 4мхз).
EA на Vcc.
Ресет на Vcc при программировании

по поводу параллельного программирования конечно вопрос!!
но микруха новая, никто ФУЗ биты не устанавливал

сразу попутный вопрос:
есть ли у кого схема параллельного программатора??
или ссылка может есть?
*



Программатор какой??? Не софт, а железо???

Reset всегда на Vcc???

В месте про перепиновку и про AVR - подробнее, пожалуйста.
89S52 по ногам полностью совпадает с , ну скажем, 90S8515, только у них RESET разный.
Для начала можно попробовать ICProg или "Хамелеон" с http://atprog.boom.ru/Sindex.html, оба на LPT

Оба пробовались, оба прекрасно шьют S52.

P.S. ИМХО, что-то с Reset'ом неладно.... Там в простейшем варианте всего 4 провода нужно - MOSI, MISO, SCK и RESET (причем RESET управляется с порта, т.е. программатором!!!), кварц + кондеры.
Всё!!!
ZXprSL
Ресет на Vcc только при программировании, прогрпмматор сам его на Vсс цепляет.
После программирования весит в воздухе , либо на корпусе!! и так и так пробывал.

программатор, один AS2, там в нём 2 микружи, одна из которых АТМЕГА8, вешается на последовательный порт.
второй программатор PonyProg, также на КОМ порт, имеет в себе 3 стабилитрона, 4 резистора (и один транзистор для АВР)

Распиновка у AT89S52 и AT90S8515 действительно совподает,
но я как раз имел ввиду 8535, а в данном случае распиновка различается.

За сслку спасибо, вроде интересный вариант, сегодян соберу и изпробую!!!
ZXprSL
Да, кстати, после того как я повесил EA на Vcc (по совету выше), на портах бардак перестал появлятся, но вот при чтении из ФЛЕШЬ, всё по старому, и программироваться отказывается!!
elserge
Насчет Fuse для serial programming будь осторожен. Я ошибся с чипом и у S52 его я не нашел.
Muxamor
А может у вас просто МК бракованный!!
-=Space=-
Цитата(ZXprSL @ May 4 2005, 13:47)
Ресет на Vcc только при программировании, прогрпмматор сам его на Vсс цепляет.
После программирования весит в воздухе , либо на корпусе!! и так и так пробывал.

программатор, один AS2, там в нём 2 микружи, одна из которых АТМЕГА8, вешается на последовательный порт.
второй программатор PonyProg, также на КОМ порт, имеет в себе 3 стабилитрона, 4 резистора (и один транзистор для АВР)

Распиновка у AT89S52 и AT90S8515 действительно совподает,
но я как раз имел ввиду 8535, а в данном случае распиновка различается.

За сслку спасибо, вроде интересный вариант, сегодян соберу и изпробую!!!
*

не надо ресет на воздухе или на землю,
лучше через кондер на питание + резюк на землю
номиналами определяется время ресета
помоему у нас ставят килоом и 10 микрофард
еще лучше спец микрушки ресета, ониже мониторинг питания

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

кстати уровни ресета у АВР и с51 разные, в программе-программаторе учитывается это?
ZXprSL
УРА, заработало!

Выводы могу сделать такие:

Взял у друга AT89S8252, воткнул его вместо своего S52 в ту же плату,
программатором AS2 зашился только при выставлении тактирующих импульсов SCK не выше 8кГц при кварце 4Мгц, S52 же нихотел никак программироваться, даже при замене кварца 4, 8, 20мГц
АВРу как я поня пофигу, такое сложилось впечатление, он прогился любыми мне доступными програматорами (3шт) и при любых параметрах.

PonyProg прошил S8252 только после выставления протакола Serial SI Prog API,
S52 и в етом случае отказался программироваться, но теперь вроде понял почему!
PonyProg потдерживает из 89х тоько S8252 и S53, я же программировал S52 как S8252, думал что они не отличабтся в программировании, однако разница есть.

Следующй программатор я собрал сегодня по предложенной ROSом ссылке (Огромное спасибо) http://atprog.boom.ru/Sindex.html.
S8252 зашился опять таки только при выставлении задержек при записи в контроллер, S52 наконец-то при аналогичных условиях успешно запрограммировался.

Вот такое вот кино.
Muxamor
Хорошие у вас друзья!!:)
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.