Isi kandungan:

Metronome CPE 133: 3 Langkah
Metronome CPE 133: 3 Langkah

Video: Metronome CPE 133: 3 Langkah

Video: Metronome CPE 133: 3 Langkah
Video: CPE 133 Project: Square Muse Sequencer 2024, November
Anonim
Metronome CPE 133
Metronome CPE 133

Untuk projek akhir kami di Cal Poly, kami membuat peranti penahan tempo yang disebut metronom, kami memilih projek ini kerana muzik dan reka bentuk digital yang menarik. Kami menggunakan makmal masa lalu di CPE 133 untuk membantu merancang kod dan tutorial dalam talian kami untuk membantu pembinaan litar LED di papan roti.

Langkah 1: Senibina Sistem

Senibina Sistem
Senibina Sistem
Senibina Sistem
Senibina Sistem
Senibina Sistem
Senibina Sistem

Kami melaksanakan reka bentuk ini menggunakan papan Basys 3 FPGA, Breadboard, LED, Resistors, dan jumper untuk sambungan.

Tujuan reka bentuk ini adalah untuk meningkatkan dan menurunkan kadar di mana lampu kilat LED pergi dan balik. Laju saat mereka berkelip disebut tempo. Tempo yang diinginkan dicapai dengan menggunakan butang pada papan Basys 3 FPGA untuk menambah atau menurunkan tempo cahaya.

Sekiranya butang atas ditekan, lampu akan meningkat dengan cepat, jika tombol bawah ditekan, kecepatan akan menurun.

Langkah 2: Senibina Litar

Senibina Litar
Senibina Litar
Senibina Litar
Senibina Litar

Senibina Sistem: Butang De-bounce: Kami menerapkan butang de-bounce di litar untuk memastikan bahawa apabila kami mengklik butang untuk meningkatkan tempo satu selang. Tanpa bouncing satu tekan butang akan meningkat dengan kekerapan jam.

Tempo Changer: Tempo changer digunakan untuk menambah atau menurunkan nilai MAX_COUNT yang digunakan oleh pembahagi jam untuk mengendalikan output jam yang mendorong LED.

Daftar: Daftar digunakan untuk menyimpan nilai MAX_COUNT baru kami yang dihasilkan dari pengubah tempo. CLR ditambahkan ke daftar untuk menetapkan semula MAX_COUNT ke nilai yang sepadan dengan frekuensi jam 1 saat.

Pembahagi Jam: Pembahagi jam digunakan untuk memperlahankan denyutan jam pada papan BASYS 3, ini dilakukan dengan membahagikan frekuensi jam dengan nilai MAX_COUNT yang telah diubah dalam pengubah tempo.

Shift Register: register peralihan 4-bit yang diubah digunakan untuk mengeluarkan nilai '1' atau tinggi ke litar LED kami di papan roti di pinggir kenaikan denyut jam. Dengan 4 LED di papan roti, kami dapat mengeluarkan hanya 1 dari 4 LED pada satu masa, berturut-turut, membuat urutan 4-beat berulang. Register shift diubah sedemikian rupa sehingga output 4-bit hanya mengandungi 1 nilai tinggi, iaitu "0001" atau "0100."

Disyorkan: