Daftar Isi:

Kalkulator Biner 4-bit: 11 Langkah (dengan Gambar)
Kalkulator Biner 4-bit: 11 Langkah (dengan Gambar)

Video: Kalkulator Biner 4-bit: 11 Langkah (dengan Gambar)

Video: Kalkulator Biner 4-bit: 11 Langkah (dengan Gambar)
Video: Konsep Mudah bilangan biner ke desimal 2024, November
Anonim
Kalkulator Biner 4-bit
Kalkulator Biner 4-bit
Kalkulator Biner 4-bit
Kalkulator Biner 4-bit
Kalkulator Biner 4-bit
Kalkulator Biner 4-bit
Kalkulator Biner 4-bit
Kalkulator Biner 4-bit

Saya mengembangkan minat pada cara komputer bekerja pada tingkat dasar. Saya ingin memahami penggunaan komponen diskrit dan sirkuit yang diperlukan untuk menyelesaikan tugas yang lebih kompleks. Salah satu komponen fundamental penting dalam CPU adalah unit logika aritmatika atau ALU yang melakukan operasi pada bilangan bulat. Untuk menyelesaikan tugas ini, komputer menggunakan bilangan biner dan gerbang logika. Salah satu operasi paling sederhana yang dilakukan adalah menjumlahkan dua angka bersama-sama, dalam rangkaian penambah. Video dari numberphile ini menjelaskan konsep ini dengan sangat baik melalui Penambahan Domino. Matt Parker memperluas konsep dasar ini dan membangun sirkuit Komputer Domino menggunakan 10.000 kartu domino. Membangun seluruh komputer pribadi dari kartu domino tidak masuk akal, tetapi saya masih ingin memahami penggunaan komponen diskrit untuk menyelesaikan tugas penambahan ini. Dalam video, gerbang logika dibuat dari kartu domino tetapi juga dapat dibuat dari komponen dasar, yaitu transistor dan resistor. Tujuan dari proyek ini adalah untuk memanfaatkan komponen diskrit ini untuk mempelajari dan membuat kalkulator penambah 4-bit saya sendiri.

Tujuan saya untuk proyek ini termasuk: 1) Pelajari cara membuat dan membuat PCB khusus 2) Membuat desain mudah dikonseptualisasikan dengan menambahkan bilangan biner 3) Menunjukkan perbedaan skala antara komponen diskrit dan sirkuit terintegrasi yang melakukan tugas yang sama

Sebagian besar inspirasi dan pemahaman proyek ini datang dari Simon Inns.

Perlengkapan

Saya menggunakan Fritzing untuk membuat skema, membuat dan membuat PCB

Langkah 1: Teori

Teori
Teori
Teori
Teori
Teori
Teori
Teori
Teori

Menghitung dalam basis 10 sederhana karena ada bilangan bulat yang berbeda untuk mewakili jumlah dua bilangan bulat. Contoh paling sederhana:

1 + 1 = 2

Menghitung dalam basis 2 atau biner hanya menggunakan 1 dan 0. Kombinasi 1 dan 0 digunakan untuk mewakili bilangan bulat yang berbeda dan jumlah mereka. Contoh penghitungan di basis 2:

1+1 = 0 dan Anda membawa 1 ke bit berikutnya

Saat menambahkan dua bit (A dan B) bersama-sama, 4 hasil yang berbeda dimungkinkan dengan output Sum dan Carry (Cout). Inilah yang ditunjukkan dalam tabel.

Gerbang logika mengambil input dan menghasilkan output. Beberapa gerbang logika paling dasar terdiri dari gerbang NOT, AND, dan OR yang semuanya digunakan dalam proyek ini. Mereka terdiri dari kombinasi yang berbeda dan kabel transistor dan resistor. Skema setiap gerbang disediakan.

Mengacu kembali ke tabel, Kombinasi gerbang ini dapat digunakan untuk menghasilkan hasil Sum dalam tabel. Kombinasi logika ini juga dikenal sebagai gerbang OR (XOR) eksklusif. Input harus tepat 1 untuk menghasilkan output 1. Jika kedua input adalah 1, output yang dihasilkan adalah 0. Hasil bit pembawa dapat diwakili oleh gerbang AND sederhana. Jadi, menggunakan kedua XOR dengan gerbang AND dapat mewakili seluruh tabel. Ini dikenal sebagai Half Adder dan skemanya ditunjukkan di atas.

Untuk menambahkan bilangan biner yang lebih besar, bit carry harus dimasukkan sebagai input. Hal ini dicapai dengan menggabungkan 2 sirkuit Half Adder untuk menghasilkan Full Adder. Full Adders kemudian dapat di-cascade bersama untuk menambahkan bilangan biner yang lebih besar. Dalam proyek saya, saya mengalirkan 4 Full Adders yang memungkinkan saya memiliki input 4 bit. Skema untuk Full Adder ada di atas.

Simon Inns memiliki tulisan yang bagus dan lebih mendalam tentang teori tersebut. Ada juga beberapa PDF yang menurut saya bermanfaat.

Langkah 2: Menguji Sirkuit

Menguji Sirkuit
Menguji Sirkuit
Menguji Sirkuit
Menguji Sirkuit

Langkah pertama setelah memahami cara kerja gerbang logika dan teori di balik Full Adder adalah membangun rangkaian. Saya mulai dengan mengumpulkan semua komponen yang saya butuhkan: resistor 10K dan 1K, Transistor NPN, Breadboard, Jumperwires. Saya mengikuti bersama dengan cetakan dari penambah penuh. Prosesnya membosankan tetapi saya bisa mendapatkan rangkaian kerja untuk penambah penuh. Saya akan mengikat input tinggi atau rendah dan menggunakan multimeter untuk menguji output. Sekarang saya siap untuk menerjemahkan papan tempat memotong roti dan skema ke dalam PCB.

Langkah 3: Merancang PCB Penambah Penuh

Merancang PCB Penambah Penuh
Merancang PCB Penambah Penuh
Merancang PCB Penambah Penuh
Merancang PCB Penambah Penuh
Merancang PCB Penambah Penuh
Merancang PCB Penambah Penuh

Untuk mendesain PCB saya menggunakan Fritzing secara eksklusif. Ini adalah pertama kalinya saya mendesain PCB dan program ini sepertinya paling ramah pengguna dan intuitif dengan kurva belajar terkecil. Ada program hebat lainnya seperti EasyEDA dan Eagle yang tersedia untuk membantu mendesain PCB. Dengan Fritzing, Anda dapat mulai mendesain pada papan tempat memotong roti virtual atau skema, lalu pindah ke PCB. Saya menggunakan kedua metode ini untuk proyek ini. Saat Anda siap untuk membuat PCB, semudah mengklik tombol untuk mengekspor file Anda dan mengunggahnya langsung ke Aisler, fabrikator mitra untuk Fritzing.

Gambar SchematicI dimulai dengan tab skema untuk memulai proses. Pertama, saya menemukan dan memasukkan semua komponen ke dalam ruang kerja. Selanjutnya, saya menggambar semua jejak di antara komponen. Saya memastikan untuk menambahkan input 5V dan ground ke tempat yang sesuai.

Desain PCBI klik pada tab PCB. Saat Anda berpindah langsung dari skema, Anda akan mengacaukan semua komponen yang dihubungkan oleh garis paling rapi berdasarkan jejak yang Anda buat dalam skema. Hal pertama yang saya lakukan adalah mengubah ukuran PCB abu-abu ke ukuran yang saya inginkan dan menambahkan lubang pemasangan. Saya juga menambahkan 16 pin untuk input dan output. Selanjutnya, saya mulai mengatur komponen secara logis. Saya mencoba mengelompokkan komponen dengan koneksi yang dekat satu sama lain sehingga saya meminimalkan jarak jejak. Saya melangkah lebih jauh dan mengelompokkan komponen bersama-sama dengan gerbang logika. Salah satu tujuan saya adalah untuk dapat memvisualisasikan bagaimana sirkuit bekerja dan dapat mengikuti "bit" melalui sirkuit. Setelah itu, saya menggunakan fungsi autorouting yang berjalan secara otomatis dan menggambar tracing yang dioptimalkan antara komponen. Saya skeptis bahwa proses ini menyelesaikan semua penelusuran yang benar, jadi saya memeriksa ulang dan menggambar ulang penelusuran di tempat yang seharusnya. Untungnya, fitur autorouting melakukan pekerjaan yang cukup baik dan saya hanya perlu memperbaiki beberapa tracing. Autorouter juga membuat beberapa sudut aneh dengan jejak yang bukan "praktik terbaik" tetapi saya baik-baik saja dengan itu dan semuanya masih berfungsi dengan baik. Hal terakhir yang saya lakukan adalah menambahkan teks yang akan dicetak sebagai sablon. Saya memastikan semua komponen diberi label. Saya juga mengimpor gambar gerbang logika khusus untuk menekankan pengelompokan komponen. Gambar terakhir di atas menunjukkan silkscreen.

Fabrikasi PCBI mengklik tombol fabrikasi di bagian bawah layar. Itu langsung mengarahkan saya ke situs web Aisler tempat saya dapat membuat akun dan mengunggah semua file Fritzing saya. Saya meninggalkan semua pengaturan default dan memesan.

Langkah 4: Merancang PCB Lainnya

Merancang PCB Lainnya
Merancang PCB Lainnya
Merancang PCB Lainnya
Merancang PCB Lainnya
Merancang PCB Lainnya
Merancang PCB Lainnya

Sisa PCB yang saya butuhkan adalah papan antarmuka input/output dan papan untuk IC. Saya mengikuti proses sebagai Langkah 3 untuk papan ini. Pdf dari skema yang diposting di bawah ini. Untuk IC, saya membuat semua koneksi menggunakan fitur papan tempat memotong roti virtual. Saya menyertakan skema untuk kelengkapan tetapi bisa langsung dari papan tempat memotong roti ke tab PCB yang cukup keren. Saya juga menambahkan bagan konversi basis 10 ke basis 2 pada silkscreen pada papan antarmuka I/O sebelum mengunggah dan memesan di Aisler.

Langkah 5: Menyolder Komponen ke PCB

Solder Komponen ke PCB
Solder Komponen ke PCB
Solder Komponen ke PCB
Solder Komponen ke PCB
Solder Komponen ke PCB
Solder Komponen ke PCB
Solder Komponen ke PCB
Solder Komponen ke PCB

Semua PCB tiba dan saya sangat terkesan dengan kualitasnya. Saya tidak memiliki pengalaman dengan pabrikan lain tetapi tidak akan ragu untuk menggunakan Aisler lagi.

Tugas selanjutnya adalah menyolder semua komponen yang merupakan proses yang sulit tetapi keterampilan menyolder saya meningkat pesat. Saya mulai dengan papan penambah penuh dan menyolder komponen dimulai dengan transistor, lalu resistor 1K, lalu resistor 10K. Saya mengikuti metode serupa untuk menyolder sisa komponen ke papan I/O dan IC. Setelah setiap papan Full Adder selesai saya mengujinya dengan metode yang sama seperti papan tempat memotong roti Full Adder. Anehnya, semua papan bekerja dengan benar tanpa masalah. Ini berarti bahwa papan dirutekan dengan benar dan disolder dengan benar. Ke langkah berikutnya!

Langkah 6: Menyelesaikan PCB untuk Penumpukan

Menyelesaikan PCB untuk Penumpukan
Menyelesaikan PCB untuk Penumpukan
Menyelesaikan PCB untuk Penumpukan
Menyelesaikan PCB untuk Penumpukan
Menyelesaikan PCB untuk Penumpukan
Menyelesaikan PCB untuk Penumpukan

Tugas selanjutnya adalah menyolder semua pin header ke setiap papan. Saya juga perlu menambahkan kabel jumper antara pin header yang benar dan input/output dari papan Full Adder (A, B, Cin, V+, GND, Sum, Cout). Langkah ini dapat dihindari jika Anda merancang PCB yang berbeda untuk setiap tingkat rangkaian penambah, tetapi saya ingin meminimalkan desain dan biaya dengan hanya membuat satu PCB Penambah Penuh. Akibatnya, koneksi ke input/output ini memerlukan kabel jumper. Skema yang diberikan adalah bagaimana saya menyelesaikan tugas ini dan pin mana yang digunakan untuk setiap level papan Full Adder. Gambar menunjukkan bagaimana saya menyolder kabel jumper untuk setiap papan. Saya mulai dengan menyolder kabel bebas ke pin yang benar di header. Saya kemudian menyolder header ke PCB. Setelah saya menyolder pin header dengan kabel jumper, saya menyolder ujung kabel jumper yang bebas ke kabel yang benar pada PCB. Gambar di atas menunjukkan close up pin header dengan kabel jumper yang disolder.

Langkah 7: Menghidupkan Sirkuit

Menghidupkan Sirkuit
Menghidupkan Sirkuit
Menghidupkan Sirkuit
Menghidupkan Sirkuit
Menghidupkan Sirkuit
Menghidupkan Sirkuit

Saya berencana menggunakan catu daya jack barel DC 12V untuk proyek ini, jadi saya merancang papan antarmuka I/O untuk memiliki jack/konektor barel DC untuk input daya. Karena saya menggunakan papan I/O yang sama dan ingin menggunakan catu daya tunggal, saya perlu mengatur tegangan ke 5V karena ini adalah input maksimal untuk IC SN7483A. Untuk mencapai ini, saya membutuhkan regulator 5V dan sakelar yang dapat beralih antara 12V dan 5V. Skema di atas menunjukkan bagaimana saya menghubungkan rangkaian daya bersama-sama.

Langkah 8: Mencetak Basis 3D

3D Mencetak Basis
3D Mencetak Basis
3D Mencetak Basis
3D Mencetak Basis
3D Mencetak Basis
3D Mencetak Basis

Sekarang setelah semua pengkabelan dan penyolderan selesai, saya perlu mencari tahu bagaimana semuanya akan disatukan. Saya memilih untuk CADing dan pencetakan 3D desain yang akan mengakomodasi dan menampilkan semua bagian dari proyek ini.

Pertimbangan DesainSaya membutuhkan tempat untuk memasang PCB dengan baut dan penyangga. Adders yang ditumpuk adalah yang paling menarik secara visual dan saya ingin menampilkannya saat tidak digunakan jadi saya ingin tempat untuk menyimpan IC PCB. Saya perlu mengakomodasi rangkaian daya dengan guntingan untuk sakelar dan jack/konektor barel DC. Terakhir, saya ingin semacam etalase enklosur untuk mencegah debu terkumpul di PCB terbuka, jadi saya membutuhkan tempat untuk dudukan enklosur.

Pemodelan 3DSaya menggunakan Fusion360 untuk mendesain dasarnya. Saya mulai dengan dimensi PCB dan jarak lubang pemasangan. Setelah itu saya menggunakan serangkaian sketsa dan ekstrusi untuk mengatur tinggi dan ukuran alas dengan titik pemasangan PCB. Selanjutnya saya membuat guntingan untuk enklosur, dan sirkuit daya. Kemudian, saya membuat area untuk menyimpan IC PCB saat tidak digunakan. Terakhir saya menambahkan beberapa detail tepi akhir dan mengirimkannya ke Cura, perangkat lunak pengiris saya.

PencetakanSaya memilih filamen PLA hitam. Cetakannya memakan waktu lebih dari 6 jam dan hasilnya bagus. Anehnya, semua dimensinya benar dan semuanya tampak seperti cocok satu sama lain dengan benar. Gambar di atas menunjukkan hasil cetak setelah saya menambahkan kebuntuan ke dalam lubang pemasangan. Mereka sangat cocok!

Langkah 9: Perakitan

perakitan
perakitan
perakitan
perakitan
perakitan
perakitan

Masukkan kebuntuan. Saya menempatkan semua kebuntuan ke dalam lubang pemasangan pangkalan.

Posisikan sirkuit daya ke pangkalan. Saya telah menyambungkan semuanya dan menarik semua komponen melalui lubang untuk sakelar. Selanjutnya, saya memasukkan colokan/adaptor daya ke bagian belakang alas. Saya mendorong regulator 5V ke dalam slotnya dan akhirnya sakelar dapat didorong ke posisinya.

Pasang PCB I/O. Saya menempatkan PCB IC ke dalam ruang penyimpanannya dan menempatkan PCB antarmuka I/O di atasnya. Saya memasang PCB menggunakan baut 4x M3 dan driver hex. Akhirnya saya pasang DC barrel jack ke PCB.

Tumpuk PCB Adder. Saya menumpuk Adder pertama di tempatnya. Saya memasang bagian belakang PCB ke lubang pemasangan belakang dengan 2 kebuntuan. Saya mengulangi proses ini sampai Adder terakhir terpasang dan mengamankannya dengan 2 baut M3 lagi.

Membuat kandang. Saya menggunakan akrilik 1/4 untuk penutup. Saya mengukur ketinggian akhir proyek dan, dengan dimensi CAD, memotong 5 bagian untuk sisi dan atas untuk membuat kotak sederhana dengan bagian bawah terbuka. Saya menggunakan epoksi untuk merekatkan potongan-potongan menjadi satu Akhirnya saya mengampelas potongan setengah lingkaran kecil di sisi kanan untuk mengakomodasi sakelar.

Siap Menghitung

Langkah 10: Menghitung dan Membandingkan

Image
Image
Menghitung dan Membandingkan
Menghitung dan Membandingkan
Menghitung dan Membandingkan
Menghitung dan Membandingkan

Pasang kalkulator baru Anda dan mulailah menambahkan! Bagan basis 10 ke basis 2 dapat digunakan untuk dengan cepat mengkonversi antara biner dan bilangan bulat. Saya lebih suka mengatur input lalu tekan "sama dengan" dengan membalik sakelar daya dan mengamati output biner dari LED.

Membandingkan komponen diskrit ke sirkuit Terpadu. Sekarang, Anda dapat membongkar Adders lengkap dan mencolokkan IC SN7483A ke papan I/O. (Jangan lupa untuk membalik sakelar ke arah yang berlawanan untuk memberi daya pada IC dengan 5V, bukan 12V). Anda dapat melakukan perhitungan yang sama dan Anda akan mendapatkan hasil yang sama. Cukup mengesankan untuk berpikir bahwa baik Adder komponen diskrit dan fungsi IC dengan cara yang sama hanya pada skala ukuran yang sangat berbeda. Gambar menunjukkan input dan output yang sama untuk sirkuit.

Langkah 11: Kesimpulan

Saya harap Anda menikmati proyek ini dan belajar sebanyak yang saya lakukan. Cukup memuaskan untuk mempelajari sesuatu yang baru dan mengubahnya menjadi proyek unik yang juga membutuhkan pembelajaran keterampilan baru seperti desain/fabrikasi PCB. Semua skema tercantum di bawah ini. Bagi siapa pun yang tertarik, saya juga dapat menautkan file Gerber PCB saya sehingga Anda dapat membuat Kalkulator Biner 4-bit sendiri. Selamat membuat!

Direkomendasikan: