Arduino Leonardo As ISP: 7 Langkah

Arduino Leonardo As ISP: 7 Langkah

Daftar Isi:

Anonim

Leonardo adalah Arduino pertama saya, saya membelinya karena itu adalah kemampuan USB asli. Setelah bereksperimen dengan Arduino, saya memutuskan untuk bermigrasi dari Arduino Leonardo ke Atmega328p mandiri atau, untuk proyek yang lebih kecil, ke mikrokontroler dari keluarga Attiny.

Setelah beberapa penelitian saya menemukan panduan ini oleh PeterVH:

Setelah beberapa upaya gagal, saya berhasil membakar bootloader dan mengunggah sketsa dengan sukses dan ingin membagikannya dengan Instructable ini.

Penolakan

Saya tidak dapat bertanggung jawab atas segala kerusakan yang dapat terjadi pada Anda atau peralatan Anda saat mengikuti prosedur yang ada di halaman ini. Juga, saya sama sekali tidak memberikan jaminan pada kebenaran dan kegunaan informasi pada Instructable ini. Harap dicatat, bagaimanapun, bahwa prosedur ini telah berhasil dalam kasus saya tanpa ada kerusakan atau masalah.

Persediaan:

Langkah 1: Bahan

- Arduino Leonardo (dengan kabel usb)

- Komputer (semua langkah didasarkan pada komputer yang menjalankan Windows)

- Kabel

- Mikrokontroler Atmel Sasaran

Langkah 2: Mempersiapkan Leonardo

Saya berasumsi bahwa Anda telah menginstal dan mengkonfigurasi IDE, dan Anda telah dapat mengunggah sketsa sebelumnya (Jika Anda tidak: http: //arduino.cc/en/Guide/HomePage).

1- Buka IDE Arduino

2- Buka sketsa ArduinoISP (File / Contoh / ArduinoISP)

3- Ubah baris berikut (lihat gambar 1):

#define RESET SS TO #define RESET 10

#define LED_HB 9 SAMPAI #define LED_HB 13

(kami ingin menggunakan pin digital 10 untuk mengatur ulang target dan kami sedang mengatur detak jantung pada pin 13)

4- Simpan sketsa sebagai LeonardoISP (jadi Anda bisa menggunakannya nanti)

5- Kami memilih Arduino Leonardo (Alat / Papan / Arduino Leonardo) dan Port Serial yang sesuai (Alat / Port Serial / COM **)

5- Unggah

Jika sketsa diunggah dengan benar, Anda akan melihat led di papan (yang ditandai sebagai L) melakukan urutan detak jantung.

Sekarang, di folder Arduino IDE Anda:

1- Buat folder baru di "perangkat keras" dengan nama leofix

2- Buka editor teks dan rekatkan kode ini (gambar 2):

arduinoispleo.name = Arduino sebagai ISP (Leonardo)

arduinoispleo.communication = serial

arduinoispleo.protocol = arduino

arduinoispleo.speed = 19200

Simpan file sebagai programmers.txt (lihat gambar 3)

Selanjutnya kita menghubungkan beberapa kabel ke Leonardo kami (gambar 4):

Pin Digital 10,1 (TX), 0 (RX)

ICSP MISO, 5V, SCK, MOSI, GND (lihat pin 6pin pada gambar 5)

Langkah 3: Mikrokontroler Atmel Target 1: Atmega328p (bahan)

Langkah-langkah yang menampilkan Atmega328 dapat digunakan untuk Atmega168 dan Atmega8 (tidak diuji)

Anda membutuhkan ini:

(Sumber:

Untuk konfigurasi kristal 16Mhz eksternal:

-Atmega328p

-10k Ohm resistor (saya menggunakan 22K) x1

-16 MHz clock crystal x1

- 22 pF kapasitor x2

(Atau Anda bisa membeli salah satu dari kit ini, seperti yang saya lakukan:

Virtuabotix Bareduino - Bare minimum 16 MHz Arduino Kit

Virtuabotix Bareduino Plus- Arduino Kompatibel Mikrokontroler dengan Power Regulator

Keduanya di-boot sebagai Duemilanove, jadi Anda menyimpan langkah)

Untuk konfigurasi Sirkuit Minimal (Menghilangkan Jam Eksternal):

-Atmega328p x1

Langkah 4: Mikrokontroler Atmel Target 1: Atmega328p (berkumpul)

Untuk konfigurasi kristal 16Mhz eksternal:

Lihat gambar 1

Anda juga dapat mengikuti panduan ini:

www.virtuabotix.com/product-bareduino328-barebones-microcontroller-guide/

Untuk konfigurasi Sirkuit Minimal (Menghilangkan Jam Eksternal):

Hanya tempatkan Atmega di papan Anda (gambar 2)

Gambar 3 dan 4 --- Atmega328 dengan kristal 16Mhz eksternal

Gambar 5 Sirkuit minimal Atmega328

Langkah 5: Mikrokontroler Atmel Target 1: Atmega328p (membakar Bootloader dan Mengunggah Sketsa)

Untuk konfigurasi kristal 16Mhz eksternal dan sirkuit Minimal:

1- Hubungkan kabel dari Leonardo ke atmega328 (lihat atmega328 pinouts, ini sama dengan atmega168 -gambar 1):

Atmega328 Arduino Leonardo

(dalam gambar 1 pin hitam) (gambar 2- 6pin ICSP)

RX pin 2 ------------------------------------- pin digital 0

TX pin 3 ------------------------------------- pin digital 1

MISO pin 18 ----------------------------------- ICSP pin MISO

Pin MOSI 17 ----------------------------------- Pin ICSP MOSI

Pin SCK 19 ----------------------------------- Pin ICSP SCK

RESET pin1 ------------------------------------- pin digital 10

Dan pin power 5v dan ground.

Lihat gambar 3 dan 4 untuk hasil akhir

Burning Bootloader (jika Anda membeli Bareduino atau Anda menggunakan Atmega328 bootload lewati langkah ini)

********* PENTING: langkah tambahan untuk konfigurasi sirkuit Minimal *********

1- Buka http://arduino.cc/en/Tutorial/ArduinoToBreadboard dan unduh Breadboard.zip

2- Buat sub-folder "perangkat keras" di folder sketsa Arduino Anda (yang lokasinya dapat Anda temukan di dialog preferensi Arduino). Jika sebelumnya Anda telah menginstal dukungan untuk konfigurasi perangkat keras tambahan, Anda mungkin sudah memiliki folder "perangkat keras" di buku sketsa Anda.

3-Pindahkan folder "papan tempat memotong roti" dari arsip zip ke sub-folder "perangkat keras" dari sketsa Arduino Anda.

4-Restart perangkat lunak Arduino.

5-Anda akan melihat "ATmega328 pada papan tempat memotong roti (jam internal 8 MHz)" di menu Tools> Board.

****************** Langkah tambahan selesai di sini ******************

1- Periksa koneksi lagi

2 - Pilih papan Anda:

Atmega328 dengan kristal 16mhz eksternal ----> Arduino Duemilanove dengan ATmega328

Atmega rangkaian minimal tanpa kristal eksternal -----> ATmega328 pada papan tempat memotong roti (jam internal 8 MHz)

3- Port Serial harus sama dengan Arduino Leonardo

4- Pilih Arduino sebagai ISP (Leonardo) dalam Programmer

5- Pilih Bakar Bootloader di Menu Alat

6- Jika Anda menerima pesan ini: Selesai membakar bootloader, Sukses! (lihat gambar 6 dan 8)

Jika Anda menerima pesan kesalahan, periksa koneksi Anda satu per satu dan ulangi prosesnya.

Unggah sketsa

1- Jangan memindahkan koneksi Anda

2- Pilih sketsa (lihat gambar 1, Konfigurasi pin Arduino berwarna merah)

3- Menggunakan Unggah menggunakan programmer dari menu File, Selesai! (gambar 9-blink klasik)

Jika Anda menerima pesan kesalahan, periksa koneksi Anda satu per satu dan ulangi prosesnya.

Langkah 6: Target Atmel Microcontroller 2: ATtiny84

Instruksi ini tidak hanya untuk ATiny84, mereka harus bekerja untuk Attiny45, Attiny85, Attiny44 dan Attiny84 menggunakan High-Low Tech Core, dan ATtiny84 (84/44/24), ATtiny85 (85/45/25), dan ATtiny2313 (4313) menggunakan Arduino-Tiny Core, tetapi akhirnya, prosesnya sama.

1- Instal dukungan perangkat lunak untuk Arduino IDE dari inti yang Anda pilih.

2- Pasang kabel antara (RX, TX, jika tersedia) MISO, MOSI, SCK, RESET, 5V, dan GND dari ATtiny (cari pinout dari lembar data Atmel) dan Arduino Leonardo Anda.

INGAT: pin RESET untuk Leonardo adalah pin digital 10

3- Buka sketsa

4-Pilih papan yang sesuai. Dalam kasus saya, menggunakan High-Low Tech Core, saya memilih Attiny84 (internal 8Mhz clock).

5- Pilih Arduino sebagai ISP (Leonardo) dalam Programmer.

6- Gunakan Unggah menggunakan programmer dari menu File.

Penting: Beberapa chip harus di-boot saat menggunakan Arduino-Tiny Core. Dalam hal ini digunakan Bakar bootloader sebelum Anda mengunggah sketsa.

Penting, juga: Core menggunakan konfigurasi pin yang berbeda, Anda harus merujuk dokumentasi mereka saat menulis sketsa.

Contoh: Gambar 2 adalah konfigurasi Pin untuk ATtiny84 dari High-Low Tech Core dan gambar 3, dari Arduino-Tiny Core.

Langkah 7: Terima kasih!

Ini adalah Instruksi pertama saya sehingga semua komentar, saran, kritik dapat diterima.