|
Как реализовать ICSP для PIC18CXXX? |
|
|
|
Dec 1 2008, 13:11
|
Участник

Группа: Новичок
Сообщений: 23
Регистрация: 27-09-08
Пользователь №: 40 529

|
Приветствую! Опишите плз алгоритм перепрограммирования микроконтроллера PIC с использованием ICSP (In-Circuit Serial Programming). Есть ли какой нибудь готовый Си-шный код (ANSI, ну или для люой платформы) который реализует алгоритм программирования? То есть необходим сам "переход" из данных в HEX файле в подачу сигналов ("Дерганье"))) ножек CLOCK и DATA PIC'a? Приветствуются любые сведения, русскоязычные мануалы, примеры кода и ссылки по теме  Заранее спасибо
|
|
|
|
|
Dec 2 2008, 05:54
|

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

|
Цитата(Fledgling @ Dec 1 2008, 15:11)  Приветствую!
Опишите плз алгоритм перепрограммирования микроконтроллера PIC с использованием ICSP (In-Circuit Serial Programming). Вообще то на сайте MICROCHIP есть подробная спецификация программирования, три линии (MCLR, PGD, PGC + питание). http://www.microchip.com/stellent/idcplg?I...amp;nodeId=1407Посредством доступного программатора (MPLAB ICD2/ICD3/REAL-ICE или клона, или других программаторов сдесь в форуме ссылки были) - уже готовые рещения. Или Вы хотите велосипед поизобретать - тогда удачи.
--------------------
"Для того чтобы избежать критики, надо ничего не делать, ничего не говорить и никем не быть" "Каждый из нас бывает дураком по крайней мере пять минут в день; мудрость заключается в том, чтобы не превысить лимит." Элберт Хаббард
|
|
|
|
|
Dec 2 2008, 06:01
|
Участник

Группа: Новичок
Сообщений: 23
Регистрация: 27-09-08
Пользователь №: 40 529

|
Цитата(volodya @ Dec 2 2008, 10:54)  Посредством доступного программатора (MPLAB ICD2/ICD3/REAL-ICE или клона, или других программаторов сдесь в форуме ссылки были) - уже готовые рещения. Или Вы хотите велосипед поизобретать - тогда удачи. К сожалению, есть необходимость изобрести велосипед  Программатор должен быть встроен в устройство, так как у PIC'a нет выходов на внешние разьемы, есть выход через интерфейс CAN у другого процессора, который и должен программировать PIC данными, поступившими ему по CAN.
Сообщение отредактировал Fledgling - Dec 2 2008, 06:02
|
|
|
|
|
Dec 2 2008, 08:23
|
Участник

Группа: Новичок
Сообщений: 23
Регистрация: 27-09-08
Пользователь №: 40 529

|
Цитата(_Pasha @ Dec 2 2008, 12:18)  Boot loader не катит ? Ммм... а что это?
|
|
|
|
|
Dec 2 2008, 10:55
|
Участник

Группа: Новичок
Сообщений: 23
Регистрация: 27-09-08
Пользователь №: 40 529

|
Цитата(_Pasha @ Dec 2 2008, 14:03)  В том смысле, что написАть загрузчик, который будет получать команды с описанного Вами МК и менять прошивку самостоятельно. гугл: pic18 self-programming boot loader и я не думаю, что Вы ничего не поймете.  Такой подход будет проще программирования через ICPS? Идея состояла в том, чтобы вообще не пришлось изучать программирование PIC'a, а просто подавать с микроконтроллера (с изученными системами команд) сигналы через последовательный интерфейс. Или я что то неправильно понял?  Судя по описанию можно загрузить стандартный бутлоадер который будет также принимать данные по последовательному порту?
Сообщение отредактировал Fledgling - Dec 2 2008, 10:59
|
|
|
|
|
Dec 2 2008, 11:38
|
;
     
Группа: Участник
Сообщений: 5 646
Регистрация: 1-08-07
Пользователь №: 29 509

|
Цитата(Fledgling @ Dec 2 2008, 14:55)  Или я что то неправильно понял?  Судя по описанию можно загрузить стандартный бутлоадер который будет также принимать данные по последовательному порту? Дык, или я не понял... 1. Данные он может принимать откуда угодно породившему его программеру. 2. Т.к. это программа, то она жрет флеш-память. Это минус. В общем, читайте ICSP. Выбирайте.[attachment=27330:attachment]
|
|
|
|
|
Dec 2 2008, 12:01
|
Участник

Группа: Новичок
Сообщений: 23
Регистрация: 27-09-08
Пользователь №: 40 529

|
Цитата(_Pasha @ Dec 2 2008, 16:38)  Дык, или я не понял... 1. Данные он может принимать откуда угодно породившему его программеру. 2. Т.к. это программа, то она жрет флеш-память. Это минус.
В общем, читайте ICSP. Выбирайте.[attachment=27330:attachment] Спасибо!:) Но все таки по Вашей оценке - который метод более трудоемок при минимальном знании PIC'a? И еще: мануалы по ICSP я изучил, прочитал про 4х битные команды и прочее но общий алгоритм перепрошивки не понял. Нельзя ли обьяснить наиболее "чайницким" языком?
Сообщение отредактировал Fledgling - Dec 2 2008, 12:05
|
|
|
|
|
Dec 2 2008, 20:21
|

Частый гость
 
Группа: Свой
Сообщений: 133
Регистрация: 30-04-07
Из: DP.UA
Пользователь №: 27 419

|
Все равно не пойму смысла применения ICSP в этом случае. Простенький бутлодер (а навороченного в данном случае и не требуется) занимает не так уж и много места в памяти, что бы такой огород городить. Вот пусть второй МК и принимает данные, проверяет их правильность (а это нужно делать обязательно в обоих случаях) и отдает их ПИКу. Хошь по ЮАРТу, а хошь по любому другому интерфейсу, какой удобнее, Дешево и сердито. Не тратится лишних выводов (выводы LVP, PGC, PGD), не требуется другая обвязка (Пр.Напр.), да и алгоритм бутлодера попроще алгоритма ICSP. Так что выбирайте...
Сообщение отредактировал VDLab - Dec 2 2008, 20:23
|
|
|
|
|
Dec 3 2008, 06:49
|

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

|
Цитата(Fledgling @ Dec 2 2008, 12:55)  Такой подход будет проще программирования через ICPS? Идея состояла в том, чтобы вообще не пришлось изучать программирование PIC'a, а просто подавать с микроконтроллера (с изученными системами команд) сигналы через последовательный интерфейс. Можнл согласиться с VDLab bootloader потребует минимума аппаратных затрат, хотя без знаний программирование PIC не обойтись. A FLASH Bootloader for PIC16 and PIC18 Devices - Name: AN851 - пример на http://www.microchip.com/stellent/idcplg?I...ppnote=en012031там вреде пример кода был. А программатор будет гемороистее городить, - хотя может зависить от устройства.
--------------------
"Для того чтобы избежать критики, надо ничего не делать, ничего не говорить и никем не быть" "Каждый из нас бывает дураком по крайней мере пять минут в день; мудрость заключается в том, чтобы не превысить лимит." Элберт Хаббард
|
|
|
|
|
Dec 3 2008, 06:57
|
Участник

Группа: Новичок
Сообщений: 23
Регистрация: 27-09-08
Пользователь №: 40 529

|
Цитата(volodya @ Dec 3 2008, 11:49)  Можнл согласиться с VDLab bootloader потребует минимума аппаратных затрат, хотя без знаний программирование PIC не обойтись. A FLASH Bootloader for PIC16 and PIC18 Devices - Name: AN851 - пример на http://www.microchip.com/stellent/idcplg?I...ppnote=en012031там вреде пример кода был. А программатор будет гемороистее городить, - хотя может зависить от устройства. Аппаратная часть уже готова, в нем обвязка для ICSP была выполнена "на будущее", ранее PIC программировался вскрытием корпуса и прямым подсоединением таблетки-программатора. Возникла необходимость программировать PIC не вскрывая блока, а аппаратную часть менять уже поздно  Поэтому видимо придется использовать "чистый" ICSP
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|