|
|
  |
ICD2 не шьет в PIC16f628A, не шьет и все тут... выдает ошибку. |
|
|
|
Jun 10 2008, 20:44
|
Участник

Группа: Новичок
Сообщений: 26
Регистрация: 13-03-08
Пользователь №: 35 878

|
Доброго всем времени суток. Проблема: использую PIC16f628A, в качестве программатора - ICD2. (пробовал ICD2 в режиме debugger там вообще тьма). значит, что и как я делал. 1) написал простенькую прогу (чтобы просто посмотреть, как это дело работает) LIST P=16F628a #include <p16f628a.inc>
;__CONFIG _CP_OFF & _CPD_OFF & _LVP_OFF & _BODEN_ON & _MCLRE_ON & _PWRTE_OFF & _WDT_OFF & _XT_OSC
;----------------------------------------------------------------------------------------------------------------------------
TEMP EQU 21h R0 EQU 20h DEL EQU 25h ;------------ОБЩАЯ ИНИЦИАЛИЗВЦИЯ---------------- MAIN bcf STATUS,RP1 ;bank0 bcf STATUS,RP0 ;ok CLRF PORTA BSF STATUS,RP0 ;Выбор банка 1 MOVLW 0x00 MOVWF TRISA BCF STATUS,RP0 ;Выбор банка 0 ;--------------------- ;инициализация PORTB CLRF PORTB BSF STATUS,RP0 ;Выбор банка 1 MOVLW 0x00 ; <7:0> - выходы MOVWF TRISB ;BSF OPTION_REG,7 ; RBPU ; включили подтягтвающие регистры
; movlw 0x06 ;ustanivka portov v zifrovoe sostoianie ; movwf ADCON ;ok BCF STATUS,RP0 ;Выбор банка 0
BSF PORTB,3 WAIT GOTO WAIT ENDСлово конфигурации пробовал писать через _Config так оно ругается, пишет, что ранее не было обьявлено там всякие СР и CPD. Ну да ладно, решил это слово в MPLABE сам буду вводить в настройках. 2) подключаю питание на плату. Потом загружаю MPLAB. Потом подключаю в USB ICD2. затем жму connect. Тут начинается. Пишет: "Connecting to MPLAB ICD 2 ...Connected Setting Vdd source to target ICDWarn0020: Invalid target device id (expected=0x83, read=0x0) ...Reading ICD Product ID Running ICD Self Test ...Passed " хотя че та тут прошел.... ну да ладно. 3) выбираю в качестве программера ICD2. Жму очистить память, прочитать память. Пишет "Erasing Target Device... ...Erase Succeeded MPLAB ICD 2 Ready Reading... ICDWarn0038: When using auto-calculate write range, reads cover the entire memory range. Do you wish to continue? ...EEPROM ...Program Memory (0x0 - 0x7FF) . . Config Memory ...User ID Memory ...Read Succeeded MPLAB ICD 2 Ready "3) жму программить все это дело. программит и пишет: " Programming Target... ...Erasing Part ...Programming EEPROM Memory ...Programming Program Memory (0x0 - 0x7FF) ...Programming User IDs Verifying... ...Program Memory ...EEPROM ...User ID Memory ...Verify Succeeded Programming Configuration Bits .. Config Memory Verifying configuration memory... ...Verify Failed (and stopped) ICD0161: Verify failed (MemType = Config, Address = 0x2007, Expected Val = 0x2129, Val Read = 0x0) ICD0275: Programming failed. MPLAB ICD 2 Ready "Короче, как я понимаю, он прошивает все, а на слове конфигурации при проверке валится. При использовании в режиме debugger так там вообще выдает какие-то ошибки не понятные... Вопрос: может кто подскажет, в чем может быть ошибка (если кто дочитал до конца  ) Заранее пасиб. P.S. там видел похожую тему, так там никто конкретно ничего и не сказал. Так я решил подробоно написать, свою тему создал.
Сообщение отредактировал Anty - Jun 10 2008, 20:47
|
|
|
|
|
Jun 11 2008, 02:51
|
Участник

Группа: Участник
Сообщений: 58
Регистрация: 1-12-07
Пользователь №: 32 871

|
ICD отвалился в самом начале когда читал ID, ожидалось 83h, прочиталось 00h. Он не видет МК вообще, в соседней ветке пару дней назад была похожая проблема.
|
|
|
|
|
Jun 11 2008, 04:54
|

Частый гость
 
Группа: Свой
Сообщений: 194
Регистрация: 14-02-07
Из: УКРАИНА
Пользователь №: 25 344

|
Цитата(Anty @ Jun 10 2008, 23:44)  Доброго всем времени суток. Проблема: использую PIC16f628A, в качестве программатора - ICD2. (пробовал ICD2 в режиме debugger там вообще тьма). значит, что и как я делал. Вопрос: может кто подскажет, в чем может быть ошибка (если кто дочитал до конца  ) Заранее пасиб. P.S. там видел похожую тему, так там никто конкретно ничего и не сказал. Так я решил подробоно написать, свою тему создал. 1-По дебургеру отвечали - спец чип надо(628А сам по себе не дебужит) 2-Питание свое(БП для ICD2) или запитать устройство. 3-Проверте ноги MCLR, PGD,PGC - в идеале должны быть подключены только к ICD2(личный опыт) при программировании (есть исключения - посмотрите руководство пользователя кое-как резисторы разрешались). После программирования восстановить покл. к целевому устр. 4-Чип идентифицировать должен - иначе не запишет. Если нет идентификации - неверно подсоединение или питание. Удачи!
Сообщение отредактировал volodya - Jun 11 2008, 04:55
--------------------
"Для того чтобы избежать критики, надо ничего не делать, ничего не говорить и никем не быть" "Каждый из нас бывает дураком по крайней мере пять минут в день; мудрость заключается в том, чтобы не превысить лимит." Элберт Хаббард
|
|
|
|
|
Jun 12 2008, 07:22
|
Участник

Группа: Новичок
Сообщений: 26
Регистрация: 13-03-08
Пользователь №: 35 878

|
Я его победил. Прошивает. Подключил внешенее питание на Vdd. MCLR, PGC и PGD подсоединил только к ICD 2. Сразу при подключении нашел мой PIC и потом успешно прошивает. Только почему-то ничего не работает, но с этим уже буду разбираться. Там почему-то стабилизатор стал резко выдавать не 5В, а 4,2. Вроде по datasheet там 5 плюс минус надо. Да, вот еще вопрос назрел. Я прошил, а потом что? отсоединяю от программатора, и оно должно работать, или сразу с подсоединенным должно.
Сообщение отредактировал Anty - Jun 12 2008, 07:23
|
|
|
|
|
Jun 12 2008, 09:32
|

Частый гость
 
Группа: Свой
Сообщений: 194
Регистрация: 14-02-07
Из: УКРАИНА
Пользователь №: 25 344

|
Цитата(Anty @ Jun 12 2008, 10:22)  Да, вот еще вопрос назрел. Я прошил, а потом что? отсоединяю от программатора, и оно должно работать, или сразу с подсоединенным должно. У Вас MCLR = ON - работать не будет пока не подтянуть вывод к +5В (ICD может из оболочки управлять этим выводом "Release from Reset" если две др. ноги не нужны - можно без отключения поиграться). Если MCLR = internal то после прошивки может заработать. P.S. - Если вновь собранное устройство заработало при первом включении - значит колич. ошибок в нем четное, если не заработало - нечетное (1-осталась нескомпенсированная).
--------------------
"Для того чтобы избежать критики, надо ничего не делать, ничего не говорить и никем не быть" "Каждый из нас бывает дураком по крайней мере пять минут в день; мудрость заключается в том, чтобы не превысить лимит." Элберт Хаббард
|
|
|
|
|
Jun 14 2008, 10:47
|
Местный
  
Группа: Свой
Сообщений: 460
Регистрация: 5-10-06
Из: Херсон
Пользователь №: 21 006

|
Цитата(Anty @ Jun 12 2008, 10:22)  Я его победил. Прошивает. Подключил внешенее питание на Vdd. MCLR, PGC и PGD подсоединил только к ICD 2. Сразу при подключении нашел мой PIC и потом успешно прошивает. Только почему-то ничего не работает, но с этим уже буду разбираться. Там почему-то стабилизатор стал резко выдавать не 5В, а 4,2. Вроде по datasheet там 5 плюс минус надо. Это может быть, если напряжение USB 4.2. В моем клоне для этого случая диод стоит.
|
|
|
|
|
Jun 14 2008, 19:58
|
Участник

Группа: Новичок
Сообщений: 26
Регистрация: 13-03-08
Пользователь №: 35 878

|
Цитата(DL36 @ Jun 14 2008, 13:47)  Это может быть, если напряжение USB 4.2. Перепаял стабилизатор на новый, думал в нем дело, так новый тож самое выдает. Хотя, если подключать без нагрузки (просто проводками подрубил к источнику и тестером проверил), выдаем на выходе заявленные +5. Мистика, да и только... А как это может быть связано с USB ? Да еще я когда отключаю ICD2 от разрабатываемого устройства, на выходе вдруг 4,6. На входе 5,5. А вообще, у меня уже моя супер простенькая программка заработала. Поменял PIC на другой. А то тот какой-то паленый попался, что ли. Да и стабилизатор пока выкинул( 5.5В допустимо для PICа). Теперь буду двигаться к поставленной задаче, а не искать пути к ее реализации.
|
|
|
|
|
Jun 15 2008, 08:34
|
Местный
  
Группа: Свой
Сообщений: 460
Регистрация: 5-10-06
Из: Херсон
Пользователь №: 21 006

|
Цитата(Anty @ Jun 14 2008, 22:58)  Перепаял стабилизатор на новый, думал в нем дело, так новый тож самое выдает. Хотя, если подключать без нагрузки (просто проводками подрубил к источнику и тестером проверил), выдаем на выходе заявленные +5. Мистика, да и только... А как это может быть связано с USB ? Да еще я когда отключаю ICD2 от разрабатываемого устройства, на выходе вдруг 4,6. На входе 5,5. В Вашей схеме параллельно включаются два источника питания, естествено если USB источник меньше то он и садит второй, ищите. Цитата А вообще, у меня уже моя супер простенькая программка заработала. Поменял PIC на другой. А то тот какой-то паленый попался, что ли. Да и стабилизатор пока выкинул( 5.5В допустимо для PICа). Теперь буду двигаться к поставленной задаче, а не искать пути к ее реализации. Не надо прятаться от проблемы, надо решать проблему.
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|