Заказать прошивку

 





 

 

При программировании не забывайте про константу(osccal), которая записана в последней ячейке данных пика.

Оsccal - представляет собой 16-ти ричное значение калибровки внутреннего генератора МК, с помощью которого МК отчитывает время при выполнении своих программ...

При покупке микроконтроллера (МК) считайте с него данные и запишите константу на листочек или на микроконтроллер!

Это очень важно т.к. если удалите константу при следующем программировании, pic работать не будет либо будет, но не так как должен.

В МК старшего семейства константы нету, так, что не удивляйтесь.

На рисунке ниже показано место расположения этой константы:

Константа может не пригодится когда используется внешний кварц.

В процессе прошивки (когда нажали уже на кнопку "прошить") может (а может и не спросить) вылезти следущее сообщение (см. рис.ниже ), надо нажимать НЕТ. При использовании Icprog 1.06C (я ее использую) всегда спрашивает, заменить либо нет.

Когда вы загружаете прошивку в программу то в последней ячейке памяти выставляется "3FFF" т.к. в прошивке значение вашей константы не указано (она у каждого МК своя)!

Вот программа и спрашивает будете использовать константу "3FFF" или "3424".

Видео - как прошить PIC от начала до конца!

В микроконтроллерах PIC16F628, PIC16F628A, PIC16F630 константы нету, проверено на практике.

В PIC16F676 константа есть!

Видео о прошивке PIC16F676. В видео продемонстрирован бит защиты, прошивка с ним и без него.

 

При использовании внешнего кварца (или RC) константа ненужна, можно в таких схемах использовать pic в которых была утеряна константа!

Биты конфигурации:


WDT - сторожевой таймер
PWRT - задержка для стабилизации генератора при вкючении питания
MCLR - использовать вход внешнего сброса микроконтроллера (reset)
BODEN - задейств-ть сброс при снижении напр. питания
CP - защитить код программы от считывания
CPD - защитить содержимое EEPROM от считывания


  При написании программы для МК, программист, прежде всего, выставляет бит защиты, далее программа (исходник) компилируется (обычно в расширение .HEX) и зашивается в МК, следовательно в отличии от AVR, выставлять биты конфигурации при прошивке pic-ов НЕ НАДО!

В PIC предусмотрен бит защиты:

При прошивке микроконтроллера, если установить (включить) бит защиты , то при считывании данных (после прошивке) выдаст программа ошибку! В этом и заключается смысл бита защиты - невозможно передрать прошивку с микроконтроллера. Эта функция очень удобна для программистов. Добустим Вы написали прошивку и решили другим продавать ее, но если Вы продатите просто прошивку HEX то на следующий день она облетит весь интернет и Ваши авторские права будут нарушены, но а если Вы зашьете в ПИК прошивку и поставите бит защиты, то больше никто не сможет скопировать прошивку!

На рисунке ниже показан бит защиты и ошибка которая выскакивает после прошивки:

Если после прошивки, с использованием бита защиты, считать данные с МК то вот, что получится:

Код Защиты

Особенности для модификаций с буквой "А" pic16F84A (статья дописывается)

 

Если утеряна константа, что делать?

Способ первый: пробывать поставить от другого МК константу или наугад :) , мы знаем, что все константы начинаются на 34 далее две цифры xx которые надо угадать.

Способ второй: порадует владельцев программатора  PICKit 2, появилось приложение для восстановления калибровочной константы для PIC16F630/676, читать тут.

Способ третий: Восстановление OSSCAL для 12F629 & 12F675 (проверенный и простой )

С целью оказания помощи тем, кто потерял константу и хочет ее восстановить, оставляйте в комментариях тип МК и константу.

 

 

Для прошивки можно использовать бесплатную программу, наверное самая популярная - icprog, версия последняя 1,6В.

Скачать icprog106B + описание русс + драйвер для ХР (вообще и без него работает, но могут быть нюансы...)

Настраивается программа индивидуально к каждому программатору в отдельности!

Далее будет...

Обсуждения на ФОРУМЕ


 
Дата: 20-10-2009, 21:06, Просмотров: 142502, Автор: Nikolai4
Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь. Мы рекомендуем Вам зарегистрироваться либо войти под своим именем.

   
Barik # 91
8 мая 2011 20:40  
 
Программатор PoniProg я проверял как указано в инструкции к нему.
Т.е.при подаче на транзисторы напряжения,они открываются и все напряжения присутствуют на панельке контроллера.
А вот насчет настройки,не знаю,я просто запускал IcProg и ,что там выставлять понятия не имею.Просветите с настройкой программы.
  •    •     


   
Barik # 92
9 мая 2011 18:24  
 
Все работает,просто в компе были отключены порты.
  •    •     


   
vexa # 93
19 мая 2011 14:44  
 
А кто подскажет как программировать pic в линукс ??? Какие проги юзать? Ни ICProg ни PonyProg не работают (запускал в Wine) Неужели придётся ставить винду cool
  •    •     


   
Nikolai4 # 94
19 мая 2011 18:26  
 
не видел программ для linux. Ставь вторую винду XP, при запуске компа будешь выбирать какую винду запустить.
  •    •     


   
vasilijj # 95
29 мая 2011 19:42  
 
Купил новый PIC 16F73, при считывании программой WinPic800, были все нули. Проверил программатор на других микросхемах, все работает. Попробовал записать прошивку прибора, с странички http://www.bezkz.su/publ....-0-216, на MK PIC 16F73, всё записалось. Вопрос, есть ли константа в этом МК, теперь её точно нет, и будет ли работать прибор без константы. Заранее спасибо.
  •    •     


   
Nikolai4 # 96
29 мая 2011 22:26  
 
PIC 16F73 константы нету, переходим обсуждать на форум, ссылка в статье
  •    •     


   
Ильдар # 97
17 июля 2011 18:19  
 
PIC12F629 - 3430
  •    •     


   
sasha19722201 # 98
29 декабря 2011 08:42  
 
Здравствуйте!
Купил планарную PIC16F676 и при считывании Тритоном последний байт вообще пуст это нормально?
  •    •     


   
Nikolai4 # 99
29 декабря 2011 23:25  
 
sasha19722201, должна быть константа попробуй несколько раз подряд считать
  •    •     


   
sasha19722201 # 100
30 декабря 2011 07:37  
 
Nikolai4,Пробовал несколько раз и даже на двух пиках - последний байт вообще пуст!
  •    •     


   
Nikolai4 # 101
30 декабря 2011 18:30  
 
значит два варианта:
1) либо проверить на другом программаторе
2) либо использовать в схемах с внешним кварцем

можно попробовать восстановить....
  •    •     


   
dmi680 # 102
7 февраля 2012 07:20  
 
как снять код защиты с PIC12C508A, пробежался по форуму посмотрел советы, не помогает.
  •    •     


   
yevhen # 103
15 февраля 2012 13:46  
 
Доброго дня!
Попал в руки программатор PicKit 2
Пытаюсь немного разобратся в программировании на ASM с помощю MPLAB IDE
Запрограммировал PIC12F629 простой программкой:

LIST P=12F629 ; list directive to define processor
#INCLUDE <P12F629.INC> ; processor specific variable definitions

__config _WDT_OFF & _XT_OSC & _CP_ON & _CPD_OFF & _BODEN_OFF & _MCLRE_OFF & _PWRTE_ON

org 000
Start:
bsf STATUS,RP0 ; select Register Page 1
bcf GPIO,0 ; make IO Pin C0 an output
bcf STATUS,RP0 ; back to Register Page 0
bsf GPIO,0 ; turn on LED C0 (DS1)
goto $ ; wait here
end

Пока контроллер в программаторе все работает (правда не всегда подозревю что где-то плохои контакт).
Ставлю его в макетницу ничего не работает :(

Может кто подскажет что не так?
Зарание спасибо!
  •    •     


   
Nikolai4 # 104
15 февраля 2012 23:36  
 
yevhen, такие вопросы только на ФОРУМЕ!!!
  •    •     


   
virus-error # 105
9 марта 2012 17:50  
 
нужна константа на 16F84A
  •    •     


   
Nikolai4 # 106
9 марта 2012 18:42  
 
virus-error, ее там нет.
  •    •     


   
virus-error # 107
9 марта 2012 19:17  
 
да спасибо я уже разобрался , я вот у вас читал что если читает 0000 то она закрыта можно как то всетаки прошить можно
  •    •     


   
Nikolai4 # 108
9 марта 2012 19:55  
 
virus-error, он прошивает, но считать не может, еще такие нули выводит когда неправильно работает программатор...
  •    •     


   
virus-error # 109
9 марта 2012 20:32  
 
WinPic800 выдает 3FFF . програматор пакупной в камплекте ишол WinPic800 он у меня не прошивал у друга прошил , думал винда у меня кривая переустановил такая же шляпа, пробывал на других кампах не хера , програматор от USB
WinPic800 когда шьет на 93% останавливается и спустя время выдает ошибку , микросхему определяет проходит тест
ЧТО ДЕЛОТЬ
  •    •     


   
styxbbc # 110
14 марта 2012 06:32  
 
всем доброго дня!

помогите разобраться в чем проблема. собрал программатор PonyProg, проверил железо все нормально. Пытаюсь прошить 16F628A. С родной прогой выдается ошибка -24 устройство необноруженно. В IC-prog 1.6B, скачена по ссылке в статье, выдает ошибку:
Ошибка проверки данных по адресу 0000h!
CPD и CP галочки убранны.

настройки программы сделал согласно инструкции прилагаемой к архиву. Единственное не совсем понятно примечание относительно соединения PGM c GMD
  •    •     


   
Nikolai4 # 111
14 марта 2012 07:57  
 
решение проблем на форуме! не работает программатор
  •    •     


   
Hungry fox # 112
6 апреля 2012 23:34  
 
no recourse Не могу прочитать константу у недавно купленных микроконтроллеров Pic16F877A-I/P.. Одни нули (0000) в обоих окнах после чтения! Не знаю даже что делать.. Может быть на заводе поставили защиту от чтения, но зачем?

no Привет всем! Скажите пожалуйста: а Pic16F877A-I/P имеет вообще эту константу которую нужно записать на листочек или нет?

wassat Программатор PX-200 OEM-PIC kit2 Programmer/
Программатор исправен. Способен писать и читать. Это я знаю из того, что загружаю программу и читаю её с одного микроконтроллера который был прошит мною в ущерб затирания константы. Программы можно писать, читать, стирать. Только не работает интервал времени таймера (светодиод моргнёт и выключается до нового включения комплекса, или по другой программе может включится и постоянно гореть, а команду Pause и GOTO выполнять уже не способен..). Но как быть с ещё не затёртыми мною новыми микроконтроллерами, на которых вместо 3FFF одни 0000? Константу-то в конце новых не видно, такие-же нули, что и в начале..

winked С нитерпением жду совета. За раннее спасибо!
  •    •     


   
Nikolai4 # 113
7 апреля 2012 09:40  
 
Hungry fox, константы нет, но все равно должно быть все 3FFF а не 0000, скорее всего программатор не работает или не настроен или неправильно подключен к микроконтроллеру.
  •    •     


   
Hungry fox # 114
8 апреля 2012 14:08  
 
no wassat Всем доброго дня. Программатор PX-200 OEM-PIC kit2 Programmer.
Если он не исправен, как-же с него удаётся читать другие микроконтроллеры той-же серии и Pic16F874A? А ведь он пишет, читает, стирает. Да и как-же подругому подключить программатор к микроконтроллеру, если там стандартный провод? А если там стоит бит защиты на чтение кода программы и данных Eeprom. Данные ведь тоже можно защитить как-то? Может быть в магазине мне подсунули не новые микроконтроллеры? Ведь не удаётся прочитать данные именно с этих, новых микроконтроллеров! Но я не могу до сих пор поверить в то что при покупке в магазине радиоэлектронники, можно купить что-то не надлежащего качества. Может всё-таки как-то удасться перименить нули на 3FFF без перепрошивки. Или мне нужно поменять их в магазине. Гарантия на них 2-недели, а до истечении срока осталось 1-неделя.

no Программатор PX-200 OEM-PIC kit2 Programmer
А как-же на нём удается читать информацию с других микроконтроллеров той-же серии и Pic16F874A? Может быть мне в магазине продали просто не новые микроконтроллеры? У меня гарантия на них осталась неделя. Может-быть мне их поменять на другие? Вообще, могут-ли быть такие казусы с микроконтроллерами купленными в официальном магазине электронных компонентов?
  •    •     


   
Nikolai4 # 115
8 апреля 2012 19:24  
 
Ну , давайте рассуждать логично - если программатор рабочий, подключен микроконтроллер правильно, программа настроена правильно, то остается проблема только в микроконтроллере! Попробуйте записать на него , что-то и считать, что получится.
  •    •     


   
Hungry fox # 116
12 апреля 2012 20:23  
 
angry Можно записать, можно считать.. Программа записывается, программа читается.., программа стирается и вновь записывается.. Но константу на нём не найти! Микроконтроллер инвалид.. Он не способен выполнять не одну программу. Он читается, пишется, стирается, но не работает! Боюсь теперь покупать микроконтроллеры, их отказываются проверять при продаже.. Вообще, нужно производителям писать константу на каком-нибудь сопроводительном товар (микроконтроллер) листе! Жаль что они не хотят облегчить жизнь тем, кто интересуется их товаром..
  •    •     


   
Nikolai4 # 117
12 апреля 2012 21:18  
 
Hungry fox, так ты статью читал, первое - константы в твоем мк нету, и не во всех контроллерах она есть, второе - даже если запорол константу собираешь схемы с внешним кварцем или пробуешь восстановить константу
  •    •     


   
linomax # 118
23 апреля 2012 20:11  
 
Подскажите,кто-нибудь,пожалуйста константу на PIC16F676,хоть приблизительно!Какие могут быть?
  •    •     


   
Nikolai4 # 119
23 апреля 2012 20:46  
 
linomax, поставь 3434
  •    •     


   
linomax # 120
24 апреля 2012 19:42  
 
Nikolai4,
Спасибо за подсказку.Если не трудно,объясни,где ставится внешний кварц на PIC16F676?Или может какую-нибудь ссылочку подскажешь?Буду очень благодарен!
  •    •     

Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.
 
Отключаемые счетчики электроэнергии на пульте. Все с документами пломбами, гарантией и без посредников!

Обновления

Конкурсные работы:

1) Суточный термостат для отопления

Сообщения Форума Ответов
бaкoмeтр 2011
Суточный термостат для отоплен ... 11
Электронные часы для автомобил ... 6
Паяльная станция 193
Бакометр 2 282
БакоТермоВольтоТахо и т. п. .. ... 271
Сборка и настройка самодельног ... 91
Микроконтроллер неизвестный ни ... 0
Стоит ли начинать работать с A ... 1
Универсальный бортовой компьют ... 300