Minimum DIY arduino atmega8. Arduino'nun sıfırdan hazırlanması. Shrimp-ə proqramların yüklənməsi

Bir çox radio həvəskarları Arduino vasitəsilə mikrokontrollerlərlə tanışlığa başladılar. Mysku istifadəçilərinin əksəriyyəti bu elektron dizayner və elektron cihazların sürətli inkişafı üçün əlverişli platforma haqqında bilirlər, buna görə də platformanın özünün üstünlükləri və mənfi cəhətləri üzərində dayanmayacağam.

İcmal Arduino-dan proqramçı kimi istifadə imkanlarını təsvir edəcək (Arduino ISP üçün aşağıya baxın). Maraqlananlar üçün pişiyə baxın.

Arduino üçün müxtəlif modullarla kifayət qədər oynadıqdan sonra gündəlik həyatda faydalı olacaq tam hüquqlu bir cihaz yaratmaq arzusu var idi.
Təsadüfən İnternetdə layihə ilə rastlaşdıqdan sonra onu təkrarlamağa qərar verdim.

Layihənin təsvirini oxuduqdan sonra mənim üçün əsas problemlər və ya necə deyərlər, tələlər formalaşdırıldı:
- Çap elektron platanın yaradılması;
- TQFP-32 paketində Atmega8A mikro nəzarətçi üçün proqram təminatı.

Bundan əvvəl mən heç bir lövhə çəkməmişdim və yalnız DIP paketində Arduino-da quraşdırılmış mikrokontrolleri yandırdım.

TQFP-32 paketində Atmega8, daha çox kimi üstünlüklərə əlavə olaraq aşağı qiymət və DIP ilə müqayisədə daha kiçik ölçülü, onun da bir çatışmazlığı var - mikrokontroller proqram təminatını yandırmaq və lövhədə daha mürəkkəb quraşdırmaq əlverişsizdir.

Birinci çatışmazlıq aradan qaldırıla bilər fərqli yollar:
- Sıxma mexanizmi olan TQFP32 TO DIP32 adapterini alın. Təxminən 1 min rubl dəyəri;
- Sıxma mexanizmi olmayan və mikrokontrolleri lehimləmək üçün nəzərdə tutulmuş TQFP32 TO DIP32 adapterini alın. 5 ədəd üçün təxminən 100 rubla başa gəlir;
- Öz əlinizlə TQFP32 TO DIP32 çaplı elektron plata-adapter hazırlayın;
- İstədiyiniz ayaqlara nazik naqilləri lehimləyin və yanıb-sönəndən sonra onları açın.

Çatdırılma üçün daha bir ay gözləməmək üçün sondan əvvəlki seçimi seçərək LUT metodundan istifadə edərək çap dövrə lövhəsi yaratmağa başladım. Haqqında internetdə məlumat və videolar bu üsulçox şey var və hər kəs evdə asanlıqla təkrarlaya bilər. Lövhəni dəmir xloriddə aşındırdıqdan və sancaqları lehimlədikdən sonra bu adapteri əldə etdik:

Sprint Layout üçün mənbə faylları endirilə bilər.

Atmega8-i saç qurutma maşını və ya lehimləmə dəmiri ilə lehimləyin. Proqram təminatında iştirak edən yalnız 8 ayağı "tutmaq" olar. Mən paltar sancaqları ilə müxtəlif sıxaclardan və ya "kollektiv əkinçilikdən" istifadə etməyi məsləhət görmürəm.

Arduino Uno-nu USB vasitəsilə kompüterə qoşuruq və Arduino ISP eskizini yükləyirik. Arduino Uno-nun tərtib edilməsi və yanıb-sönməsi. Şərhlərdə, proqram təminatını Arduino ISP vasitəsilə birləşdirməyə işarə var, bizə MOSI, MISO, RESET, GND, GND, VCC, VCC, SCK pinlərinə ehtiyacımız olacaq.

// pin adı: meqa deyil: mega(1280 və 2560) // qul sıfırlaması: 10: 53 // MOSI: 11: 51 // MISO: 12: 50 // SCK: 13: 52

Ümumi sxem bağlantılar belə görünəcək:

Firmware üçün biz konsol yardım proqramından istifadə edəcəyik:

Avrdude -p m8 -P USB15 -c arduino -b 19200 -U qoruyucu:w:0xE4:m -U hfuse:w:0xDA:m -U flash:w:main.hex

Burada -p m8 - Bizim vəziyyətimizdə işıqlandırılacaq mikrokontroller Atmega8-dir;
-P USB15 - Arduino ISP proqramçısının müəyyən edildiyi portun adı;
-arduino ilə - Proqramçı növü;
-b 19200 - USB port sürəti;
-U flash:w:main.hex - Mikroproqram;
-U qoruyucu:w:0xE4:m -U qoruyucu:w:0xDA:m - Qoruyucular.

Uğurlu yanıb-sönmədən sonra, əlavə olaraq flash kodu orijinal hex faylı ilə müqayisə edə bilərsiniz:

Avrdude -p m8 -P USB15 -c arduino -b 19200 -U flash:v:main.hex

Arduino-nuz yoxdursa, ondan ucuz proqramçı kimi istifadə edə bilərsiniz. Onun dəyəri təxminən 100 rubl təşkil edir.

Sonda sizə ClusterM layihəsi üzrə yığdığım cihazın fotolarını göstərəcəyəm.

Şəkillər




Xüsusiyyətlər:
- Emulyasiya iButton/Cyfral/Metacom;
- iButton/Cyfral oxumaq;
- USB vasitəsilə əsas verilənlər bazasının kompüterlə sinxronizasiyası;
- Kompakt lövhə ölçüsü;
- Aşağı enerji istehlakı, layihənin müəllifi bildirdi ki, cihaz bir batareya dəsti ilə təxminən bir il işləyir;

ATmega8 mikro nəzarətçi ilə və ya ilə işləmək üçün Arduino cihazı Arduino inkişaf mühitində ATmega8-də Arduino proqramı konfiqurasiya edilməlidir. Siz hardware/arduino/boards.txt faylına ATmega8 mikro nəzarətçisində dəstəklənən cihazların parametrlərini əlavə etməlisiniz.

Yükləyici fayllarını hardware/arduino/bootloaders/optiboot qovluğuna əlavə etmək lazım ola bilər.

ATmega8 mikrokontrolleri ~5V gərginlikdə 0-16 MHz tezliyində, ATmega8L isə 0-8 MHz tezliyində və ATmega8A 0-16 MHz tezliyində geniş təchizatı gərginliyi diapazonunda işləyə bilər. Bu, pasporta görədir, lakin praktiki olaraq, 5V gərginlikdə, ATmega8 seriyasının bütün mikrokontrollerləri xarici ilə 16 MHz tezliyində işləyə bilər. kvars rezonatoru və 8, 4, 2, 1 MHz tezliklərdə daxili osilator ilə.

ATmega8 mikro nəzarətçisinə əsaslanan Arduino board seçimi var, bu Arduino NG-dir. Arduino inkişaf mühiti (Arduino IDE) ATmega8 mikrokontrolleri ilə işləməyə hazırdır, lakin yalnız bir cihazla - xarici kristalla 16 MHz tezliyində ATmega8 mikrokontrolleri olan Arduino NG lövhəsi. Arduino v oyununda işlər belədir. 1.0.6. Bundan əlavə, Arduino NG ən optimal olmayan və ən əsası rahat olmayan yükləyici təklif edir.

Kvars rezonatoru olan və olmayan müxtəlif tezliklərdə işləyən ATmega8 mikrokontrollerlərini proqramlaşdırmaq üçün hardware/arduino/boards.txt faylında dəyişikliklər etməlisiniz.Məsələn, ona aşağıdakı bölmələri əlavə edə bilərsiniz:

# http://optiboot.googlecode.com # http://homes-smart.ru/index.php/oborudovanie/arduino/avr-zagruzchik ################# ############################################## atmega8o.name =ATmega8 (optiboot 16MHz ext) atmega8o.upload.protocol=arduino atmega8o.upload.maximum_size=7680 atmega8o.upload.speed=115200 atmega8o.bootloader.low_fuses=0xbf atmega8o.bootloader.low_fuses=0xbf atmega8o.bootbooth. yol = optiboot 50 atmega8o.bootloader.Fayl = Optiboot_atmega8.hex atmega CPU = 160000l Atmega8o.Build.core = arduino: arduino atmega8o.build.variant = arduino: standart ################### ######################################### a8_8MHz.name=ATmega8 (optiboot) 8 MHz int) a8_8MHz.upload.protocol=arduino a8_8MHz.upload.maximum_size=7680 a8_8MHz.upload.speed=115200 a8_8MHz.bootloader.low_fuses =0xa4 a8_8MHz.bootfuloader.8MHz=8MHz. a8_8MHz.bootloader. fayl=a8_8MHz_a4_dc.hex a8_8MHz.build.mcu=atmega8 a8_8MHz.build.f_cpu=8000000L a8_8MHz.build.core=ard uino a8_8MHz.build. variant=standart ######## ############################################## a8_1MHz. ad=ATmega8 (optiboot 1 MHz int) a8_1MHz.upload.protocol=arduino a8_1MHz.upload.maximum_size=7680 a8_1MHz.upload.speed=9600 a8_1MHz.bootloader .low_fuses=0xa1.a8_x8MHz. otloader.path= optiboot a8_1MHz.bootloader.file=a8_1MHz_a1_dc.hex a8_1MHz.build.mcu=atmega8 a8_1MHz.build.f_cpu=1000000L a8_1M Hz.build.core=arduino. build.a8_1MHz.build.core=arduino build##stand##var# ################################################# ## a8noboot_8MHz.name=ATmega8 (yükləməsiz 8 MHz int) a8noboot_8MHz.upload.maximum_size=8192 a8noboot_8MHz.bootloader.low_fuses=0xa4 a8noboot_8MHz.bootloader.high_cfses=m8MHz=a8MHz. noboot_8MHz.build.f_cpu=8000000L a8noboot_8MHz .build.core=arduino a8noboot_8MHz.build.variant=standart ################################## #########################

İndi aşağıdakı cihazlar Arduino proqramında Tools / Board menyusunda görünəcək:

  • ATmega8 (optiboot 16MHz əlavə)
  • ATmega8 (optiboot 8 MHz int)
  • ATmega8 (optiboot 1 MHz int)
  • ATmega8 (yükləməsiz 8 MHz int)

ATmega8 mikrokontrollerindəki ilk üç cihazda yükləyici var Arduino uyğun və siz birbaşa Arduino inkişaf mühitindən eskizləri (proqramları) onlara yükləyə bilərsiniz. Dördüncü cihazda yükləyici yoxdur, o, ayrıca ATmega8 çipi ola bilər. ATmega8-də (boot 8 MHz int) Arduino proqramının eskizləri proqramçı, o cümlədən Arduino lövhəsinə əsaslanan proqramçı vasitəsilə yüklənə bilər.

ATmega8 (optiboot 16MHz ext) xarici kvars rezonatoru, daxili osilatoru olan digər cihazlarla işləyir.

Hardware/arduino/boards.txt faylındakı parametrlər qoruyucu bitləri, yükləyici faylına gedən yolu, mikrokontrolörün tipini və onun tezliyini müəyyən edir. Alətlər / menyu elementini seçdiyiniz zaman qoruyucu bitlər mikrokontrollerə (yükləyici ilə və ya yükləyicisiz) yazılır. Yükləyicini yandırın. Sigorta bitləri mikrokontrollerinizin hansı tezlikdə işləyəcəyini və digər vacib parametrləri, o cümlədən onun performansı, yenidən proqramlaşdırıla bilməsi və s.-dən asılı olan parametrləri müəyyənləşdirir.

Eskizləri yüklədiyiniz zaman qoruyucu bitlər mikrokontrollerə yazılmır. Xidmət / Ödəniş menyusunda uyğun olmayan platforma seçilibsə, o zaman:

  • Eskizləri yükləyərkən
    • Uyğun olmayan tezlik - proqram sürətinin dəyişməsinə səbəb olur
    • Uyğun olmayan prosessor - proqramların işləməməsinə səbəb olur
  • Yükləyicini qeyd edərkən
    • Uyğun olmayan tezlik - bu sistemdə mikro nəzarətçinin işləməməsinə səbəb ola bilər
    • Uyğun olmayan prosessor (sigortalar) - mikrokontrolleri bloklayır

Diqqət, səhv hərəkətləriniz mikro nəzarətçiyə zərər verə bilər, onu bərpa etmək üçün sizə proqramçı lazımdır.

ATmega8 mikro nəzarətçi üçün yükləyici.

Mikrokontrolörün müxtəlif əməliyyat tezlikləri üçün Optiboot yükləyiciləri Bootloader Designer saytından endirilə bilər.

Bootloaders Optiboot, Arduino tərtibatçıları tərəfindən tanınan müstəqil pulsuz yükləyici inkişafıdır. Optiboot müxtəlif Arduino versiyalarında və müxtəlif versiyalarda istifadə üçün nəzərdə tutulmuşdur Atmel mikro nəzarətçiləri. Optiboot yükləyicisi ilə rəqibləri arasındakı əsas fərqlər dörd dəfəyə qədər azaldılmış kod ölçüsü, mikrokontrolörün işində faydasız gecikmələrin azalması, yüksək sürət eskizləri kompüterinizdən yükləmək.

Yükləyici fayllarını hardware/arduino/boards.txt faylında yazılanlara uyğun olaraq Arduino proqramında yerləşdirin. Məsələn, ATmega8 cihazı (optiboot 16MHz ext) üçün yükləyici faylı hardware/arduino/bootloaders/optiboot50 qovluğuna yerləşdirilməlidir və fayl adı optiboot_atmega8.hex olmalıdır.

EGYDuino, tək tərəfli olaraq özünüz edə biləcəyiniz Arduino klonudur çap dövrə lövhəsi. Bu evdə hazırlana bilən sadə və ucuz bir həlldir və Arduino ilə 100% uyğundur.

Təsvir

ATmega8 mikro nəzarət cihazı USB vasitəsilə serial qoşulma üçün cavabdehdir. istifadə edərək proqramlaşdırıla bilər. AVR-CDC cihazı birləşdirdikdən sonra PC-də virtual COM portu yaradır və müvafiq drayveri quraşdırır. ATmega 8.168 mikro nəzarət cihazı ArduinoNG qayıq yükləyicisindən istifadə edərək proqramlaşdırılmalıdır. Bu əməliyyat başqa bir Arduino lövhəsi (seçim ISP proqramçısı) və Arduino IDE və ya müvafiq proqram təminatı ilə USBasp kimi ayrıca proqramçı (USB, serial və ya paralel) istifadə etməklə həyata keçirilə bilər. proqram təminatı. Siz həmçinin bootloader istifadə edə bilərsiniz ArduinoDuemilanove ATmega 168 və ya 328 üçün.

Şura aşağıdakı xüsusiyyətlərə malikdir:

Interfeys IC kimi ATmega8 mikro nəzarətçisindən istifadə edir
- PC-yə USB bağlantısı
- Standart RESET düyməsi
- Arduino ilə uyğun 100% pin
- 5V tənzimləyici
- 3.3V çıxış
- Uyğun ölçü və dizayn
- Bütün komponentlər lövhədəki delikli montaj deliklərinə daxil edilir
- USB və ya DC güc açarı
- Jumper ilə PIN13 pin üçün LED
- Güc LED
- ICSP birləşdiricisi
- İstehsal etmək asandır
- ArduinoNG yükləyicisindən istifadə edən ATmega8,168,328 mikrokontrollerlər
- Standart DC elektrik rozetkası

EGYDuino lövhəsi USB konnektoru və ya xarici adapter gərginlik tənzimləyicisi vasitəsilə qidalana bilər.

Sxem

Cihazın tam dövrə diaqramı aşağıda göstərilmişdir

Çap dövrə lövhəsi

Radioelementlərin siyahısı

Təyinat Növ Denominasiya Kəmiyyət QeydMağazaMənim bloknotum
IC1 Mikro nəzarətçiATmega8-P1 Notepad üçün
IC2 MK AVR 8 bitlik

ATmega328

1 Notepad üçün
IC3 Xətti tənzimləyici

LM7805

1 Notepad üçün
D1 Düzləşdirici diod

1N4001

1 Notepad üçün
D2, D3 Zener diodu3.6 V2 Notepad üçün
C1, C2, C5, C6 Kondansatör22 pF4 Notepad üçün
C3 Kondansatör1000 pF1 Notepad üçün
C4, C7, C10 Kondansatör0,1 µF3 Notepad üçün
S8, S9 Elektrolitik kondansatör100 µF2 Notepad üçün
R1, R2 Rezistor

68 Ohm

2 Notepad üçün
R3 Rezistor

1,5 kOhm

1 Notepad üçün
R4, R6 Rezistor

10 kOhm

2 Notepad üçün
R5 Rezistor

1 kOhm

1 Notepad üçün
R7 Rezistor

470 Ohm

1 Notepad üçün
Q1, Q2 Kvars rezonatoru16 MHz2 Notepad üçün
LED1 İşıq yayan diodQırmızı1

Gəlin başlayaq!

Addım 1. Giriş.


Suallar, necə və nə etməli və ümumiyyətlə niyə mənə lazımdır?

Arduino haqqında tonlarla məlumatı gəzdikdən sonra...LED kubunun hazırlanmasından tutmuş Ağıllı Evin istehsalına, uçan dronların istehsalına qədər...
siz də mənim kimi bu qüdrətli lövhənin istehsalı haqqında az-çox məqbul məlumat axtarmağa başladınız.
"Lənət olsun, mən istəyirəm!" və ya "Mən bunu etmək istəyirəm. Hazırda." Və bu cihazın bütün mümkün tətbiqləri beynimdə fırlanır,
Əlləriniz özləri lövhə üçün hissələri axtarmağa başlayır, İnternetə gedin və orada:
ARDUINO.Cəmi 25$.
Hamısı budur.
Bütün kombinasiyalar başımdan düşdü.
Ümidsizlik.
Daha necə yaşayacağını bilmirsən.
Və sonra bu saytla qarşılaşırsınız!
Siz xilas oldunuz!
Axı, indi ARDUINO uyğun bir lövhəni 15 dəqiqəyə və cəmi 300 rubla yığacağıq!

Addım 2. İndi alın!


Bu komponentlərə ehtiyacınız var:
-Çörək taxtası
-ATMega 328(tərcüməçinin qeydi: ATMega 8.168 də istifadə edilə bilər)
-Hazır Arduino lövhəsi (*və yenidən tərcüməçi - Arduino əvəzinə istənilən proqramçıdan, hətta “5 teldən” də istifadə edə bilərsiniz)
-16 MHz tezliyində 1 rezonator
-100 Ohm üçün 3 rezistor
-10 kOhm üçün 1 rezistor
-22pF-də 2 kondansatör
-3 LED (qırmızı, sarı və yaşıl)
-1 Kron tipli akkumulyator (9 volt) cütləşmə hissəsi ilə
-USB kabel
-1 gərginlik stabilizatoru "Krenka"
-Arduino IDE quraşdırılmış kompüter, noutbuk.
Hamısı budur.

Addım 3. Montajın başlanğıcı.


Bir çörək lövhəsi götürün və mikrokontrolleri bağlayın ki, ayaqları bağlanmasın (o, "yivin" üstündə dayanmalıdır)

Addım 4. Krankların birləşdirilməsi.

Krenkanı MK-nin yanındakı plana qoyun.
Krenki pinout:
-VCC (xarici enerji təchizatı)
-GND (Zəmin. Ümumi əlaqə)
-Çıxış
Qara teli GND-yə birləşdirin, digər ucunu çörək lövhəsindəki “GND” avtobusuna qoşun.
VCC-ni çörək lövhəsindəki güc + avtobusuna qoşun.
Və Çıxışı çipin enerji təchizatının olacağı yerə atın.

Addım 5. Biz MK-ya enerji veririk.


Pinouta yaxşı baxın ATMega.
Çörək lövhəsinin CRANKS və GND çıxışını müvafiq olaraq MK-nin Çıxışına (7 və 20 pin) və GND-yə (8 və 22 pin) qoşun.

Addım 6. Dəqiqlik əlavə edin.



GND və ATMega pin 9 arasında 22pF kondansatör birləşdirin.
Və ATMega-nın 10-cu pin arasında ikinci kondansatör və yenidən torpaq.
5v və RESET (1 pin) arasında 10k Ohm rezistor əlavə edin.

Addım 7. LED əlavə edin.

Teli lövhənin istənilən yerinə qoşun.
100 Ohm rezistoru telin bir ucuna qoşun (şəkilə bax)
Sarı diodun uzun ayağını (+) rezistorun digər ucuna birləşdirin.
Qısa ayağı (-) yerə qoşun.
Qırmızı və yaşıl diodlar üçün təkrarlayın.

Addım 8. Bütün bunları ARDUINO-ya qoşun.
Ancaq çox uzaqlara gəldik!

Sarı diodu Arduino-nun 9-cu pininə qoşun.
Sarı diod proqramçının işini göstərir.
Qırmızı diodu Arduino-nun 8-ci pininə qoşun.
Bir şey səhv olarsa, yanır.
Və yaşıl diodu pin 7-ə qoşun.
Bu, yükləyicinin yüklənmə vəziyyətini göstərir.
4 teli (şəkildə 3 sarı və yaşıl) çörək lövhəsindəki ATMega sancaqlarına birləşdirin (şəklə bax).
Və sonra bu telləri Arduino-nun 10-13 pininə bağlayın.
Arduino və çörək lövhələrinin 5 və GND-lərini birləşdirməyi unutmayın!

Addım 9. Proqramlaşdırma.
Vay, yükləyicini yükləməliyik.
Necə, soruşursan?
AK belə!
1) Arduino IDE-ni işə salın.
2) File-Examples-Arduino ISP seçin.
3) Eskizi tərtib edin və Arduino-ya yükləyin.
Eskizi yüklədikdən sonra sarı diodun yanıb-sönməyə başladığını görəcəksiniz.
İndi torpaq və Arduino sıfırlaması arasında 100 ohm rezistor əlavə edin.

Addım 10. Əslində yükləyicinin doldurulması.


Arduino IDE-də seçin:
Alətlər-Board-Arduino Duemilkanove ilə AtMega 328 (* Əgər siz AtMega 328 istifadə etmirsinizsə, siyahıda quraşdırdığınız nəzarətçi ilə modeli tapın)
Alətlər-Proqramçı-Arduino ISP olaraq.
Və yenə Alətlər menyusuna gedin və "Yükləyicini yandırın" düyməsini basın.
Mikroproqram başlayacaq (təxminən bir dəqiqə çəkir)
Ekranda “Done Burning Bootloader” görünəcək

Əgər bir şey səhv olarsa, qırmızı diod yanır, deməli alınmadı. Bizimlə şəxsi mesaj və ya nömrə ilə əlaqə saxlayın. [email protected].
Sizin öz Arduinonuz var!
Xoşbəxt iş!

Arduino. Hər kəsin tanıdığı və çoxlarının sevdiyi cihaz o qədər məşhurlaşıb ki, hətta balaca uşaqlar belə hələ doğulmadan eskiz yazmağa çalışırlar. Təhdid, bu zarafatdır... Bir sözlə, mən geridə qalmaq istəmirəm və bu yazıda sizə ATmega8A genişləndirmə lövhəsini arduinoya necə çevirəcəyini söyləyəcəyəm. Bu ödənişin nə olduğunu bilməyənlər oxuya bilər. Bəli, başa düşürəm, çoxları deyəcək ki, ev istehsalı haradadır? DIY haqqında olan şey, Arduino üçün yalnız bir neçə şeyə ehtiyacınız olmasıdır. Birincisi mikrokontrollerdir. Ucuzluq üçün ATmega8 gedəcək. İkincisi 16 MHz tezliyində kvarsdır. Üçüncü - iki 22pf keramika kondensatoru. Və dördüncü - USB TTL çeviricisi, hər hansı biri. Yığmaq üçün XTAL1 və XTAL2 MK ayaqlarına kvars əlavə etməlisiniz. Eyni ayağa iki bağlayıcı bağlayın və digər ayaqları yerə yapışdırın və budur.

İndi keçək əməli hərəkətlərə. Sazlama lövhəsini Arduino-ya çevirəcəyik, lakin bütün hərəkətlər sadə MK, kvars və bir neçə kondensator üçün etibarlıdır. Beləliklə, gedək.
Genişləndirmə lövhəsindəki standart kvars 7,3728 MHz-dir. Bu Arduino üçün işləməyəcək. Beləliklə, biz onu götürüb 16 MHz-ə dəyişdiririk.

Sonra yükləyicini lövhəmizə yükləməliyik. Bunu etmək üçün hər hansı bir Arduino lövhəsini götürün. altındayam əl Arduino UNO. Əgər hələ də Arduino-nuz yoxdursa, onu əldə etməyin vaxtıdır. Siz onu Chip Resistor mağazasında ala bilərsiniz. Beləliklə, bizdə Arduino UNO var. Arduino UNO-nu masanın sağ tərəfində, ATmega8A genişləndirmə lövhəsini isə solda yerləşdiririk. Bu lövhələrin sağ tərəfində klassik Atmel pinoutu olan ISP konnektoru var.

5 nömrəli pin istisna olmaqla, naqilləri götürüb bu bağlayıcıları bir-bir birləşdirin.


İndi naqilləri götürüb bir ucunu ATmega8A genişləndirmə lövhəsinin 5-ci pininə, digər ucunu isə Arduino UNO Digital 10 pininə daxil edirik.Belə çıxmalıdır.

Nəticədə, bütün manipulyasiyalardan sonra bu görünüşə sahib olmalıyıq.

Hər şey qaydasındadırsa, ona qoşuluruq Kompüter USB. At düzgün əlaqə Arduino UNO-dakı LED-lər və ATmega8A genişləndirmə lövhəsindəki qırmızı LED yanmalıdır. (Təəssüf ki, fotoda naqillər LED-i bağlayır, amma inanın ki, yanır)

Proqram təminatı prosedurlarına keçək. Və burada Arduino istehsalçılarından böyük bir quraşdırma bütün ATmega8 MK pərəstişkarlarını gözləyir. Hazırda IDE 1.6.3 versiyası bu mikrokontrollerləri dəstəkləmir. Daha dəqiq konfiqurasiya faylları Yükləyici də var, ancaq onu yükləyə bilməzsiniz. Fakt budur ki, Arduino minimal ATmega328P mikro nəzarətçisinə keçdi və bu infeksiya Genişləndirilmiş Bayt Sigortasına malikdir. Ancaq çirkli səkkizlik deyil. Bu axmaqlığa görə, yükləyici yüklənmir, lakin bu bitlərin olmamasından şikayətlənir. Buna görə yükləyicini yükləməlisiniz köhnə versiya IDE. Əgər sizdə yoxdursa məndən yükləyə bilərsiniz. Bu, 1.0.3 versiyasıdır və quraşdırılmasına ehtiyac yoxdur. Sadəcə onu bir yerdə açın və bu qədər. Sonra, sadəcə bu qovluqdan proqramı işə salın. İndi MK-mizi doldurmaq üçün bir proqram quraq. Başlamaq üçün nümunələrdən bir proqramçı seçin ArduinoISP və onu Arduino UNO-ya və ya hazırda istifadə etdiyiniz hər şeyə yükləyin.

Doldurduqdan sonra Arduino UNO lövhəsini və ya üzərində olan hər şeyi dəyişdirməlisiniz Arduino NG və ya daha köhnə, ATmega8 ilə.

Hamısı. Siz doldura bilərsiniz. basın Alətlər -> Yükləyicini yandırın və qeydin bitməsini gözləyin.

Hazır. Arduino doğuldu. Bütün naqilləri ayırırıq və genişləndirmə lövhəsini GSMBOARD 1.1 debug lövhəsinə asırıq. Sonra, USB-TTL genişləndirmə lövhəsini götürün və GND - GND, RXD - TXD, TXD - RXD naqillərini birləşdirin və enerji verin. Yaşıl LED yanmalıdır.

Hər şey işləyirsə, köhnə proqramı söndürün və kişini işə salın son versiya. Bu gün 1.6.3 və biz aşağıdakı kodu yazırıq. void quraşdırma() ( pinMode(2, OUTPUT); ) boş döngə() ( digitalWrite(2, HIGH); gecikmə (2000); digitalWrite(2, LOW); while(1); ) Tam olaraq burada nə baş verir. Əvvəlcə çıxış üçün pin 2-ni işə salırıq. Sonra onun üzərində birini göstəririk, iki saniyə gözləyin və sıfıra sıxın. Sonra sonsuz bir döngəyə düşürük. Bunu aydınlaşdırmaq üçün, sazlama lövhəsinin nəyə çevrildiyini göstərən bir şəkil var.

Gördüyünüz kimi, ikinci pin modulu açmaq və söndürmək üçün məsuliyyət daşıyır. İndi eskizimizi təzə bişmiş Arduino-ya yükləməyin vaxtıdır. Bunu etmək üçün aşağıdakı şəkildəki kimi elementləri seçərək IDE-ni yenidən konfiqurasiya edək. Və portu USB-TTL-ə dəyişməyi unutmayın.

Hər şey qurulub. Eskizi yükləyin üzərinə klikləyin. Hər şey yaxşı olardı, amma bir səhv çıxdı. Eh. Dırmıq burada başladı. Arduino proqramları yükləmək üçün virtual COM portundan istifadə edir. Bu belə işləyir. Əvvəlcə IDE layihəni tərtib edir, sonra MK sıfırlama düyməsini çəkir və ilk yükləyici işə salındığından, IDE bunu görən proqramı flaşa tökməyə başlayır. Kompilyasiyadan sonra MK-ni sıfırlamasanız, IDE yükləyicisi gözləməyəcək və səhv atacaq. Bütün Arduino-larda sıfırlamanı çəkmək üçün bir ayaq sarılır COM portu DTR. USB-TTL genişləndirmə lövhəsində bu ayaq yoxdur, buna görə də IDE layihəni tərtib edərkən və yazdıqda Yüklənir.

ATmega8A genişləndirmə lövhəsindəki sıfırlama düyməsini çılğın şəkildə basıb buraxırıq. IDE yükləyicini götürəcək və proqramı flasha yükləyəcək. Budur, proqram özünü bir az aşağı salacaq və GSM modulunu işə salacaq. Hər şey düzgün aparılıbsa, şəkildəki kimi görünməlidir.

USB-RS232 adapterlərinin şanslı sahibləri üçün MK-ni yenidən qurmaq üçün DTR ayağını portdan (təbii olaraq MAX3232 çipi vasitəsilə) çıxara bilərsiniz. Bu, 100nf kondansatör vasitəsilə ISP konnektorunda 5-ci pindir. Yəni DTR bir kondansatördür - RES. Və sonra IDE özü sıfırlamanı çəkəcək. Hər halda, belə bir şəkil almalısınız. Proqram işlədi və modulu işə saldı.

İndi siz GSM modulu ilə məşğul ola bilərsiniz. Hər hansı bir sualınız varsa, yazın. Gəlin bunu anlamağa çalışaq. 

ANONİM 02.02.16 22:32

Məqalə üçün təşəkkür edirik. İndi Arduino Uno-da Mega 8-dən istifadə edə bilərəm.

niko19 25.12.16 23:03

Niyə cəhənnəm bütün bunları genişləndirmə lövhəsi ilə edir və masada hazır Arduino varsa, Arduino alırsınız? Sual evdə hazırlanmış Arduino-nu, deyək ki, çörək lövhəsində, Mega8 və ətrafında uzanan kvarsdan necə etməkdir. Mega-ya nə yükləmək lazımdır, hərfi mənada nöqtə-nöqtə və ya daha yaxşısı, hazır proqram faylı. məsələn, mənim paralel proqramçım var, amma serialı da var, amma hazır Arduino yoxdur...

Aleksey 25.12.16 23:40

Arduino, Arduino IDE ilə işləmək üçün yüklənmiş yükləyicisi olan Atmel mikrokontrolleridir. Sizə lazım olan tək şey yükləyici üçün qoruyucuları quraşdırmaq, proqram təminatı qovluğundan mikrokontrolleriniz üçün birini seçmək və onu yükləməkdir. Qısaca olsa.