Avr bütün modellər üçün proqramçı sxemləri. AVR mikrokontrollerləri üçün miniatür USB proqramçı

12.01.2024

USBASP proqramçısı - cihaz, pinout, əlaqə, proqram təminatı

Bu gün kompüterin USB portu vasitəsilə serial proqramlaşdırma rejimini (ISP interfeysi) dəstəkləyən hər hansı bir AVR mikro nəzarət cihazını ucuz və tez necə proqramlaşdıracağına baxacağıq. Bir proqramçı olaraq çox sadə və populyar bir proqramçıdan istifadə edəcəyik USBASP və proqram olaraq - AVRdude_Prog V3.3 AVR MK-nın proqramlaşdırılması üçün nəzərdə tutulmuşdur.

USBASP proqramçısı

Mikrokontrolleri proqramlaşdırmaq üçün iki şeyə sahib olmalısınız:
- proqramçı
- MK-da məlumatların qeyd edilməsi üçün müvafiq proqram təminatı
AVR üçün ən sadə, ən populyar və miniatür proqramçılardan biri USBASP proqramçısı, Alman Tomas Fişl tərəfindən yaradılmışdır.
Bu proqramçı üçün çoxlu müxtəlif sxem həlləri var, siz proqramçıyı özünüz yığa və ya satın ala bilərsiniz (2-3 dollara başa gəlir). At öz-özünə montaj Nəzərə alın ki, yığılmış proqramçı üçüncü tərəf proqramçıları ilə birlikdə işlənməlidir.

Proqramçının ən mürəkkəb versiyasına baxacağıq:


Proqramçı xüsusiyyətləri:
- müxtəlif əməliyyat sistemləri ilə işləyir - Linux, Mac OS, Windows (Windows əməliyyat sistemi üçün, proqramçının işləməsi üçün sürücüləri quraşdırmaq lazımdır - məqalənin sonunda arxiv)
— proqramlaşdırma sürəti (proqramlaşdırma sürətini özünüz təyin edə bilərsiniz, məsələn, AVRDUDE_PROG-da) 375 (5) kb/san
- 10 pinli ISP interfeysinə malikdir (10 pinli pinout ilə ICSP standartına uyğundur)
- iki proqramçı təchizatı gərginliyini dəstəkləyir - 5V və 3.3V (hamısı deyil USB portları PC-lər 5 voltla işləyir)
- limandan enerji alır Kompüter USB, daxili cərəyan qorunmasına malikdir (500 mA özünü sıfırlayan qoruyucu)

Jumperlərin məqsədi:
JP1 birləşdiricisi— proqramçının mikro nəzarət cihazını yandırmaq üçün nəzərdə tutulmuşdur (yanıb-sönmək üçün kontaktları bağlamaq lazımdır)
JP2 birləşdiricisi- proqramçı təchizatı gərginliyi - 5 Volt və ya 3,3 Volt (standart - 5 Volt, fotoşəkildə olduğu kimi). Proqramlaşdırıla bilən mikrokontroller və ya onun quraşdırıldığı struktur, 300-400 mA cərəyan istehlakı ilə bu məqsədlə proqramçıdan qidalana bilər, konnektorun +5V çıxışı (VCC) var;
JP3 birləşdiricisi— SCK məlumatlarının saat tezliyini müəyyən edir: açıq — yüksək tezlik(375 kHz), qapalı - aşağı tezlik(8 kHz)
JP3 konnektoru haqqında ətraflı
Jumper JP3 mikrokontrollerə məlumat yazma sürətini azaltmaq üçün nəzərdə tutulmuşdur. Mikrokontrolörün 1,5 MHz-dən çox saat tezliyi varsa, keçid açıq ola bilər və proqramlaşdırma sürəti yüksəkdir. Əgər saat tezliyi 1,5 MHz-dən azdırsa, keçid pinlərini qısaqapanmaq lazımdır - proqramlaşdırma sürətini azaldın, əks halda mikrokontrolleri proqramlaşdırmaq mümkün olmayacaq. Məsələn, standart takt tezliyi 1 MHz olan ATmega8 mikro nəzarət cihazını (prinsipcə, demək olar ki, bütün AVR mikro nəzarətçiləri 1 MHz standart takt tezliyi üçün konfiqurasiya edilmişdir) proqramlaşdırsaq, keçid pinlərini bağlamaq lazımdır (kimi fotoda). Yəqin ki, bu tullananı həmişə bağlı saxlamaq daha yaxşıdır ki, siz onun mövcudluğunu unudub mikrokontrolörün niyə yanıb-sönmədiyi sualından əziyyət çəkməyəsiniz.

Veb saytında yerləşdiriləndən istifadə etsəniz, jumper haqqında unuda bilərsiniz

Proqramçı aşağıdakılar tərəfindən dəstəklənir proqram təminatı:
-AVR dostum
— AVRdude_Prog
- Bascom-AVR
— Khazama AVR Prog
- eXtreme Burner AVR

Belə bir proqramçı ilə işləmək çox sadədir - proqramçının müvafiq pinlərini mikrokontrollerə qoşun, kompüterin USB portuna qoşun - proqramçı istifadəyə hazırdır.
USBASP 10-pin proqramçı kabel çıxışı :


1 - MOSI - serial proqramlaşdırma üçün məlumat çıxışı
2 - VCC - kompüterin USB portundan proqramlaşdırıla bilən mikrokontrolleri və ya proqramlaşdırıla bilən lövhəni gücləndirmək üçün çıxış +5 (+3.3) Volt (maksimum cərəyan 200 mA - USB portunu yandırmamaq üçün)
3 - NC - istifadə olunmur
4 - GND - ümumi tel(mənfi güc)
5 - RST - mikrokontrolörün RESET pininə qoşulur
6 - GND
7 - SCK - məlumat saatının çıxışı
8 - GND
9 - MISO - serial proqramlaşdırma üçün verilənlərin daxil edilməsi
10 - GND

USBASP proqramçısı üçün sürücülərin quraşdırılması

USBASB proqramçısı üçün drayveri quraşdırmaq çox sadədir:
- proqramçıya qoşulun USB portu kompüter və sarı üçbucaqlı yeni “USBasp” cihazı və nida işarəsi içəridə, yəni heç bir sürücü quraşdırılmayıb
- “USBasp-win-driver-x86-x64-ia64-v3.0.7” faylını yükləyin və açın
- "InstallDriver" faylını işə salın - proqramçı üçün drayverlər avtomatik quraşdırılacaq
- cihaz menecerini yoxlayın - sarı üçbucaq yox olmalıdır (əgər yoxsa, "USBasp" cihazına sağ vurun və "Yeniləmə" seçin
— proqramçı istifadəyə hazırdır

USBASP AVR-ni proqramlaşdırarkən FUSE bitləri:

“usbasp.2011-05-28” arxivində aşağıdakı qovluqlar var:
= BIN:
- win-driver - proqramçı üçün sürücülər
— mikroproqram — Mega8, Mega88, Mega48 mikro nəzarətçiləri üçün proqram təminatı
= circuit - PDF və Cadsoft Eagle-da sadə proqramçının dövrə diaqramı

Çin proqramçısını yandırarkən, FUSE bit CKOPT quraşdırmağı məsləhət görürəm. CKOPT maksimum saat sürəti ilə bağlıdır. Varsayılan olaraq, CKOPT istifadə edildikdə proqramçı mikrokontrollerinin sıfırlanması və sabit işləməsidir kvars rezonatoru yalnız 8 MHz tezliyə qədər mümkündür (və proqramçı mikrokontroller 12 MHz tezliyində işləyir). CKOPT FUSE bitinin qurulması maksimum tezliyi 16 MHz-ə qədər artırır. Çinlilər bu FUSE bitinə toxunmur, bu da çox vaxt proqramçının uğursuzluğuna səbəb olur (adətən sistem proqramçını aşkar etmir).

“USBasp-win-driver-x86-x64-ia64-v3.0.7” arxivi məqalədə göstərildiyi kimi sürücülərin quraşdırılması üçün nəzərdə tutulub

(518,9 KiB, 13,188 baxış)

(10,9 MiB, 24,942 baxış)

Məqalədə təsvir olunan USBASP proqramçısı, proqramın ən son versiyası ilə işıqlandırılmış, işlək vəziyyətdə sınaqdan keçirilmiş, jumpers və jumpers quraşdırılmış, MirMK-SHOP onlayn mağazasında satın ala bilərsiniz.

22 sentyabr 2011-ci il, saat 20:11

Miniatür USB proqramçı AVR mikro nəzarətçiləri üçün

  • Mikrokontroller proqramlaşdırması

Teatr asılqandan başladığı kimi, mikro nəzarətçilərin proqramlaşdırılması da yaxşı proqramçı seçməklə başlayır. Mikrokontrollerləri mənimsəməyə başladığım üçün ATMEL, onda mən istehsalçıların təklif etdikləri ilə hərtərəfli tanış olmalı oldum. Onlar çoxlu maraqlı və dadlı şeylər təklif edirlər, yalnız hədsiz qiymətlərlə. Məsələn, bir qoşqu kimi bir cüt rezistor və diodlu bir iyirmi ayaqlı mikrokontrolörlü bir eşarp "təyyarə" kimi başa gəlir. Buna görə də, proqramçının öz-özünə yığılması məsələsi kəskinləşdi. Təcrübəli radio həvəskarlarının inkişaflarını uzun müddət araşdırdıqdan sonra beyni Atmega8 mikrokontrolleri olan yaxşı sübut edilmiş USBASP proqramçısının yığılması qərara alındı ​​(atmega88 və atmega48 üçün proqram təminatı variantları da var). Mikrokontrolörün minimal naqilləri, fləş sürücü kimi həmişə özünüzlə apara biləcəyiniz kifayət qədər miniatür proqramçı yığmağa imkan verir.

Bu proqramçının müəllifi alman Tomas Fichldir, onun diaqramlar, çap dövrə lövhəsi faylları və sürücüləri olan inkişaf səhifəsidir.
Miniatür proqramçı yığmaq qərarına gəldikdən sonra TQFP32 paketində Atmega8 mikrokontrolleri üçün dövrəni yenidən tərtib etdim (mikro nəzarətçinin pinoutu DIP paketindəki pinoutdan fərqlənir):

Jumper J1, 1,5 MHz-dən aşağı bir saat tezliyi olan bir mikrokontrolleri yandırmaq lazım olduqda istifadə olunur. Yeri gəlmişkən, bu tullanan MK-nın 25-ci ayağını yerə qoymaqla tamamilə aradan qaldırıla bilər. Sonra proqramçı həmişə azaldılmış tezlikdə işləyəcək. Şəxsən mən azaldılmış sürətlə proqramlaşdırmanın saniyənin bir hissəsini daha uzun sürdüyünü gördüm və buna görə də indi tullananı çəkmirəm, ancaq onunla daim tikirəm.
Zener diodları D1 və D2 proqramçı ilə səviyyələri uyğunlaşdırmaq üçün istifadə olunur USB avtobus, onlarsız işləyəcək, lakin bütün kompüterlərdə deyil.
Mavi LED, sxemin proqramlaşdırılmağa hazır olduğunu göstərir, proqramlaşdırma zamanı qırmızı LED yanır; Proqramlaşdırma kontaktları IDC-06 konnektorunda yerləşir, pinout 6 pinli ISP konnektoru üçün ATMEL standartına uyğundur:

Bu konnektor proqramlaşdırıla bilən cihazları gücləndirmək üçün kontaktlardan ibarətdir; Eyni konnektor idarəetmə mikrokontrolörünü proqramlaşdırmaq üçün də istifadə olunur, bunun üçün konnektordakı və mikro nəzarətçidəki Sıfırlama pinlərini birləşdirin (diaqramda qırmızı nöqtəli xəttə baxın). Müəllifin sxemində bu, bir jumper ilə edilir, amma lövhəni qarışdırmadım və onu çıxardım. Tək bir proqram təminatı üçün sadə bir tel keçid kifayət edəcəkdir. Lövhə 45x18 mm ölçüdə iki tərəfli oldu.

Proqramlaşdırma konnektoru və proqramçının sürətini azaltmaq üçün bir keçid cihazın sonunda yerləşir, bu çox rahatdır

İdarəetmə mikrokontrollerinin proqram təminatı
Beləliklə, cihazı yığdıqdan sonra qalan ən vacib şey nəzarət mikrokontrollerini yandırmaqdır. Hələ də kompüteri olan dostlar LPT portu ohm :) AVR üçün ən sadə beş telli proqramçı
Mikrokontroller mikrokontrolörün (29 ayaq) və konnektorun Sıfırlama sancaqlarını birləşdirərək proqramlaşdırma konnektorundan yandırıla bilər. Firmware Atmega48, Atmega8 və Atmega88 modelləri üçün mövcuddur. Son iki daşdan birini istifadə etmək məsləhətdir, çünki Atmega48 versiyasına dəstək dayandırılıb və son versiya Firmware 2009-cu ilə aiddir. Və 8-ci və 88-ci daşlar üçün versiyalar daim yenilənir və müəllif, görünür, funksionallığa bir dövrə içərisindəki sazlayıcı əlavə etməyi planlaşdırır. Proqram təminatını alman dilindən əldə edirik. İdarəetmə proqramını mikrokontrollerə yükləmək üçün PonyProg proqramından istifadə etdim. Proqramlaşdırma zamanı kristaldan işləməyə başlamaq lazımdır xarici mənbə 12 MHz tezliyi. PonyProg-da qoruyucu keçid parametrləri ilə proqramın ekran görüntüsü:

Firmware yanıb-söndükdən sonra mikrokontrolörün 23 ayağına qoşulmuş LED yanmalıdır. Bu, proqramçının uğurla proqramlaşdırıldığına və istifadəyə hazır olduğuna əmin bir işarə olacaqdır.

Sürücü quraşdırma
Quraşdırma Windows 7 ilə bir maşında aparıldı və heç bir problem yaranmadı. Kompüterinizə ilk dəfə qoşulduqda, yeni bir cihazın aşkar edildiyini bildirən bir mesaj görünəcək və sürücü quraşdırmağı təklif edəcəkdir. Göstərilən yerdən quraşdırma seçin:

Quraşdırılan sürücünün olmadığı barədə xəbərdarlıq edən bir pəncərə dərhal görünəcək rəqəmsal imza kiçik yumşaq olanlar üçün:

Xəbərdarlığa məhəl qoymuruq və quraşdırmaya davam edirik, qısa fasilədən sonra sürücü quraşdırma əməliyyatının uğurla başa çatdığını bildirən bir pəncərə görünəcək.

Budur, proqramçı artıq istifadəyə hazırdır.

Khazama AVR Proqramçısı
Proqramçı ilə işləmək üçün Khazama AVR Programmer flasherini seçdim. Minimalist interfeysə malik gözəl proqram.

O, bütün məşhur AVR mikrokontrolörləri ilə işləyir, flaş və eeprom-u yandırmağa, yaddaşın məzmununu nəzərdən keçirməyə, çipi silməyə, həmçinin qoruyucu bitlərin konfiqurasiyasını dəyişdirməyə imkan verir. Ümumiyyətlə, tamamilə standart bir dəst. Qoruyucu parametri açılan siyahıdan saat mənbəyini seçməklə həyata keçirilir, beləliklə, kristalın səhvən kilidlənməsi ehtimalı kəskin şəkildə azalır. Qoruyucuları aşağı sahəyə onay qutuları qoymaqla da dəyişdirmək olar, lakin mövcud olmayan konfiqurasiyada onay qutularını yerləşdirə bilməzsiniz və bu da təhlükəsizlik baxımından böyük bir artıdır.

Sigortalar, təxmin etdiyiniz kimi, Hamısını Yaz düyməsini basaraq MK yaddaşına yazılır. Saxla düyməsi cari konfiqurasiyanı saxlayır, Yükləmə düyməsi isə saxlananı qaytarır. Düzdür, mən bu düymələr üçün praktik istifadə edə bilmədim. Standart düyməsi standart qoruyucu konfiqurasiyasını qeyd etmək üçün nəzərdə tutulmuşdur, mikrokontrollerlər zavoddan gəlir (adətən daxili RC-dən 1 MHz).
Ümumiyyətlə, bu proqramçıdan istifadə etdiyim bütün müddət ərzində sabitlik və işləmə sürəti baxımından özünü ən yaxşı şəkildə göstərdi. Həm qədim masaüstü kompüterdə, həm də yeni noutbukda problemsiz işləyirdi.

PCB faylını istifadə edərək SprintLayout-da yükləyə bilərsiniz

Mikrokontrollerdə dövrə yığmaq qərarına gələn radio həvəskarı ilk hansı addımları atmalıdır? Təbii ki, bir nəzarət proqramı lazımdır - "firmware", eləcə də bir proqramçı.

Birinci nöqtə ilə bağlı heç bir problem yoxdursa - bitmiş "firmware" adətən sxemlərin müəllifləri tərəfindən yüklənir, onda proqramçı ilə işlər daha mürəkkəbdir.

Hazır USB proqramçıların qiyməti olduqca yüksəkdir və ən yaxşı həllözün yığacaq. Budur təklif olunan cihazın diaqramı (şəkillər tıklanabilir).

Əsas hissə.

MK quraşdırma paneli.

Orijinal diaqram müəllifin icazəsi ilə LabKit.ru saytından götürülmüşdür, buna görə ona çox təşəkkür edirəm. Bu, mülkiyyətçi PICkit2 proqramçısının sözdə klonudur. Cihaz versiyası xüsusi PICkit2-nin "yüngül" nüsxəsi olduğundan, müəllif onun inkişafını adlandırdı. PICkit-2 Lite, başlanğıc radio həvəskarları üçün belə bir cihazın yığılmasının asanlığını vurğulayır.

Bir proqramçı nə edə bilər? Proqramçıdan istifadə edərək, siz ən asan mövcud və populyar PIC seriyalı MCU-ları (PIC16F84A, PIC16F628A, PIC12F629, PIC12F675, PIC16F877A və s.), həmçinin 24LC seriyalı EEPROM yaddaş çiplərini yandıra bilərsiniz. Bundan əlavə, proqramçı USB-UART çevirici rejimində işləyə bilər və bəzi funksiyalara malikdir məntiq analizatoru. Proqramçının malik olduğu xüsusilə vacib funksiya bəzi MCU-ların (məsələn, PIC12F629 və PIC12F675 kimi) daxili RC generatorunun kalibrləmə sabitinin hesablanmasıdır.

Lazımi dəyişikliklər.

Sxemdə bəzi dəyişikliklər lazımdır ki, PICkit-2 Lite proqramçısından istifadə edərək 24Cxx seriyasının EEPROM yaddaş çiplərindən məlumatları yazmaq/silmək/oxumaq mümkün olsun.

Sxemdə edilən dəyişikliklərdən. DD1 (RA4) 6-cı pinindən ZIF panelinin 21-ci pininə qoşulma əlavə edildi. AUX pinindən yalnız 24LC EEPROM yaddaş çipləri (24C04, 24WC08 və analoqlar) ilə işləmək üçün istifadə olunur. O, məlumatları ötürür, buna görə də proqramlaşdırma panelinin diaqramında “Data” sözü ilə qeyd olunur. Mikro nəzarətçiləri proqramlaşdırarkən, MK-ləri LVP rejimində proqramlaşdırarkən lazım olsa da, adətən AUX pinindən istifadə edilmir.

Yaddaş çiplərinin SDA və Vcc pinləri arasında birləşdirilən 2 kOhm-luq açılan rezistor da əlavə edilib.

Müəllifin orijinal diaqramına uyğun olaraq PICkit-2 Lite yığdıqdan sonra bütün bu dəyişiklikləri çap dövrə lövhəsində etmişəm.

24Cxx yaddaş çipləri (24C08 və s.) məişət radio avadanlıqlarında geniş istifadə olunur və bəzən, məsələn, CRT televizorlarını təmir edərkən onları yandırmaq lazımdır. Parametrləri saxlamaq üçün 24Cxx yaddaşdan istifadə edirlər.

LCD televizorlar fərqli yaddaş növündən (Flash yaddaş) istifadə edir. Mən artıq LCD televizorun yaddaşını necə yandırmaq barədə danışdım. Kim maraqlanırsa, baxsın.

24Cxx seriyalı mikrosxemlərlə işləmək zərurəti ilə əlaqədar proqramçını “bitirməli” oldum. Mən yeni çap dövrə lövhəsini həkk etmədim, sadəcə olaraq çap dövrə lövhəsinə lazımi elementləri əlavə etdim. Bu baş verdi.

Cihazın nüvəsi mikrokontrollerdir PIC18F2550-I/SP.

Bu cihazdakı yeganə çipdir. MK PIC18F2550 "yanıb-söndürülməlidir". Bu sadə əməliyyat çoxları üçün çaşqınlıq yaradır, çünki “toyuq və yumurta” deyilən problem yaranır. Bunu necə həll etdiyimi bir az sonra sizə deyəcəyəm.

Proqramçının yığılması üçün hissələrin siyahısı. IN mobil versiya bütün sütunlarına baxmaq üçün cədvəli sola dartın (sola-sağa sürüşdürün).

ad Təyinat Reytinq/Parametrlər Brend və ya maddə növü
Proqramçının əsas hissəsi üçün
Mikro nəzarətçi DD1 8 bitlik mikro nəzarətçi PIC18F2550-I/SP
Bipolyar tranzistorlar VT1, VT2, VT3 KT3102
VT4 KT361
Diod VD1 KD522, 1N4148
Schottky diodu VD2 1N5817
LED-lər HL1, HL2 istənilən 3 volt, qırmızıyaşıl parlaq rənglər
Rezistorlar R1, R2 300 Ohm
R3 22 kOhm
R4 1 kOhm
R5, R6, R12 10 kOhm
R7, R8, R14 100 Ohm
R9, R10, R15, R16 4,7 kOhm
R11 2,7 kOhm
R13 100 kOhm
Kondansatörler C2 0,1 μ K10-17 (keramika), idxal analoqları
C3 0,47 mikron
Elektrolitik kondensatorlar C1 100uF * 6.3V K50-6, idxal analoqları
C4 47 uF * 16 V
İnduktor (boğucu) L1 680 µH vahid tip EC24, CECL və ya evdə hazırlanmışdır
Kvars rezonatoru ZQ1 20 MHz
USB yuvası XS1 USB-BF növü
Jumper XT1 istənilən növ "jumper"
Mikrokontroller quraşdırma paneli üçün (MK)
ZIF paneli XS1 istənilən 40 pinli ZIF paneli
Rezistorlar R1 2 kOhm MLT, MON (0,125 Vt və yuxarıdan güc), idxal olunan analoqlar
R2, R3, R4, R5, R6 10 kOhm

İndi detallar və onların məqsədi haqqında bir az.

Yaşıl Proqramçıya güc verildikdə LED HL1 yanır və qırmızı HL2 LED-i kompüter və proqramçı arasında məlumat ötürüldükdə yayılır.

Cihaza çox yönlülük və etibarlılıq vermək üçün XS1 tipli “B” (kvadrat) USB yuvasından istifadə olunur. Kompüter A Tipi USB yuvasından istifadə edir. Buna görə də, birləşdirən kabelin yuvalarını qarışdırmaq mümkün deyil. Bu həll cihazın etibarlılığına da töhfə verir. Kabel yararsız hala düşərsə, lehimləmə və ya quraşdırma işlərinə müraciət etmədən asanlıqla yenisi ilə əvəz edilə bilər.

680 µH induktor L1 olaraq, hazır olanı istifadə etmək daha yaxşıdır (məsələn, EC24 və ya CECL növləri). Ancaq hazır məhsul tapa bilmirsinizsə, qazı özünüz edə bilərsiniz. Bunu etmək üçün, CW68 tipli indüktördən ferrit nüvəyə 250 - 300 növbəli PEL-0.1 tel küləyiniz lazımdır. Nəzərə almaq lazımdır ki, əks əlaqə ilə PWM-nin olması səbəbindən endüktans reytinqinin düzgünlüyündən narahat olmaq lazım deyil.

Yüksək gərginlikli proqramlaşdırma üçün gərginlik (Vpp) +8,5 ilə 14 volt arasında açar tənzimləyici tərəfindən yaradılır. Buraya VT1, VD1, L1, C4, R4, R10, R11 elementləri daxildir. PWM impulsları PIC18F2550-nin 12-ci pinindən VT1 bazasına göndərilir. Əlaqə bölücü R10, R11 tərəfindən həyata keçirilir.

ICSP (In-Circuit Serial Programming) rejimində bir USB proqramçısından istifadə edərkən dövrə elementlərini proqramlaşdırma xətlərindən tərs gərginlikdən qorumaq üçün VD2 diodundan istifadə olunur. VD2 Schottky diodudur. Gərginlik düşməsi ilə seçilməlidir P-N qovşağı 0,45 voltdan çox deyil. Həmçinin, VD2 diodu proqramçı USB-UART çevrilməsi və məntiq analizatoru rejimində istifadə edildikdə elementləri tərs gərginlikdən qoruyur.

Proqramçıdan yalnız paneldə mikro nəzarətçilərin proqramlaşdırılması üçün istifadə edərkən (ICSP istifadə etmədən), VD2 diodunu tamamilə aradan qaldıra bilərsiniz (mən bunu etdim) və yerinə bir keçid quraşdıra bilərsiniz.

Cihazın kompaktlığı universal ZIF paneli (Zero Insertion Force - sıfır quraşdırma səyi ilə) tərəfindən hazırlanır.

Bunun sayəsində siz mikrokontrolleri demək olar ki, hər hansı bir DIP paketinə "bağlaya" bilərsiniz.

"Mikrokontroller (MK) quraşdırma paneli" diaqramı paneldə müxtəlif korpuslu mikrokontrollerlərin necə quraşdırılmalı olduğunu göstərir. MK quraşdırarkən, paneldəki mikrokontrolörün çipdəki açarın ZIF panelinin kilidləmə qolunun tərəfində olması üçün yerləşdirilməsinə diqqət yetirməlisiniz.

18 pinli mikrokontrollerləri (PIC16F84A, PIC16F628A və s.) belə quraşdırmaq lazımdır.

Və burada 8 pinli mikrokontrollerlər (PIC12F675, PIC12F629 və s.)

Səthə quraşdırılmış paketdə (SOIC) bir mikrokontrolleri yandırmaq lazımdırsa, siz bir adapterdən istifadə edə və ya sadəcə olaraq proqramlaşdırma üçün tələb olunan 5 pinini mikrokontrollerə lehimləyə bilərsiniz (Vpp, Clock, Data, Vcc, GND).

Məqalənin sonundakı linkdə bütün dəyişikliklərlə birlikdə çap dövrə lövhəsinin bitmiş rəsmini tapa bilərsiniz. Faylı Sprint Layout 5.0 proqramında açaraq, "Çap" rejimindən istifadə edərək, yalnız çap keçiricilərinin nümunəsi olan bir təbəqə çap edə bilməzsiniz, həm də çap dövrə lövhəsində elementlərin yerləşdirilməsinə baxa bilərsiniz. DD1-in 6-cı və ZIF panelinin 21-ci pinini birləşdirən təcrid olunmuş keçidə diqqət yetirin. Lövhənin rəsmini çap etməlisiniz güzgü şəklində.

LUT metodundan istifadə edərək çap dövrə lövhəsi, eləcə də tsaponlak (mən bunu etdim) və ya "qələm" üsulundan istifadə edərək çap dövrə lövhələri üçün marker edə bilərsiniz.

Budur çap dövrə lövhəsində elementlərin yerləşdirilməsinin şəkli (kliklənə bilər).

Quraşdırarkən ilk addım konservləşdirilmiş mis teldən hazırlanmış jumperləri lehimləmək, sonra aşağı profilli elementləri (rezistorlar, kondansatörlər, kvars, ISCP pin konnektoru), sonra tranzistorlar və proqramlaşdırılmış MK quraşdırmaqdır. Son addım ZIF panelini, USB yuvasını quraşdırmaq və telləri izolyasiyada (jumperlər) möhürləməkdir.

PIC18F2550 mikro nəzarətçisinin "profirm proqramı".

Mikroproqram faylı - PK2V023200.hex PIC mikro nəzarətçiləri (məsələn, Extra-PIC) dəstəkləyən hər hansı proqramçıdan istifadə edərək PIC18F2550I-SP MK-ni yaddaşa yazmalısınız. Mən JDM Programmator JONIC PROG və proqramı istifadə etdim WinPic800.

Siz eyni xüsusi proqramçı PICkit2 və ya onun istifadə edərək, mikroproqramı PIC18F2550 MCU-ya yükləyə bilərsiniz. yeni versiya PICkit3. Təbii ki, dostlarınızdan biri sizdən əvvəl yığmağı bacarıbsa, bunu evdə hazırlanmış PICkit-2 Lite ilə edə bilərsiniz :).

Onu da bilməyə dəyər ki, PIC18F2550-I/SP mikro nəzarət cihazının (fayl) “mikro proqram təminatı” PK2V023200.hex) PICkit 2 Programmer proqramını proqramın özünün faylları ilə birlikdə qovluğa quraşdırarkən yazılır. PK2V023200.hex faylının təxmini yeri - "C:\Proqram Faylları (x86)\Microchip\PICkit 2 v2\PK2V023200.hex" . PC-də 32 bit yüklü olanlar üçün Windows versiyası, yerləşmə yolu fərqli olacaq: "C:\Proqram Faylları\Microchip\PICkit 2 v2\PK2V023200.hex" .

Yaxşı, təklif olunan üsullardan istifadə edərək "toyuq və yumurta" problemini həll edə bilmirsinizsə, AliExpress saytında hazır PICkit3 proqramçı ala bilərsiniz. Orada daha ucuz başa gəlir. AliExpress-də hissələri və elektron dəstləri necə almaq barədə yazdım.

Proqramçı proqram təminatının yenilənməsi.

Tərəqqi hələ də dayanmır və zaman-zaman Microchip PICkit2, PICkit3 proqramçısı da daxil olmaqla, öz proqram təminatı üçün yeniləmələr buraxır. Təbii ki, biz evdə hazırlanmış PICkit-2 Lite-in idarəetmə proqramını da yeniləyə bilərik. Bunu etmək üçün sizə PICkit2 Proqramçı proqramı lazımdır. Bu nədir və necə istifadə olunur - bir az sonra. Bu arada, firmware proqramını yeniləmək üçün nə etmək lazım olduğuna dair bir neçə söz.

Proqramçı proqramını yeniləmək üçün kompüterdən ayrıldıqda proqramçıda XT1 keçidini bağlamalısınız. Sonra proqramçını PC-yə qoşun və PICkit2 Programmer-i işə salın. XT1 bağlandıqda rejim aktivləşdirilir yükləyici yeni firmware versiyasını yükləmək üçün. Sonra PICkit2 Proqramçısında "Alətlər" menyusu vasitəsilə - "PICkit 2-ni yükləyin" Əməliyyat sistemi"Yenilənmiş mikroproqramın əvvəlcədən hazırlanmış hex faylını açın. Sonra proqramçı proqram təminatının yenilənməsi prosesi baş verəcək.

Yeniləmədən sonra proqramçını kompüterdən ayırmaq və XT1 keçidini çıxarmaq lazımdır. Normal rejimdə jumper açıqdır. Proqramçı proqramının versiyasını PICkit2 Programmer proqramında "Yardım" - "Haqqında" menyusu vasitəsilə öyrənə bilərsiniz.

Hər şeyə aiddir texniki məsələlər. İndi proqram təminatı haqqında.

Proqramçı ilə işləmək. PICkit2 Proqramçısı.

USB proqramçı ilə işləmək üçün kompüterdə PICkit2 Programmer proqramını quraşdırmalıyıq. Bu xüsusi proqram var sadə interfeys, quraşdırmaq asandır və xüsusi konfiqurasiya tələb etmir. Qeyd etmək lazımdır ki, MPLAB IDE inkişaf mühitindən istifadə edərək proqramçı ilə işləyə bilərsiniz, lakin MK-ni yandırmaq/silmək/oxumaq üçün sadə proqram - PICkit2 Programmer kifayətdir. Mən bunu tövsiyə edirəm.

PICkit2 Programmer proqramını quraşdırdıqdan sonra yığılmış USB proqramçısını kompüterə qoşun. Eyni zamanda yanacaq yaşıl LED ("güc") və əməliyyat sistemi cihazı tanıyır "PICkit2 Mikronəzarətçi Proqramçısı" və sürücüləri quraşdırın.

PICkit2 Proqramçı proqramını işə salın. Proqram pəncərəsində bir yazı görünməlidir.

Proqramçı bağlı deyilsə, proqram pəncərəsində qorxulu mesaj görünəcək və qısa təlimatlar"Nə etməli?" ingilis dilində.

Proqramçı MK quraşdırılmış kompüterə qoşulubsa, proqram işə salındıqda onu aşkar edəcək və PICkit2 Programmer pəncərəsində bu barədə bizə məlumat verəcəkdir.

Təbrik edirik! İlk addım atıldı. PICkit2 Programmer proqramından necə istifadə etmək barədə ayrıca məqalədə danışdım. Növbəti addım.

Tələb olunan fayllar:

    PICkit2 İstifadəçi Təlimatı (Rus) götürün və ya.

23/02/2011 tarixində dərc edilmişdir

AVR mikrokontrollerləri üçün praktikada istifadə olunan proqramçıların qısa icmalı. AVR ISP ProqramçıUSB proqramçı AVR/89S AVR910 ilə uyğun gəlir.

AVR ISP Proqramçı

İstər kütləvi istehsal şəraitində, istərsə də məhsulun inkişafı və sazlanması prosesində ATMEL® mikrokontrolörlərinin proqramlaşdırılması üçün dövrə proqramçısı.

Proqramçı aşağıdakı kristal ailələrini dəstəkləyir:

TinyAVR

ATtiny11L, ATtiny11, ATtiny12V, ATtiny12L, ATtiny13, ATtiny15L, ATtiny2313, ATtiny26L, ATtiny26, ATtiny28V, ATtiny28L

AT90S1200, AT90S2313, AT90LS2323, AT90S2323, AT90LS2343, AT90S2343, AT90LS4433, AT90S4433, AT90LS8515, AT90S8515, AT90S8515, AT90S8518

MegaAVR

ATmega48, ATmega88, ATmega168, ATmega8, ATmega16, ATmega32, ATmega64, ATmega640, ATmega128, ATmega1280, ATmega1281, AT90CAN128, AT1610me, AT16me, AT16me, 3L, ATmega169, 5, ATmega8535, ATmega2560, ATmega2561, ATmega325, ATmega3250, ATmega645, ATmega6450, ATmega329, ATmega3290, ATmega649, ATmega6490

Fərqli Xüsusiyyətlər:

– dövrə daxilində proqramlaşdırma (heç bir əlavə adapter panelləri tələb olunmur və proqramlaşdırma pinləri layihədə istifadə olunur)

– məşhur AVRstudio, IAR AVR, Image Craft AVR kompilyatorları üçün proqramçı dəstəyi.

– avtomatik yoxlama (100% təminatlı kodlaşdırılmış kodun orijinal koduna uyğun olduğuna zəmanət verilir)

yüksək sürət proqramlaşdırma, proqram təminatı qabiliyyəti seriya nömrəsi kristal

Mən uzun müddətdir uğurla istifadə edirəm və LPT portu ilə işləyən bu etibarlı və sadə proqramçıdan istifadə etməyə davam edirəm.

Bu sadə, lakin etibarlı proqramçının diaqramı:

İki tərəfli lövhə yuvaya uyğundur:


Mənə ikinci proqramçı lazım idi və aşağıda təsvir edilən USB proqramçı mənə lazım olan mikrokontrolleri yandıra bilmədi. Buna görə də bu LPT proqramçısını təkrarlamaq qərarına gəldim.



Kompüter meylləri elədir ki, LPT portu tezliklə yox olacaq. Buna görə də alternativ axtarmağın vaxtıdır.

AVR910 ilə uyğun AVR/89S mikro nəzarətçi proqramçısı (USB proqramçısı)

Bir neçə mağazaya baş çəkdikdən sonra başa düşdüm ki, proqramçılar üçün qiymətlər təvazökar deyil, ona görə də çaşıb özüm proqramçı düzəltməyə qərar verdim.
İnterneti araşdırdıqdan sonra orijinal AVR910 ATMEL proqramçısının əmrlərinə uyğun bir neçə tətbiq tapdım.

Bu modifikasiyanın dezavantajı qoruyucunun olmamasıdır. Baxmayaraq ki, təcrübə göstərdiyi kimi, qısa qapanma ilə USB portunu yandırmaq mümkün olmayacaq. Heç olmasa mənim kompüterimdə işləmədi, amma sınaqdan keçirməyə dəyməz.
VL3 LED enerjinin proqramçıya USB portu vasitəsilə verildiyini bildirir. LEDlər VL1, VL2 siqnal oxumaq/yazmaq proqramçısı.
Jumper J1 – (MODify) yeni proqramçıda mikrokontrolleri proqramlaşdırmaq üçün istifadə olunur. Bağlandıqda, ISP konnektoruna xarici proqramçı qoşulur və proqramlar MK-ya yüklənir.
Bu tullanandan sonra J2 – NORMal tullananı açıb bağlamaq lazımdır. Biz daha ona toxunmuruq.
J3 LOW SCK keçidindən istifadə edərək MK proqramçısının SPI portunun takt tezliyini ~20 kHz-ə endirmək mümkündür. Jumper açıq olduqda, SPI tezliyi normaldır, bağlandıqda azalır.
Diqqətçəkən xüsusiyyət ondan ibarətdir ki, 1 MHz tezliyi olan kvadrat dalğa, yanlış proqramlaşdırılmış saat üçün cavabdeh olan qoruyucu bitləri olan MK-ləri "canlandırmaq" üçün ISP konnektorunun LED çıxışına verilir. ÇOX faydalı şey!

Firmware FUSE BITS
Dövrədə nəzarətçinin normal işləməsi üçün SPIEN, CKOPT, SUT0 və BODEN bitlərinin proqramlaşdırılması lazımdır ("0" olaraq təyin olunur). Tipik olaraq fabrikdən gələn mikrokontrollerlər, məs. yenilərində SPIEN biti artıq proqramlaşdırılmışdır. Qalan bitlər proqramlaşdırılmamış olmalıdır ("1" olaraq təyin olunur).

Quraşdırma
Windows 2000/XP/Vista/Seven 32-bit

Nəzarətçini yandırın. Təzə bişmiş proqramçını pulsuz USB konnektoru vasitəsilə PC-yə qoşun. əməliyyat sistemi yeni bir cihaz tapacaq - AVR910 USB Proqramçısı, avtomatik olaraq sürücünü tapmaq, imtina etmək və kompüterinizdə quraşdırılmış əməliyyat sistemindən asılı olaraq inf faylının yolunu müəyyən etmək istənildikdə.
Firmware ilə arxivdə " qovluğu var AVR910.Sürücü ” üçün üç kataloqu ehtiva edir müxtəlif variantlarəməliyyat sistemləri:
-“2k_xp_32 ” – əməliyyat sistemləri üçün Windows 2000/XP 32-bit (standart usbser.sys sürücüsü istifadə olunur)
-“vista_xp_32 ” – Əməliyyat sistemləri üçün Windows XP/Vista/Seven 32-bit (usbser.sys + lowbulk.sys, Osamu Tamura tərəfindən)
-“vista_xp_64 ” – Əməliyyat sistemləri üçün Windows XP/Vista/Seven 64-bit (usbser.sys + lowbulk.sys, Osamu Tamura tərəfindən)

Quraşdırma Xüsusiyyətləri:

Prinsipcə, quraşdırma Windows XP-dən fərqlənmir, lakin bir AMMA var - bu OS-nin usbser.sys sürücüsündə gecikmələr kompüterdəki proqram təminatından proqramçıya və müvafiq olaraq zəncirə qədər olan əmrlər zəncirini korlayır. proqramçıdan PC-dəki proqrama cavabların sayı... Problemim var, onu hələ quraşdırmamışam, amma həll yolu var. Əlbəttə ki, ən gözəl deyil, amma etibarlı işləyir :) Sistemdə usbser.sys faylını dəyişdirmək lazımdır. Windows qovluqları Windows XP-dən bənzəri üçün 2000. Bunlar ...\winnt\system32\drivers\ və ...\winnt\system32\dllcashe\ qovluqlarıdır. Windows XP SP1-dən usbser.sys faylını burada tapa bilərsiniz. Təbii ki, sürücü başqa bir OS-yə (məsələn, yükləmə diskindən) yükləməklə dəyişdirilməlidir.

Sürücüləri 64 bitlik platformada istifadə etmək üçün klikləməklə sürücünün rəqəmsal imza yoxlanmasını deaktiv etməlisiniz funksiya düyməsi Sistem yükləməyə başlayanda F8.
İkinci seçim, sürücünü “testdriver” kimi imzalayan və “test rejimini” aktivləşdirən “Driver Signature Enforcement Overrider” proqramından istifadə etməkdir ki, siz sürücünü həqiqi rəqəmsal imza olmadan yükləyə biləsiniz. Daha çox tapa bilərsiniz ətraflı təsviri yuxarıdakı linkə daxil olaraq proqram səhifəsində.

Əldə etdiyim budur:



Mən proqramçıdan AVRStudio paketindən AVRProg v.1.4 proqramları ilə istifadə edirəm. Windows XP-də qüsursuz işləyir.

Proqramçı virtual Com portu kimi quraşdırılıb. Nəzərə almalı olduğunuz yeganə şey odur ki, AVRProg 1-dən 4-ə qədər portları yoxlayır. Siz onu cihaz menecerində COM4-ə qədər porta köçürməli olacaqsınız və ya AVRStudio parametrlərində proqramçının hansı portda axtarılacağını müəyyənləşdirməlisiniz. .

Devre diaqramı, lövhə, proqram təminatı və sürücüləri endirmək olar.

P.S. Mənə PWM nəzarətçiləri (AT90PWM3) yandırmaq lazım olanda, mən bunu köhnə yaxşı AVR ISP Prorgammer (LPT portu vasitəsilə) istifadə edərək etməli oldum, AVRProg v.1.4 AT90PWM3-ü bilmir. ATmega64 ilə bağlı vəziyyət də aydın deyil. Buna görə də, mənim əsas işləyən proqramçım LPTesh AVR ISP Prorgammer olaraq qalır.

P.S.P.S. Çox keçmədi ki, bir dost aldı bu USBasp proqramçısı

Bunun üçün sürücüləri və proqram təminatını burada tapa bilərsiniz: http://www.fischl.de/usbasp/
Bu işləyir və AVR/89S uyğun AVR910 (USB) proqramçısında heç bir səhv tapılmaması məni sevindirdi.

Məqalədə bu və digər proqramçılarla işləmək üçün proqramlar təsvir olunur.

Proqramçı Objective Development-dən olan sürücüyə əsaslanır və ATMEL-in orijinal AVR910 proqramçısı ilə əmrlərdə tam uyğun gəlir. Cihazın təsviri. Qoruyucu USB portunun elektrik xətlərini proqramçının enerji təchizatı sxemlərində təsadüfi qısa qapanmalardan qoruyur. VD1, VD2 diodları rektifikator silisiumdur, onlar mikrokontrolörün enerji təchizatını 3,6 V-a qədər azaltmaq üçün nəzərdə tutulmuşdur. Sənədlərə əsasən, nəzarətçi bu təchizatı gərginliyində 14 MHz tezliyə qədər işləyə bilər. LEDlər VL1 (" R.D."), VL2 (" WR") proqramçının cari hərəkətlərinə siqnal verir və oxuma və yazma rejimlərini göstərir. LED VL3 (" PWR”) enerjinin verildiyini göstərir.

Jumper J1 - ( Dəyişdirin) idarəetmə MK proqramçısının ilkin proqramlaşdırılması üçün istifadə olunur. Bağlandıqda, ISP konnektoruna xarici proqramçı qoşulur və idarəetmə proqramı MK-ya yüklənir. İdarəetmə MK proqramçısını proqramlaşdırdıqdan sonra bu keçid açılmalı və J2 - NORmal keçidi bağlanmalıdır.

Jumper J3 LOW SCK MK proqramçısının SPI portunun takt tezliyini ~20 kHz-ə endirir. Jumper açıq olduqda, SPI tezliyi normaldır, bağlandıqda azalır. MK proqramçısının idarəetmə proqramı SPI portuna hər dəfə daxil olanda PB0 xəttinin vəziyyətini yoxladığı üçün tullananı tez dəyişə bilərsiniz. Proqramlaşdırıla bilən mikrokontroller işləyərkən yazmaq/oxumaq zamanı keçidi dəyişmək tövsiyə edilmir, çünki bu, çox güman ki, yazılan/oxunan məlumatların təhrif olunmasına gətirib çıxaracaq. Jumper J3 daxili 128 kHz osilatordan saatla işləyən AVR mikro nəzarətçilərinin proqramlaşdırılmasına imkan vermək üçün təqdim edilmişdir.

Rezistorlar R10 - R14 proqramçı mikrokontroller və xarici sxemlərin (proqramlaşdırıla bilən mikrokontroller və ya digər proqramçı) siqnal səviyyələrinə uyğunlaşdırmaq üçün nəzərdə tutulmuşdur. Jumper J3 açıq olan MK proqramçısının SPI portunun saat tezliyi 187,5 kHz-dir. Bu, nəzarətçiləri ATtiny/ATmega üçün təxminən 570 kHz, 90S üçün 750 kHz və 89S üçün 7,5 MHz arasında dəyişən saat sürətləri ilə proqramlaşdırmağa imkan verir. Kontrollerlər FLASH yaddaşının miqdarından və saat tezliyindən asılı olaraq yoxlama ilə birlikdə 10 ilə 30 saniyə arasında proqramlaşdırılır (AVR Studio paketindən AVRProg v.1.4 yardım proqramından istifadə etməklə).

1 MHz tezliyi olan kvadrat dalğa, ISP konnektorunun LED çıxışına, səhv proqramlaşdırılmış qoruyucu bitləri olan MK-ləri "canlandırmaq" üçün verilir. Siqnal daim yaradılır və proqramçının iş rejimindən asılı deyildir. Proqramçı AVRProg v.1.4 (AVRStudio paketinə daxildir), ChipBlasterAVR v.1.07 Evaluation, CodeVisionAVR, AVROSP (ATMEL AVR Open Source Programmer) proqramları ilə sınaqdan keçirilib. Dövrədə nəzarətçinin normal işləməsi üçün bitlərin proqramlaşdırılması lazımdır ("0" olaraq təyin olunur) SPIEN, CKOPT, SUT0BODEN. Tipik olaraq fabrikdən gələn mikrokontrollerlər, məs. yeni, artıq proqramlaşdırılmış bit SPIEN. Qalan bitlər proqramlaşdırılmamış olmalıdır ("1" olaraq təyin olunur).

Quraşdırma və istismar təlimatları. Nəzarətçini yandırın. Təzə bişmiş proqramçıyı USB vasitəsilə kompüterə qoşun. Əməliyyat sistemi kompüterinizdə quraşdırılmış əməliyyat sistemindən asılı olaraq, sürücünü avtomatik tapmaq, imtina etmək və inf faylına gedən yolu müəyyən etmək istənildikdə yeni cihaz - AVR910 USB Proqramçı tapacaq.

Forumda bütün fayllar, eləcə də var PCB avr proqramçımız üçün. Burada USB montaj texnologiyasını göstərəcəyəm AVR proqramçısı və qutuda qablaşdırma. Əvvəlcə arxivi yükləyin və çap dövrə lövhəsini düzəldin.

Sonra bütün detalları onun üzərinə lehimləyirik. Kiçik bir kvars tapa bilmədim, ona görə də böyük bir kvars lehimlədim, ancaq uzun ayaqlara, sonra onu büküm ki, taxtanın korpusa quraşdırılmasına mane olmasın. Sonra, uyğun bir qutu seçirik;

Lövhəni korpusa uyğunlaşdırırıq, bütün ölçüləri götürürük, deliklər qazırıq və burada universal lövhə ilə bitmiş bir cihazınız var.

Xüsusi ölçmə cihazı yoxdursa, bir LED istifadə edərək yoxlaya bilərsiniz. LED anod ilə LED pininə, katod isə ISP konnektorunun istənilən GND pininə birləşdirilir. Güc tətbiq edildikdə, LED tam intensivliklə yanmalıdır. Kvars osilatorunun ayaqlarını cımbızla bağladığınız zaman, LED ya “tam istilikdə” yanmalı, ya da heç bir parıltı olmamalıdır.

Səhvlər olmadan, düzgün proqramlaşdırılmış mikro nəzarətçi ilə yığılmış proqramçının konfiqurasiyasına ehtiyac yoxdur. Ancaq proqramlaşdırıla bilən MK-nın RESET girişi bir rezistor tərəfindən təchizatı gərginliyinə bağlıdırsa, rezistorun dəyəri 10 kOhm-dən aşağı olmamalıdır - bu, bununla əlaqədardır. azaldılmış gərginlik proqramçı dövrəsində idarəetmə nəzarətçisinə enerji təchizatı və ISP konnektor avtobusunda məhdudlaşdırıcı rezistorların tətbiqi.

AVR USB PROGRAMMER məqaləsini müzakirə edin