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

 





 

 

При программировании не забывайте про константу(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, Просмотров: 141322, Автор: Nikolai4
Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь. Мы рекомендуем Вам зарегистрироваться либо войти под своим именем.

   
Nikolai4 # 121
24 апреля 2012 20:25  
 
linomax, читай описание на микроконтроллер, внешний кварц должен быть предусмотрен программистом т.к. настройки делаются при написании программы, какой кварц выбирать внутренний или внешний....
А вообще то вопросы на форуме задаем, ссылка в статье
  •    •     


   
linomax # 122
26 апреля 2012 14:51  
 
Nikolai4,Спасибо за информацию!
  •    •     


   
Hungry fox # 123
12 мая 2012 14:06  
 
Всем привет! Кто нибудь знает адрес в интернете, где размещён список с подробным указанием, какие микроконтроллеры имеют константу OSCCAL, а у которых её нет в наличии? А то не где немогу найти подобные списки, чтобы лишний раз не опасаться покупая новый микроконтроллер. Продавцы магазина радио-электроники то-же этого не знают..
  •    •     


   
ANTIK7 # 124
7 июля 2012 10:04  
 
спосибо Nikolai4, очень хорошая статья . сам впервый раз програмировал контролер затер осцилятор,нашел даную статью-зделал как тут расказано но на другом новом контролере pic12f629 и при считывании микросхемы выдает 3fff даже в последней клетке.как это можно понять? програматор заводской ПОНИ ПРО 2000 програма Icprog
  •    •     


   
Nikolai4 # 125
8 июля 2012 20:49  
 
попробуй несколько раз подряд считать и посмотреть
  •    •     


   
ANTIK7 # 126
9 июля 2012 08:42  
 
пробывал recourse таже петрушка, немогу понять вчем дело везде пишется что данный програматор их шет belay. а где еще можно посмотреть данное значение осцилятора.
  •    •     


   
vanchellos # 127
23 ноября 2012 22:31  
 
Nikolai4, к тебе обращаюсь за помощью. Прошил контроллер pic16f676, но потом хотел перепрошить и видимо как то прошляпил константу, либо куда то делась. Я знал про нее и записал 3420 на одном контроллере и второй потерпел видимо такое же крушение 3444. Суть в том что контроллеры после этого перестали считыватся и пишет fff во всех ячейках. И я не могу записать константу обратно в контроллер. Программатор Extra Pic - работает нармально, прошивал им pic16f628 - все работает. Программы использовал pony prog 1.06 и WINPIC800, все тоже.
  •    •     


   
Nikolai4 # 128
23 ноября 2012 23:42  
 
vanchellos, сотри контроллер и считай, если ffff попробуй еще раз считать, загрузи прошивку и потом вручную впиши константу и прошивай . если после считывания все ffff то может бит защиты стоит, после можешь попробовать проверить в схеме контроллер да же после ffff
  •    •     


   
vanchellos # 129
24 ноября 2012 23:29  
 
Nikolai4,
щас попробую и отпишусь

Nikolai4, В общем рассказываю: эти все бокопорства производились на работе, там стоит комп очень старенький, и он то видит то не видит контроллер, то читает - то не читает, и там все напоролось с прошивкой этих констант. Сгреб все домой на выходные и все пошло как по маслу, все прошилось с первого раза подставляя ихние константы. Так что это все виноват комп. Спасибо Nikolai4, за помощь
  •    •     


   
virus-error # 130
21 декабря 2012 21:33  
 
помогите , 16F676 , забыл вписать константу прошивал выбил ошибка , после не определялся микрокантролер просто не видел , использовал WinPic и IC Prog . програматор завадской, помогите востоновить микрокантролер

помогите , 16F676 , забыл вписать константу прошивал выбил ошибка , после не определялся микрокантролер просто не видел , использовал WinPic и IC Prog . програматор завадской, помогите востоновить микрокантролер

есть идея поцепить кварц на 2 и 3 вывод с кандерами мне кажется оживет
вот нашол статью http://radio-hobby.org/modules/news/article.php?storyid=934
и если ево применять в програматоре например в EXTRAPIC где проблематично прошивать 16F676
  •    •     


   
Nikolai4 # 131
21 декабря 2012 22:26  
 
virus-error, если он будет использоваться в схемах где стоит внешний кварц то константа не нужна
  •    •     


   
virus-error # 132
23 декабря 2012 14:29  
 
в схеме не будет кварца , это просто попытка воскресить микрокантролер
  •    •     


   
NIK-4444 # 133
25 декабря 2012 13:37  
 
Та же картина с 16F873 при стирании 0-ли, есть ли константа. Программатор G-540.
  •    •     


   
Alexey_st # 134
8 апреля 2013 09:27  
 
У 16F676 константа 3414
  •    •     


   
sergeu25 # 135
13 апреля 2013 14:10  
 
после чтения выдает ошибку не найденно значение установки осцылляторе

выдает ошибку ненайденно значение установки осцыллятора
  •    •     


   
Nikolai4 # 136
14 апреля 2013 15:29  
 
1) опробуй еще раз считать, повторно т.е. два раза подряд
2) попробуй другую программу
3) ...раз потерял то читай статью
  •    •     


   
kov0404 # 137
19 апреля 2013 12:26  
 
Подскажите ,пожалуйста, есть программатор PONYProg2000 . смогу ли я им прошить PIC16F74 или не стоит и пробовать?
  •    •     


   
sergeu876 # 138
12 мая 2013 14:05  
 
cкажите Я новичёк прошиваю 12f629 програмой IC-Prog выдоет сообщение
1 вы хотите загрузить по байтно что нужно отвечать
2 не найденно значение установки осцыллятора вы настаиваете на использование установки файла 3490
3 ошибка програмирования по адресу 0000
да кстати после прошивки когда контроллер сую в устройство неработает и напряжение резко падает от 5 до 1 новерное я сполил уже 3 пощету
програматор у меня EXTPA-PI C02
  •    •     


   
qwert615 # 139
9 сентября 2013 08:37  
 
Подскажите пожалуйста, из каких соображений выбирается параметр в окошке осциллятора? Я понимаю, что он отвечает за тактовый генератор, и как то зашивается в программу при ее написании. Но когда я хочу повторить какое то устройство и беру готовую программу, как мне узнать, что именно выбрать из раскрывающегося списка? Пробовал с разными параметрами - устройство не запускается, если этот параметр выбран не правильно.
  •    •     


   
Nikolai4 # 140
9 сентября 2013 15:50  
 
qwert615, ничего выбирать не надо, просто открываешь прошивку и прошиваешь.
  •    •     


   
qwert615 # 141
9 сентября 2013 18:41  
 
Nikolai4,
Большое спасибо за совет. Буду пробовать.
Правда хотел бы уточнить. Это как то зависит от программы? В недавнем прошлом я делал генератор импульсов на pic16f628a, прошивал с помощью icprog105 - это был мой самый первый опыт работы с микроконтроллерами. Так он не заработал, когда я оставил там тот параметр, который стоял по умолчанию. И лишь после того, как разработчик мне посоветовал указать там HS устройство начало работать.
Вот я теперь и думаю, как бы снова на грабли не наступить.
Еще раз спасибо!!!
  •    •     


   
Nikolai4 # 142
9 сентября 2013 19:27  
 
qwert615, все настройки делает программист когда пишет программу, значит он не все сделал.
  •    •     


   
qwert615 # 143
10 сентября 2013 20:49  
 
Nikolai4,
Теперь ясно. Еще раз спасибо!
Уже делаю плату для таймера. Скоро будет торжественный запуск.
  •    •     


   
denis-80 # 144
6 октября 2013 17:31  
 
pic 12f629 341C
  •    •     


   
vital357 # 145
28 ноября 2013 21:11  
 
программатор EXTRA PIC программа для программирования PICPgm Programmer пик опознаётся автоматом, никакую константу не стирает и пишет всё за первый раз если конечно рабочая паршивка и пик (12f629,16f628a,16f676,16f690,16f876a,18f2520) есть небольшая доработка екстра пика для прошивки авров и атмег. всякие вин пики 800 айсипроги (все версии )полная бредятина кто хоть раз попробует данный программер поверит и убедится в моих словах (все биты конфигурации для пик написаны в прошивке)
  •    •     


   
Александр1970 # 146
12 июля 2014 04:31  
 
<span class="masha_index masha_index125" rel="125"></span><span class="masha_index masha_index125" rel="125"></span>Сообщение
  •    •     


   
принц # 147
18 июля 2014 11:47  
 
PIC12F629 константа 3440.Ребята прошиваю PIC12F629 с битом CPD ,у меня вылазит ошибка по адресу 0000H, а как только убираю галочку и прошиваю без CPD то все ОК.Вопрос обязательно ли нужен ,этот бит защиты при программировании?
  •    •     


   
wanya00 # 148
13 августа 2014 22:58  
 
pic16f676 думаю что утеряна константа помогите восстановить, sliijb739@gmail.com для связи

также winpic пишет вот так:
Инициализация PIC программатора: Успешно.
Тестирование: задержка(500ms) заняла 0.50 секунд, timer_freq=1600.0200 МГц ... ok
Чтение 0x000000 - 0x0003FF ...
Чтение 0x002100 - 0x00217F ...
Чтение 0x002000 - 0x002007 ...
Слово калибровки генератора выглядит плохо (0x00FFFF) !
Чтение PIC не удалось (или он пустой).

а ic prog выдает ошибку чтения 0000h при прошивке
  •    •     


   
balbes # 149
27 ноября 2014 09:49  
 
Купил 4шт PIC16F676. Все считал не в одной небыло константы.Считывал MiniPro Programmer
  •    •     


   
tsg0158 # 150
2 декабря 2015 11:37  
 
Помогите! Есть прошитая PIC16F877A-I/P,нужно сделать копию.
Как это лучше сделать? Мой mail: tsg0158@mail.ru
  •    •     

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

Обновления

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

Сообщения Форума Ответов
Таймер управляющей люстрой в к ... 2
бaкoмeтр 1976
Бакометр 2 269
Ребят помогите пожалуйста =( 6
Вело-моддинг 180
Квазианалоговый тахометр на PI ... 10
Прошивка PIC 108
10-ти полосный светодиодный ан ... 48
Универсальное зарядное устройс ... 95
Счетчик событий с памятью 9