Прошивка PIC - Сторінка 4 - Електрик

Статті / PIC microchip - Прошивка PIC

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

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

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

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

У МК старшого сімейства константи немає, отже, не дивуйтеся.

На малюнку нижче показано місце розташування цієї константи:

прошивка

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

У процесі прошивки (коли натиснули вже на кнопку "прошити") може (а може і не запитати) вилізти наступне повідомлення (див. мал.нижче), треба натискати НІ. При використанні Icprog 1.06C (я її використовую) завжди запитує, замінити чи ні.

Коли ви завантажуєте прошивку в програму, то в останній комірці пам'яті виставляється "3FFF" т.к. у прошивці значення вашої константи не вказано (вона у кожного МК своя)!

Ось програма і запитуватимете використовувати константу "3FFF" або "3424".

електрик

Відео - як прошити PIC від початку до кінця!

У мікроконтролерах PIC16F628, PIC16F628A, PIC16F630 константи немає, перевірено практично.

У PIC16F676 константа є!

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

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

При написанні програми для МК, програміст, передусім, виставляє біт захисту, далі програма (вихідник) компілюється (зазвичай розширення .HEX) і зашивається в МК, отже на відміну AVR, виставляти біти зміни за прошивці pic-ов НЕ ТРЕБА ! У PIC передбачено біт захисту:

На малюнку нижче показаний біт захисту та помилка яка вискакує після прошивки:

сторінка

Якщо після прошивки, з використанням біта захисту, рахувати дані з МК то ось що вийде:

сторінка

електрик

Якщо втрачено константу, що робити?

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

Для прошивки можна використовувати безкоштовну програму, напевно найпопулярніша – icprog, версія остання 1,6В.

Завантажити icprog106B + опис україн + драйвер для ХР (взагалі і без нього працює, але можуть бути нюанси.)

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