|
dsPIC30F2020 - ID?, 6 штук, все дохлые ??? |
|
|
2 страниц
1 2 >
|
 |
Ответов
(1 - 17)
|
Feb 27 2009, 07:44
|
Местный
  
Группа: Свой
Сообщений: 460
Регистрация: 5-10-06
Из: Херсон
Пользователь №: 21 006

|
Цитата(Stas @ Feb 26 2009, 20:00)  Сегодня пытался запустить логическую часть эл.привода на базе dsPIC30F2020. Имеем ICD2 + отлаживаемое устройство с питанием. При попытке обращения к микросхеме посредством ICD2 выдается сообщение о несовпадении ID = 0x0 (Должно быть 0x400). Все попытки записи config bit в режиме программатора проваливаются при верификации. Осциллом наблюдаю хорошую форму сигналов EMUC и EMUD. Ради хохмы на EMUD повесил Pull-up, изменился ID=0xfff. Т.е. как я понял контроллер не отвечает. Пробовал подключать EMUC и EMUD к альтернативным портам - результат без изменений. Решил бахнуть config bit на программаторе phyton chip_prog+. Самое интересное - программатор ругается на несовпадение ID для микросхемы dsPIC30F2020. Ладно, все равно решил попробовать поменять config bit - сравнение не проходит не в ISP MODE ни в классическом режиме работы програматора. Проверил на определение ID все 6 имеющихся микросхем - результат одинаков - все хреново. Кто нибудь с подобными проблемами сталкивался ? Довольно частая проблема при плохой связи с чипом. Рекомендации стандартные. - попробовать повесить на PDC, PGD кондеры до 100 пик. - убрать все коденсаторы/диоды на сбросе - укоротить шнур связи - если клон, то уменьшить до нуля резисторы в цепи PDC, PGD. - изменить точку подключения земли USB кабеля. Если поможет переразвести плату.
|
|
|
|
|
Feb 27 2009, 19:42
|
Местный
  
Группа: Свой
Сообщений: 460
Регистрация: 5-10-06
Из: Херсон
Пользователь №: 21 006

|
Цитата(Stas @ Feb 27 2009, 16:30)  Однако... Сигналы все хорошой формы, все подключения в соответствии с документами на IDC2 (Микрочип), все земли сходятся в одной точке, длина шнура ~7 см, шнур самодельный из стандартного сетевого, при обжимке и пайке кабеля сделал чтоб сигнальные провода были свит с землей и тп и тд. Связи с чипом совсем нет. И программатор их (чипы) не берет. Сегодня пробовал подать внешнюю частоту на вход осциллятора. При 14 МГц возрастает потребление чипа, где то ~1Вт, связи с чипом не появилось. Пробовал осциллом расматривать сигналы программирования в chip_prog+. Сейчас ищу спецификацию на алгоритм внешнего программирования / стирания dsPIC30F. Ну у меня шнур 30 см из пачпорта, но я использую свой клон. Кстати а с другими кристаллами, например ПИС18 связь есть? Можна рассмотреть некую последовательность на время отклика программируемого чипа. Самое высокое у старых ПИК16, меньше у ПИК18 в новых еще меньше у ПИК24. Тут еще, надеюсь все питания соединены в том числе и аналоговые если есть(я не смотрел на этот) и с питанием платы все в порядке. Так для чистоты эксперимента, я бы попробовал подпаяться прямо на проводками на линии программирования и питания и попробовать в этом варианте. Конкретно по dsPIC30F ничего сказать не могу но стоит посмотреть на линию сброса как на форму фронта так и уровень сигнала надо посмотреть. По сбросу ИСД2 выставляет свое питание от таргета либо от внутреннего преобразователя через 100 Ом. Был момент, что с ПИК18 было все в порядке а с ПИК24 связи не было в режиме отладчика хотя программирование проходило успешно. Довольно маловероятно что все шесть dsPIC30F чипов умерли, а поскольку ИСД2 один может тут скорее проблема. Помню сам тут бодался тяжко было, но и помочь очень тяжело.
|
|
|
|
|
Feb 28 2009, 14:09
|
Местный
  
Группа: Свой
Сообщений: 464
Регистрация: 1-10-04
Из: Челябинск
Пользователь №: 751

|
Пиками никогда не занимался и соответственно запасов нет, заказал еще. Все питания и тд есть - не первый день замужем  . На неделе попробую логическим анализатором просмотреть алгоритм работы chip_prog+, далее думаю на патернгенераторе сделать последовательность для ввода dsPIC30F в Enhanced ICSP Mode и попадовать различные команды. Кабель паяется прямо к контрольным точкам EMUC и EMUD возле панели с микросхемой, эти линии длинной 5 мм и более в схеме не используются. По линии MCLR кроме PULL_UP 4,7kOm пока ничего не смонтированно, после отладки ПО установится микросхема супервизора. Есть один непонятный для меня момент. Как ICD2 работает с ресетом. Это вход или выход в режиме работы с dsPIC? По идее вход в Enhanced ICSP Mode происходит при активном ресете с подачей 32 бит ключа, а я 0 в своем ICD2 на MCLR не видел ни в одном режиме работы.
|
|
|
|
|
Feb 28 2009, 14:51
|
Местный
  
Группа: Свой
Сообщений: 460
Регистрация: 5-10-06
Из: Херсон
Пользователь №: 21 006

|
Цитата(Stas @ Feb 28 2009, 18:09)  Есть один непонятный для меня момент. Как ICD2 работает с ресетом. Это вход или выход в режиме работы с dsPIC? По идее вход в Enhanced ICSP Mode происходит при активном ресете с подачей 32 бит ключа, а я 0 в своем ICD2 на MCLR не видел ни в одном режиме работы. На ресете присутствуют три ключа - Коммутация в ноль - коммутация к питанию таргета, поєтому PULL_UP 4,7kOm в принципе можно исключить. - Коммутация напряжения программирования. При попытке конекта на MCLR должно появиться напряжение программирования и потом уходит в ноль. Посмотрите напряжения которые измеряет ИСД2 иногда это помогает. Programmer/setting на вкладке status можно попробовать тест а на вкладке power можно посмотреть реальные напряжения.
|
|
|
|
|
Mar 1 2009, 17:52
|
Местный
  
Группа: Свой
Сообщений: 460
Регистрация: 5-10-06
Из: Херсон
Пользователь №: 21 006

|
Цитата(Stas @ Mar 1 2009, 20:17)  А кто нибудь может поделиться схемой микрочиповского ICD2 ?? Тут можно посмотреть одну из первых версий. И на микрочипе приводили схему выходных буферов одного из последних вариантов.
|
|
|
|
|
Mar 2 2009, 17:18
|
Местный
  
Группа: Свой
Сообщений: 460
Регистрация: 5-10-06
Из: Херсон
Пользователь №: 21 006

|
Цитата(Stas @ Mar 2 2009, 17:23)  Все. Разобрался. Плохой контакт в разъеме ICD2 по линии MCLR, хотя напряжения в Programmer/setting показывал нормально. В результате ICD2 пытался коннектится к контроллеру с MCLR=VCC. А фитоновский программатор реально dsPIC не берет, хотя в списке микросхем они есть. DL36 - спасибо. Пожалуйста Цитата(Stas @ Mar 2 2009, 17:23)  Сейчас бъюсь с внешним резонатором - не генерит собака. Просто обратите внимание Код __builtin_write_OSCCONH(0x02); // Встроенная функция С30 __builtin_write_OSCCONL(0x01); // переключения генератора Я сегодня макрос для работы с поправил поправил для С30, думаю понравиться.
|
|
|
|
|
Mar 3 2009, 16:13
|
Местный
  
Группа: Свой
Сообщений: 460
Регистрация: 5-10-06
Из: Херсон
Пользователь №: 21 006

|
Цитата(Stas @ Mar 3 2009, 18:04)  Тогда еще один вопрос. Я хочу чтоб контроллер стартовал с источником тактового сигнала HS w/PLL 32x и соответственно прошиваю конфигурационные биты ячеек FOSCSEL, FOSC. Генерации на линиях OSC1 и OSC2 я не наблюдаю (пробовал менять кварц - не помагает (14МГц)) . Насколько это правильный подход? Или требуется стартовать в режиме с FRC (или уходить по монитору FSCM на FRC) а потом настраивать внешний осциллятор в регистре OSCCON и переключаться на него? Не нашел в даташите такого, надо пробовать... О ds30 в этом отношении ничего сказать не могу. Я стартую на внутреннем без ПЛЛ и затем перехожу на внешний при необходимости с ПЛЛ.
|
|
|
|
|
Mar 7 2009, 07:41
|
Местный
  
Группа: Свой
Сообщений: 460
Регистрация: 5-10-06
Из: Херсон
Пользователь №: 21 006

|
Цитата(Stas @ Mar 6 2009, 19:38)  Где и как можно посмотреть ревизию используемого кристалла? Например с помощью ИСД2 Connecting to MPLAB ICD 2 ...Connected ICDWarn0030: MPLAB ICD2 is about to download a new operating system. If MPLAB IDE is just starting, it will appear to "hang" at the splash screen. Please be patient. MPLAB IDE will finish it's initialization after the OS is downloaded. (Note: You may wish to select to ignore this warning in the future.) Downloading Operating System Connecting to MPLAB ICD 2 ...Connected Setting Vdd source to target Target Device PIC24FJ64GA002 found, revision = Rev 0x3003...Reading ICD Product ID Running ICD Self Test ...Passed ...Download Operating System Succeeded Setting Vdd source to target Target Device PIC24FJ64GA002 found, revision = Rev 0x3003...Reading ICD Product ID Running ICD Self Test ...Passed Так на всякий случай конфигурация для PIC24FJ64GA002 и переключение Код Nop();Nop();Nop();Nop();Nop(); //_CONFIG2( IESO_OFF & FNOSC_FRC & FCKSM_CSECMD & OSCIOFNC_OFF & IOL1WAY_ON & I2C1SEL_SEC & POSCMOD_HS) // FNOSC_FRC Fast RC oscillator // FCKSM_CSECMD Only clock switching enabled // POSCMOD_HS HS oscillator __builtin_write_OSCCONH(0x02); // Initiate Clock Switch to Primary // Oscillator with PLL (NOSC=0b011) __builtin_write_OSCCONL(0x01); // Start clock switching TimeOutTmp = 0xFFFF; do { if (!(_OSWEN)) break; Nop();Nop();Nop();Nop();Nop(); } while (--TimeOutTmp);
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|