Реклама

  • При программировании не забывайте про константу( 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-ов НЕ НАДО.

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

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

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

    Код Защиты

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

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

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

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

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

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

     



  • На главную