ESpec - мир электроники для профессионалов


Программаторы Postal - продолжаем разработку

  Список форумов » Программаторы
На страницу Пред.  1, 2, 3 ... 4, 5, 6 ... 8, 9, 10 ... 15, 16, 17  След.
Следующая тема · Предыдущая тема
АвторСообщение
vyn 
Участник
Сообщения: 293
vyn
 
Сообщение #81 от 03/05/2015 22:25 цитата  

Кстати функция сохранения констант на проверенных чипах работает нормально.
Postal2 
Бывалый
Сообщения: 97
Postal2
 
Сообщение #82 от 03/05/2015 23:23 цитата  

vyn, считал скорее всего верно, обычно там мелкая заморочка с записью, сейчас попробую найти данные на 873А.
Postal2 
Бывалый
Сообщения: 97
Postal2
 
Сообщение #83 от 04/05/2015 04:02 цитата  

vyn, вот версии с добавленными
PIC16F873A • PIC16F876A • PIC16F874A • PIC16F877A
Разница только в записи естественно, эти нужно по 16 байт писать (8 слов). Так что считанное всё верно. Вставлены перед серией pic18. Если ещё чего-то не хватает, то добавлю. Но у меня не все спецификации есть, каких нет у меня - тогда надо будет искать programming spec.

  Postal2_pic_test03.rar  450.61 КБ  Скачано: 352 раз(а)
  Postal3_pic_test03.rar  305.49 КБ  Скачано: 375 раз(а)
vyn 
Участник
Сообщения: 293
vyn
 
Сообщение #84 от 07/05/2015 00:15 цитата  

Теперь по USB варианту, нужно в настройках сигналы VDD, PGM, MCLR поставить галки иначе не работает. Теперь по чипам:
1. PIC12F629. При нажатии "set isp" определяет сигнатуру, выводит название чипа. Читает, пишет, не стирается.
2. PIC16F84a. При нажатии "set isp" определяет сигнатуру, выводит название чипа. Читает, пишет, стирает. Нажимаем "out isp". Нажимаем повторно "set isp" выдает ошибку "error config mem set!" нужен перезапуск программы. Тоже самое происходит если, что-то изменили в параметрах.
3. PIC16F873a, При нажатии "set isp" не определяет сигнатуру. Ничего не работает. При выборе чипа PIC16F873 и нажатии "set isp" определяет сигнатуру, выводит название чипа PIC16F873a, в параметрах автоматически выставляет правильный чип. Читает все "FF".
Приверил на LPT действительно чистый чип (стерся ??)прописал его заново, но верификация все время сбоила по разным адресам. Затем прошла нормально. Вставил в USB определился читался, писался, сверялся с ошибками, также с ошибками. Лог файл прикрепил. Что это с ним? сам чип уже сбоит или с новыми версиями прог проблемы?
В общем не все так хорошо как в LPT варианте. недовольство, огорчение

  log.txt  5.76 КБ  Скачано: 285 раз(а)
vyn 
Участник
Сообщения: 293
vyn
 
Сообщение #85 от 07/05/2015 01:15 цитата  

Удалил сообщение.
В общем по PIC16f873a вроде все работает только не стабильно.
Postal2 
Бывалый
Сообщения: 97
Postal2
 
Сообщение #86 от 07/05/2015 03:03 цитата  

vyn, по USB-варианту ясно, где-то ошибка у меня в установке параметров, приблизительно направление поиска ошибки понял. По PIC16f873a это не я, это микрочип пакостит. Дело в том, что я изначально сомневался в нормальной буферизации 16-и байт для записи внутри чипа. Но режим пословной (по 2 байта) записи у него отличается, было лень добавлять специально под него, в спецификации режим обозначен как "альтернативный". Теперь ясно, что именно этот "альтернативный" метод и нужно использовать. Сделаю и выложу, должна будет запись PIC16f873a заработать без ошибок.
Postal2 
Бывалый
Сообщения: 97
Postal2
 
Сообщение #87 от 07/05/2015 07:17 цитата  

vyn, ошибок в инициализации usb-версии пока не нашёл, уточни условия, и в usb-варианте переустановка режима только по reset. Предполагаю, что дело в высокой скорости, тактовая высоковата. Сравни осциллографом, в следующей прошивке Меги для режима Атмел специально понизил в 6 раз, могу переключить туда же функцию pic. Пока же вот версия, где командой вносится аппаратная задержка на 13мкС после каждой полной команды, плюс скорость LowSpeed поставь. Скорее всего, в Меге прошивкой тактовую понизить, а в проге - старый вариант оставить. PIC12F629 кнопкой по идее и не должен стираться, галку unprotect at write тоже надо снять, он обычными командами bulk erase стирается только.
Пока альтернативный режим записи PIC16f873a не сделал! Это чуть попозже.

ДОБАВЛЕНО 07/05/2015 08:25

vyn, ещё при работе с pic галка spi read short step на страничке misc - задействована! Испытай её тоже (на прошлой и этой версиях).

  Postal3_pic_test04.rar  306.27 КБ  Скачано: 319 раз(а)
Postal2 
Бывалый
Сообщения: 97
Postal2
 
Сообщение #88 от 07/05/2015 08:14 цитата  

vyn, вот версии с альтернативным методом записи PIC16f873a, в usb-версии пока введённая пауза осталась, надо выяснить, нужна ли она.

ДОБАВЛЕНО 07/05/2015 09:35

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

  Postal2_pic_test05.rar  449.25 КБ  Скачано: 307 раз(а)
  Postal3_pic_test05.rar  306.33 КБ  Скачано: 309 раз(а)
Postal2 
Бывалый
Сообщения: 97
Postal2
 
Сообщение #89 от 07/05/2015 13:17 цитата  

vyn, определил причину ошибки "error config mem set!". Особенности протокола, можно посылать команды с большими задержками без обратной связи, хотя можно запросить обратную связь, что не использовано. В результате на LowSpeed отработка смены уровней ещё не закончена, а послана команда установки на конфигурацию, она не принимается в этот момент. Просто увеличил паузу в проге перед запросом. То же, что и предыдущее, но ожидается, что без "error config mem set!".

  Postal3_pic_test06.rar  306.37 КБ  Скачано: 271 раз(а)
vyn 
Участник
Сообщения: 293
vyn
 
Сообщение #90 от 08/05/2015 12:17 цитата  

Протестировал последнюю версию, все вроде нормально. Осталась только проблема с PIC16f873a нестабильная запись, несколько раз надо прошивать прежде чем пройдет верификацию. Про галку spi read short step на страничке misc, что с ней , что без неё разницы не заметил.
Еще вопрос. Имеем к примеру PIC12f629, зашиваем в него прошивку в которой в параметрах стоит защита от считывания. Прошиваем. Затем хотим зашить другую прошивку. И программа уже не может считать калибровочные константы. Так и надо?

ДОБАВЛЕНО 08 Май 2015, 11:24

Еще по поводу 873а, мне кажется проблема не в записи, а в стирании. При сравнении дампов, где не проходит верификацию, находятся данные от старой прошивки.
Postal2 
Бывалый
Сообщения: 97
Postal2
 
Сообщение #91 от 08/05/2015 17:58 цитата  

vyn, насчёт калибровки PIC12f629 я выше уже писал. Программе всё равно, она выходит на адрес и читает. На практике видим, что нельзя калибровку прочитать. Стирание 873а посмотрю, попозже выложу версию. Пока что вопрос - нужно ли снижать скорость физической передачи данных/тактирование для usb-версии? Это делается в прошивке Меги. И под вопросом дополнительная пауза, введённая между командами в usb-версии.
Postal2 
Бывалый
Сообщения: 97
Postal2
 
Сообщение #92 от 09/05/2015 04:23 цитата  

vyn, вот версии, стирающие PIC16f873a, до этого стирание не работало (стиралось в момент записи старой версией). Заодно подправлено стирание для PIC12f629. В usb-версии опять отключена пауза между командами, проверь, не будет ли сбоить. Если что - вернём обратно. Скорость обмена с pic usb-версии надо понижать?

ДОБАВЛЕНО 09/05/2015 05:30

Да, и если ставишь галку "spi short step" - сразу снижается скорость, у меня заметно, т.к. идёт 4 обмена по usb вместо одного.

ДОБАВЛЕНО 09/05/2015 05:34

Мне главное, чтобы глобально протокол обмена с pic надёжен был, дальше подправить под конкретный чип нет проблем.

  Postal2_pic_test07.rar  449.08 КБ  Скачано: 301 раз(а)
  Postal3_pic_test07.rar  306.26 КБ  Скачано: 326 раз(а)
vyn 
Участник
Сообщения: 293
vyn
 
Сообщение #93 от 11/05/2015 01:15 цитата  

Postal2 писал:
Скорость обмена с pic usb-версии надо понижать?

Мне главное, чтобы глобально протокол обмена с pic надёжен был, дальше подправить под конкретный чип нет проблем.


Со скоростью пока не знаю, но пробую разные скорости и варианты, сбоев не видно, надо будет попробовать на компе, где более скорострельный порт.
Хочу всё же добить 873а, прикрепляю файлы с дампами и логами, есть ошибки записи при чем разные в USB и LPT.

  lpt.rar  26.67 КБ  Скачано: 279 раз(а)
  usb.rar  13.69 КБ  Скачано: 275 раз(а)
Postal2 
Бывалый
Сообщения: 97
Postal2
 
Сообщение #94 от 11/05/2015 02:04 цитата  

vyn, ошибок записи сходу так не видно, вроде всё работает, проблема с верификацией. Дело в том, что при разрыве адресов в hex-файле промежуток при конверсии в bin заполняется FF. А при проверке чип линейно читается, и с него в этом месте считывается 3FFF. Вот при сравнении 3FFF с FFFF и выскакивает ошибка. Сейчас сделаю, чтобы было вообще без разницы.

ДОБАВЛЕНО 11/05/2015 03:15

Да, в usb-версии config не записался почему-то, сейчас смотрю...
Postal2 
Бывалый
Сообщения: 97
Postal2
 
Сообщение #95 от 11/05/2015 06:17 цитата  

vyn, вот две версии (для LPT и USB), изменил режим для 873а обратно на запись пачками по 16байт. Потому что спецификация кривая, и по логам видно, что кодовую область он нормально пишет в альтернативном режиме (пословно), а user и config опрокидывает. Верификация поправлена. Посмотрим, если кодовая область будет плохо, тогда её пословно, остальное - пачками. Увеличена пауза после управления пинами на 10мс в том числе на всякий случай для LPT-варианта. Уже казалось бы всё в проге предусмотрел - однако с 873а пришлось дополнительные условия подключать, у него у единственного пословно user не пишется, то есть вот эти испорченные биты на чтении появляются при пословной записи. Попробуй, посмотрим что дальше делать. А со скоростью всё в порядке, скорость для usb-девайса имелась в виду, можно больше не проверять, если только окончательный вариант прогнать потом.

ДОБАВЛЕНО 11/05/2015 07:43

Если кодовая область будет записываться с ошибками - всё равно обязательно проверь надёжность записи user и config, и не пишется ли мусор в user. Потому что с кодовой областью всё понятно как писать если что.

  Postal2_pic_test08.rar  449.99 КБ  Скачано: 274 раз(а)
  Postal3_pic_test08.rar  306.68 КБ  Скачано: 308 раз(а)
vyn 
Участник
Сообщения: 293
vyn
 
Сообщение #96 от 11/05/2015 22:14 цитата  

Протестировал PIC16F84A, PIC16F676, PIC16F873A, PIC12F629 и в USB и LPT версии больше явных проблем не обнаружил. Единственное если зайти в свойства выбранного чипа, то не с первого раза правильно считывает калибровочные константы, лог файл прикрепил. Но это наверно просто надо иметь ввиду.

  log.txt  1.12 КБ  Скачано: 263 раз(а)
Postal2 
Бывалый
Сообщения: 97
Postal2
 
Сообщение #97 от 11/05/2015 23:07 цитата  

vyn, ага, понял. На самом деле это ошибка, нет рестарта ISP. Прога текущий адрес хранит внутри себя, получается, что после обращения к еепром эта внутренняя переменная сбивается. Сейчас буду исправлять.
vyn 
Участник
Сообщения: 293
vyn
 
Сообщение #98 от 11/05/2015 23:57 цитата  

Схема больше меняться не будет? Второй ключ который вниз исключил, или надо оставить?

Схема


  Postal_PIC_uni.rar  11.15 КБ  Скачано: 443 раз(а)
Postal2 
Бывалый
Сообщения: 97
Postal2
 
Сообщение #99 от 12/05/2015 01:26 цитата  

vyn, ну естественно чем проще - тем лучше. Ключ вниз нужен, если на целевой плате ёмкость на MCLR висит, чтобы быстро её разряжать. Но поскольку сейчас (наверно) прошивка pic нужна редко, то проще эту ёмкость от MCLR на время прошивки убрать, в большинстве случаев. Если у тебя всё хорошо работает без ключа вниз - то и не нужен он. Во многих программаторах его и нет кстати.
Ниже окончательные версии, но уже можно не проверять. Там введена переменная, чтобы после работы с еепром pic16 всегда выполнялся рестарт перед доступом в секцию кода.
Основное проверено, pic18 у меня по спецификации сделан, так что если добавить или непроверенный чип сглючит - проблем нет. Главное - работает. Внутри проги сделаны функции и под pic24,pic32 - но вряд ли понадобится их реализовывать.
Если прошивание pic нужно при ремонте чего-нибудь - можешь статью сам в журнал "Ремонт и сервис" написать, благо схема красиво нарисованная есть. Я сам этими pic не пользуюсь, просто они популярны - поэтому нужно было добавить в прогу.

ДОБАВЛЕНО 12/05/2015 02:41

И у меня ни в проге ни в железе никогда ничего не меняется в уже установленных пунктах, поэтому всё сверху вниз совместимо. Единственное исключение - функция управления пинами под Микрочип в прошивке Меги, она делалась давно, и протокол после этого доработан был, а у людей - старая, частично совместимая прошивка V2. В прошивку Меги заложены также JTAG и Dallas. И ещё куча.

  Postal2_pic_test09.rar  449.64 КБ  Скачано: 321 раз(а)
  Postal3_pic_test09.rar  306.76 КБ  Скачано: 316 раз(а)
vyn 
Участник
Сообщения: 293
vyn
 
Сообщение #100 от 12/05/2015 13:44 цитата  

Все же обнаружилась проблема с PIC16F676 каждый раз считывает по разному, ошибки возникают по разным адресам. Ну естественно и запись не проходит нормально.
В архиве файл записанный и несколько раз считанный.

  22.rar  14.04 КБ  Скачано: 247 раз(а)

Перейти: 
Следующая тема · Предыдущая тема
На страницу Пред.  1, 2, 3 ... 4, 5, 6 ... 8, 9, 10 ... 15, 16, 17  След.
Показать/скрыть Ваши права в разделе

Интересное от ESpec


Другие темы раздела Программаторы



Rambler's Top100 Рейтинг@Mail.ru liveinternet.ru RadioTOP