реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> ICD2 не шьет в PIC16f628A, не шьет и все тут... выдает ошибку.
Anty
сообщение Jun 10 2008, 20:44
Сообщение #1


Участник
*

Группа: Новичок
Сообщений: 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 так там вообще выдает какие-то ошибки не понятные...

Вопрос: может кто подскажет, в чем может быть ошибка (если кто дочитал до конца smile.gif )
Заранее пасиб.
P.S. там видел похожую тему, так там никто конкретно ничего и не сказал. Так я решил подробоно написать, свою тему создал.

Сообщение отредактировал Anty - Jun 10 2008, 20:47
Go to the top of the page
 
+Quote Post
Angelo
сообщение Jun 11 2008, 02:51
Сообщение #2


Участник
*

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



ICD отвалился в самом начале когда читал ID, ожидалось 83h, прочиталось 00h. Он не видет МК вообще, в соседней ветке пару дней назад была похожая проблема.
Go to the top of the page
 
+Quote Post
volodya
сообщение Jun 11 2008, 04:54
Сообщение #3


Частый гость
**

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



Цитата(Anty @ Jun 10 2008, 23:44) *
Доброго всем времени суток. Проблема: использую PIC16f628A, в качестве программатора - ICD2. (пробовал ICD2 в режиме debugger там вообще тьма). значит, что и как я делал.

Вопрос: может кто подскажет, в чем может быть ошибка (если кто дочитал до конца smile.gif )
Заранее пасиб.
P.S. там видел похожую тему, так там никто конкретно ничего и не сказал. Так я решил подробоно написать, свою тему создал.


1-По дебургеру отвечали - спец чип надо(628А сам по себе не дебужит)
2-Питание свое(БП для ICD2) или запитать устройство.
3-Проверте ноги MCLR, PGD,PGC - в идеале должны быть подключены только к ICD2(личный опыт) при программировании (есть исключения - посмотрите руководство пользователя кое-как резисторы разрешались). После программирования восстановить покл. к целевому устр.
4-Чип идентифицировать должен - иначе не запишет. Если нет идентификации - неверно подсоединение или питание.
Удачи!

Сообщение отредактировал volodya - Jun 11 2008, 04:55


--------------------
"Для того чтобы избежать критики, надо ничего не делать, ничего не говорить и никем не быть"
"Каждый из нас бывает дураком по крайней мере пять минут в день; мудрость заключается в том, чтобы не превысить лимит." Элберт Хаббард
Go to the top of the page
 
+Quote Post
Anty
сообщение Jun 12 2008, 07:22
Сообщение #4


Участник
*

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



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

Сообщение отредактировал Anty - Jun 12 2008, 07:23
Go to the top of the page
 
+Quote Post
volodya
сообщение Jun 12 2008, 09:32
Сообщение #5


Частый гость
**

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



Цитата(Anty @ Jun 12 2008, 10:22) *
Да, вот еще вопрос назрел. Я прошил, а потом что? отсоединяю от программатора, и оно должно работать, или сразу с подсоединенным должно.


У Вас MCLR = ON - работать не будет пока не подтянуть вывод к +5В (ICD может из оболочки управлять этим выводом "Release from Reset" если две др. ноги не нужны - можно без отключения поиграться).
Если MCLR = internal то после прошивки может заработать.

P.S. - Если вновь собранное устройство заработало при первом включении - значит колич. ошибок в нем четное, если не заработало - нечетное (1-осталась нескомпенсированная).
biggrin.gif


--------------------
"Для того чтобы избежать критики, надо ничего не делать, ничего не говорить и никем не быть"
"Каждый из нас бывает дураком по крайней мере пять минут в день; мудрость заключается в том, чтобы не превысить лимит." Элберт Хаббард
Go to the top of the page
 
+Quote Post
DL36
сообщение Jun 14 2008, 10:47
Сообщение #6


Местный
***

Группа: Свой
Сообщений: 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. В моем клоне для этого случая диод стоит.
Go to the top of the page
 
+Quote Post
Anty
сообщение Jun 14 2008, 19:58
Сообщение #7


Участник
*

Группа: Новичок
Сообщений: 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а). Теперь буду двигаться к поставленной задаче, а не искать пути к ее реализации.
Go to the top of the page
 
+Quote Post
DL36
сообщение Jun 15 2008, 08:34
Сообщение #8


Местный
***

Группа: Свой
Сообщений: 460
Регистрация: 5-10-06
Из: Херсон
Пользователь №: 21 006



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

В Вашей схеме параллельно включаются два источника питания, естествено если USB источник меньше то он и садит второй, ищите.

Цитата
А вообще, у меня уже моя супер простенькая программка заработала. Поменял PIC на другой. А то тот какой-то паленый попался, что ли. Да и стабилизатор пока выкинул( 5.5В допустимо для PICа). Теперь буду двигаться к поставленной задаче, а не искать пути к ее реализации.

Не надо прятаться от проблемы, надо решать проблему.
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 21st July 2025 - 03:30
Рейтинг@Mail.ru


Страница сгенерированна за 0.02154 секунд с 7
ELECTRONIX ©2004-2016