Isi kandungan:
- Langkah 1: Reka Bentuk Pendawaian Pendawaian
- Langkah 2: Potong Litar di Papan
- Langkah 3: Selesaikan Komponen dan Uji
- Langkah 4: Kod Perhimpunan dan Video
Video: Tutorial Penyusun AVR 8: 4 Langkah
2024 Pengarang: John Day | [email protected]. Diubah suai terakhir: 2024-01-30 11:06
Selamat Datang ke Tutorial 8!
Dalam tutorial ringkas ini, kita akan mengambil sedikit kelainan daripada memperkenalkan aspek baru pengaturcaraan bahasa pemasangan untuk menunjukkan cara memindahkan komponen prototaip kita ke papan litar "bercetak" yang berasingan. Sebabnya, pada ketika ini, papan roti prototaip utama kami dipenuhi dengan begitu banyak cip, wayar, butang, dan LED sehingga sukar untuk menguji perkara baru dan kerana kita akhirnya harus memindahkan komponen ke papan mereka sendiri, kita juga boleh bermula sekarang. Sebilangan besar daripada anda mungkin sudah mahir dalam perkara-perkara yang akan kita bahas dalam tutorial ini dan jadi anda boleh melihat Tutorial ini sebagai rehat santai dari pengekodan.
Jadi hari ini kami akan memindahkan dadu roller ATmega328P dan sepasang dadu yang menyertainya ke papan luaran dengan sambungan ke papan utama kami untuk komunikasi dengannya dan untuk menghidupkannya. Selain itu, kabel dan fungsi dadu akan mandiri dalam komponen tersebut.
Anda mungkin boleh meramalkan bahawa tujuan akhirnya kita adalah melakukan ini dengan setiap komponen yang kita bina di sepanjang jalan sehingga apabila kita selesai, kita dapat menyembunyikan semuanya ke dalam pakej yang kelihatan bagus yang akan berfungsi melalui penekanan butang tanpa melihat semua wayar dan kerja dalaman.
Kami akan menghabiskan sebahagian besar tutorial ini untuk melakukan tugas fizikal seperti merancang litar, memetakan papan prototaip, dan menyolder barang bersama, tetapi ada sedikit pengaturcaraan yang perlu kita lakukan pada akhir setelah kita memindahkan sesuatu. Sebabnya adalah bahawa kita akhirnya akan menggunakan Antara Muka Serial 2 wayar untuk berkomunikasi antara pengawal "master" utama kita dan semua pengawal "hamba" yang membentuk komponen keseluruhan projek kita dalam siri tutorial ini dan, seperti yang anda ingat, dalam Tutorial 6 kami mencipta sejenis kaedah jenis Morse Code untuk menyampaikan dadu gulungan kami dari dadu roller (Tutorial 4) ke Register Analyzer (Tutorial 5) yang memaparkan hasil dadu roll dalam binari pada 8 LED. Itu hanya kaedah "roll your own" untuk berkomunikasi yang saya memutuskan untuk gunakan kerana, pada waktu itu, terlalu awal untuk memasuki komunikasi bersiri 2-wayar. Kami sekarang hampir bersedia untuk menyelami ujung komunikasi bersiri yang mendalam, dan kita akan melakukannya di Tutorial 10, tetapi buat masa ini kita perlu menjangkakan bahawa pengembangan masa depan dan memasang kembali LED roller dadu kita untuk membebaskan kedua-duanya pin yang kita perlukan untuk komunikasi bersiri.
Ini adalah pin SCL dan SDA pada ATmega328P. Anda dapat melihat dengan gambarajah pinout bahawa mereka juga disebut ADC5 dan ADC4 ketika digunakan dalam penukaran Analog-ke-Digital, mereka disebut PCINT13 dan PCINT12 ketika digunakan sebagai pin "Pin Change Interrupt", dan akhirnya kita secara umum memanggil mereka PC5 dan PC4 apabila hanya dianggap sebagai pin di PortC. Oleh kerana kami menggunakan kedua-dua pin ini sebagai sebahagian daripada roller dadu kami untuk pelbagai sebab (yang utama adalah bahawa ia menjadikan pengekodan lebih mudah dan pendawaian ke LED di papan lebih mudah) kita sekarang perlu mengubah kod kita dan memasangkannya semula sedikit ke bebaskan pin ini untuk komunikasi masa depan.
Oleh itu, kita akan mulakan dengan membuat reka bentuk, pemotongan, pendawaian, dan pematerian. Kemudian kami akan menulis semula roller dadu untuk berfungsi dengan alat baru kami dan akhirnya mengujinya untuk memastikan ia tetap berfungsi.
Untuk menyelesaikan Tutorial ini, anda memerlukan item berikut:
- Perkara standard yang selalu anda perlukan bahawa saya akan berhenti mengulanginya setiap masa: papan prototaip anda, salinan lembaran data dan set arahan anda, dan otak anda.
- Papan PCB prototaip litar tanpa wayar seperti ini: https://www.ebay.com/itm/191416297627 Saya akan menggunakan versi Measure Explorer 103RAWD papan ini: https://www.ebay.com/itm/103RAT -circuit-proto-proto … kerana saya mempunyai banyak dari mereka, tetapi versi 103RAW-0 yang saya pautkan di atas akan berfungsi dengan baik juga.
- Gunting, wayar, solder, besi pematerian, "tangan menolong" atau apa sahaja untuk memegang barang, dll. Dan lain-lain lagi, dari sini saya akan berhenti menyenaraikan barang ini juga. Sekiranya anda benar-benar berjaya dalam Tutorial ini, anda mungkin sudah mempunyai semua perkara ini.
Berikut adalah pautan ke koleksi lengkap tutorial penghimpun AVR saya:
Langkah 1: Reka Bentuk Pendawaian Pendawaian
Perkara yang menarik tentang papan Pengukur Pengukur adalah bahawa jika anda meluangkan masa dan memetakan perkara pada awalnya, anda dapat menjimatkan banyak pendawaian pada akhirnya. Oleh itu, kita akan mulakan dengan meluangkan masa merancang susun atur kita sebelum kita mula menyolder apa sahaja. Dengan papan jenis ini, anda harus memotong banyak wayar penyambung, yang tidak semudah itu, tetapi hasilnya adalah papan padat yang sangat bagus dengan minimum wayar kusut. Perkara pertama yang perlu kita lakukan ialah merancang litar supaya sesuai di papan. Cara yang baik untuk melakukannya adalah dengan memuat turun peta papan dan kemudian menggunakannya untuk bermain dengan reka bentuk yang berbeza sehingga anda menjumpai yang sesuai. Berikut adalah susun atur untuk ME-PB-103RAWD https://www.bluemelon.com/photo/3483513-T800600-j.webp
Langkah 2: Potong Litar di Papan
Mula-mula mengambil tajam dan, dengan menggunakan susun atur yang telah anda buat pada langkah sebelumnya, lukiskan litar anda di papan. I. E. lukis garisan untuk mewakili wayar. Jangan melukis apa-apa dari segi komponen, hanya wayar penyambung seperti yang ditunjukkan pada gambar pertama. Perhatikan bahawa apabila anda mengacaukan (dan jika anda seperti saya, anda akan mengacaukan banyak perkara dalam langkah-langkah ini) anda boleh menggunakan pemadam dan menghapus garis. Lakukan ini untuk kedua-dua sisi papan.
Seterusnya anda perlu memotong sambungan di sekitar talian. Sekiranya anda melihat papan dengan teliti, anda akan melihat bahawa setiap lubang pin disambungkan ke 4 lubang bersebelahan di kedua-dua sisi papan sehingga semua lubang di papan bersambung antara satu sama lain semasa anda memulakan. Oleh itu, anda perlu memotong kedua-dua sisi setiap wayar anda untuk mengasingkannya. Cara yang paling biasa untuk melakukan pemotongan ini adalah dengan pisau Exacto. Tetapi saya menghisap pisau Exacto dan mungkin akan memotong diri saya. Oleh itu, saya menggunakan Dremel dengan lampiran alat pemotong nipis. Saya harap saya mempunyai semacam alat penggiling yang sampai pada titik tajam kerana ia akan berfungsi dengan baik - tetapi saya tidak mempunyai yang seperti itu jadi saya menggunakan alat pemotong pemotong. (Nota ditambah: Setelah menyelesaikan projek ini, saya dapati kepala "roda pemotong tugas berat" yang lebih kecil berfungsi paling baik, mereka kelihatan seperti bulatan kertas pasir dan mereka berfungsi seperti alat pemotong yang ditunjukkan di sini kecuali diameternya lebih kecil dan sebagainya jauh lebih mudah untuk melihat dan mengawal tempat anda memotong)
Sepanjang perjalanan adalah berguna untuk menahan papan sehingga cahaya dan memastikan wayar benar-benar dipotong. Anda mungkin kesal kerana terdapat hubungan di kedua-dua belah papan sehingga anda harus mengulangi proses pemotongan sekali lagi dengan bahagian yang lain, tetapi saya rasa anda akan melihat perkara ini pada saat anda selesai. Saya membuat banyak kesilapan ketika memotong wayar yang tidak sepatutnya dipotong dan bahagian lain yang masih bersambung ternyata bagus.
Ia memerlukan sedikit masa dan kesabaran untuk memotong litar ke papan, tetapi ia sangat menyeronokkan apabila anda berjaya melakukannya.
Langkah 3: Selesaikan Komponen dan Uji
Setelah anda mengasingkan semua wayar di papan litar anda, anda boleh mula memateri komponen masing-masing.
Saya mula-mula menyolder LED untuk salah satu dadu, kemudian saya mengambil petunjuk positif dan negatif dari papan roti saya dan menguji sambungan untuk setiap LED untuk memastikan bahawa mereka terpencil antara satu sama lain dan berfungsi.
Begitu juga dengan die yang lain.
Kemudian pasangkan perintang ke setiap mati, dan perintang 10K di bahagian belakang papan.
Kemudian pasangkan pengayun kristal, penutup 22pf, butang tekan, dan ATmega328P. Anda mungkin ingin menyolokkan soket cip dan kemudian memasangkan ATmega328P ke dalamnya sehingga anda boleh mengeluarkannya jika anda mahu dan menggunakannya semula di tempat lain. Saya hanya menyisipkan cip saya ke papan kerana saya tahu apa yang akhirnya kita buat dengan semua tutorial ini dan saya tahu bahawa saya akan menyukainya sehingga saya tidak mahu mengeluarkan cip itu.
Perhatikan, dengan melihat bahagian belakang papan, cara kita memasang tajuk. Saya menggunakan header pin panjang dan membengkokkannya secara horosontal sehingga tidak keluar dari papan. Ini supaya saya akhirnya dapat menutup papan ke tahap tekan butang dan LED dengan bekas dan tidak menghalangi pengepala. Kami mempunyai header untuk Tx, Rx sehingga kami dapat memprogram chip, kami memiliki header untuk SDA, SCL sehingga kami dapat menggunakan komunikasi 2-wire di kemudian hari. dan kami mempunyai header 3 pin untuk AVCC, AREF, GND di seberang papan. Saya mempunyai semua pin ground dan pin VCC bersama-sama pada chip sehingga kami hanya memerlukan satu input kuasa.
Akhirnya setelah semuanya disambungkan, kita memasukkan die 1 hingga die2 seperti yang kita lakukan di papan roti sehingga kita dapat mengawal kedua dadu dengan hanya 9 pin.
Sekarang kita perlu mengubah kod kita supaya dapat mengawal penyediaan baru ini.
Langkah 4: Kod Perhimpunan dan Video
Saya telah melampirkan kod pemasangan dan video roller dadu yang sedang beroperasi. Yang saya lakukan hanyalah mengambil kod untuk roller dadu kami dari Tutorial 6, mengubah suai pin agar sesuai dengan susun atur baru, dan mengeluarkan subrutin komunikasi kerana kami akan menulis yang baru di Tutorial 10. Sebentar lagi kita akan mematikan papan kekunci kita lagi dan belajar bagaimana mengawal paparan 7 segmen. Sampai jumpa lagi!
Disyorkan:
Tutorial Penyusun AVR 2: 4 Langkah
Tutorial AVR Assembler 2: Tutorial ini adalah kesinambungan dari " AVR Assembler Tutorial 1 " Sekiranya anda belum mengikuti Tutorial 1, anda harus berhenti sekarang dan melakukannya terlebih dahulu. Dalam tutorial ini, kami akan meneruskan kajian pengaturcaraan bahasa pemasangan atmega328p u
Tutorial Penyusun AVR 1: 5 Langkah
AVR Assembler Tutorial 1: Saya telah memutuskan untuk menulis satu siri tutorial mengenai cara menulis program bahasa pemasangan untuk Atmega328p yang merupakan mikrokontroler yang digunakan di Arduino. Sekiranya orang tetap berminat, saya akan terus mengeluarkan satu minggu atau lebih sehingga saya kehabisan
Tutorial Penyusun AVR 6: 3 Langkah
AVR Assembler Tutorial 6: Selamat Datang ke Tutorial 6! Tutorial hari ini akan menjadi pendek di mana kita akan mengembangkan kaedah mudah untuk menyampaikan data antara satu atmega328p dan yang lain menggunakan dua port yang menghubungkannya. Kami kemudian akan mengambil roller dadu dari Tutorial 4 dan Daftar
Tutorial Penyusun AVR 7: 12 Langkah
Tutorial AVR Assembler 7: Selamat Datang ke Tutorial 7! Hari ini kita akan pertama kali menunjukkan cara membersihkan papan kekunci, dan kemudian menunjukkan cara menggunakan port input Analog untuk berkomunikasi dengan papan kekunci. Kami akan melakukan ini menggunakan gangguan dan wayar tunggal sebagai input. Kami akan memasang papan kekunci sehingga
Tutorial Penyusun AVR 9: 7 Langkah
AVR Assembler Tutorial 9: Selamat Datang ke Tutorial 9. Hari ini kita akan menunjukkan cara untuk mengawal paparan 7 segmen dan paparan 4 digit menggunakan kod bahasa pemasangan ATmega328P dan AVR kami. Semasa melakukan ini, kita harus mengambil jalan keluar bagaimana menggunakan timbunan