Isi kandungan:
- Langkah 1: Masalah
- Langkah 2: Konteks Projek
- Langkah 3: Bahagian / Alat Diperlukan
- Langkah 4: Strategi Teknikal
- Langkah 5: Kod
- Langkah 6: Video
Video: NeckCrusher (Pedal Kesan Pemasangan Gitar): 6 Langkah (dengan Gambar)
2024 Pengarang: John Day | [email protected]. Diubah suai terakhir: 2024-01-30 11:07
Dale Rosen, Carlos Reyes dan Rob Koch
DATT 2000
Langkah 1: Masalah
Pedal gitar menghadkan pemuzik ke platform pedal. Penyelesaian: Membina dan memasukkan fungsi pedal gitar ke dalam gitar itu sendiri. Ini membolehkan pemuzik bergerak bebas melintasi panggung, menggunakan leher gitar sebagai antara muka dan bukannya terhad pada lokasi papan pedal. Kami akan meneroka konsep ini dengan membuat peranti kesan kadar bitcrusher / sampel.
Langkah 2: Konteks Projek
Terdapat banyak pedal gitar yang digunakan oleh pemuzik untuk memanipulasi bunyi gitar mereka. Sebilangan besar ini biasanya terdapat di unit rak atau stomp box, oleh itu mengehadkan kawalan kesan ke lokasi unit kesan. Memasang peranti pada gitar membolehkan pemain mengawal parameter kesan di mana sahaja di atas panggung. Ini bermakna mereka tidak akan dihalang dan dapat memiliki kebebasan untuk bergerak untuk penampilan mereka.
Oleh kerana Arduino hanya mampu audio 8 bit, mustahil untuk melakukan pemprosesan isyarat kesetiaan tinggi. Inilah sebabnya mengapa kami memilih kesan yang kami lakukan, kerana ia berdasarkan pada menciptakan kesetiaan yang rendah, suara yang terdistorsi. Ini adalah satu-satunya kesan yang mungkin berlaku dengan Arduino.
Langkah 3: Bahagian / Alat Diperlukan
● Bor Impak
● Pemotong Kawat
● Pelucut Kawat
● Besi Pematerian
● Senapang Panas
● Pam Desoldering
● Gitar ● Kandang
● Pateri
● Gam Panas
● Arduino
● Lembaga Proto
● Kawat Bersalut
● Jack Audio (x2)
● Potensiometer (x3)
● Kapasitor: 2.2 uF (x2)
● Kawat Tembaga Terdedah
● Skru (M3.5 * 8)
● Perintang: 1 k, 10 k, 1.2 k, 1.5 k, 390 k
● * Op Amp (LM358) / * Transistor (2N3442)
Langkah 4: Strategi Teknikal
Litar Dalaman
Input / Keluaran
Kita perlu menukar isyarat audio yang berasal dari gitar menjadi sesuatu yang dapat digunakan & diubah suai oleh arduino. Kita kemudiannya perlu menukar isyarat yang datang dari arduino kembali menjadi isyarat audio. Arduino membaca voltan dari 0V hingga 5V, isyarat audio dari -1V hingga 1V. Penukaran ini dilakukan dengan menggunakan perintang. Isyarat akan ditukar dalam rangkaian output juga.
Perpustakaan Arduino: ArduinoDSP
Penerangan Projek (Antaramuka)
Tombol Tombol 1: Kadar Sampel
Tombol 2: Penghancur Bit
Tombol 3: Pengubah Bit
Langkah 5: Kod
#sertakan "dsp.h"
#define cbi (sfr, bit) (_SFR_BYTE (sfr) & = ~ _BV (bit)) #define sbi (sfr, bit) (_SFR_BYTE (sfr) | = _BV (bit))
div32 boolean; boolean div16;
f_sample boolean yang tidak menentu; byte badc0 tidak menentu; byte badc1 tidak menentu; byb byb yang tidak menentu;
int fx1; int fx2; int fx3; int fx4;
int cnta; int icnt; int icnt1; int icnt2; int cnt2; int iw; int iw1; int iw2; bait bb;
bait dd [512]; // Array Memori Audio 8-Bit
batal persediaan () {setupIO ();
// muat semula gelombang selepas 1 saat mengisi_sinewave ();
// tetapkan prescler adc ke 64 untuk frekuensi pensampelan 19kHz cbi (ADCSRA, ADPS2); sbi (ADCSRA, ADPS1); sbi (ADCSRA, ADPS0); // ADC 8-Bit di ADCH Register sbi (ADMUX, ADLAR); sbi (ADMUX, REFS0); cbi (ADMUX, REFS1); cbi (ADMUX, MUX0); cbi (ADMUX, MUX1); cbi (ADMUX, MUX2); cbi (ADMUX, MUX3); // Mod PWM Timer2 ditetapkan ke PWM cbi pantas (TCCR2A, COM2A0); sbi (TCCR2A, COM2A1); sbi (TCCR2A, WGM20); sbi (TCCR2A, WGM21); // Persediaan untuk Timer2 cbi (TCCR2B, WGM22); // Timer2 Clock Prescaler kepada: 1 sbi (TCCR2B, CS20); cbi (TCCR2B, CS21); cbi (TCCR2B, CS22); // Timer2 PWM Port Enable sbi (DDRB, 3); // cli (); cbi (TIMSK0, TOIE0); sbi (TIMSK2, TOIE2); iw1 = badc1;
}
gelung kosong () {
// periksa status potensiometer kesan dan suis putar readKnobs ();
// ************* // *** Biasa *** // *************
jika (fx1 == 0 && fx2 == 0 && fx3 == 0 && fx4 == 0) {input byte = analogRead (kiri); output (kiri, input); }
// ************* // *** Phasor *** // *************
jika (fx4> 100) {
fx1 = 0; fx2 = 0; fx3 = 0;
sementara (! f_sample) {// tunggu Nilai Sampel dari ADC} // Kitaran 15625 KHz = 64uSec PORTD = PORTD | 128; f_sampel = salah; bb = badc1; dd [icnt1] = bb; // tulis ke penyangga fx4 = iw * badc0 / 255; // skala sampel tertunda dengan potensiometer iw1 = dd [icnt2]; // baca penangguhan kelewatan badc0 = badc0 / 20; // hadkan nilai kepada 512 icnt1 ++; icnt2 = icnt1 - badc0; icnt2 = icnt2 & 511; // had indeks 0.. icnt1 = icnt1 & 511; // had indeks 0..511 iw2 = iw1 + bb; iw2 = iw2 / 2; bb = iw2; OCR2A = bb; // Contoh Nilai untuk Hasil PWM
PORTD = PORTD ^ 128; output (kiri, PORTD); // Pengeluaran }
// ************* // *** Flanger *** // ************* jika (fx3> 100) {
fx1 = 0; fx2 = 0; fx4 = 0;
sementara (! f_sample) {// tunggu Nilai Sampel dari ADC} // Kitaran 15625 KHz = 64uSec
PORTD = PORTD | 128; f_sampel = salah; bb = dd [icnt]; // baca penampan kelewatan iw = 127 - bb; // subset offset fx3 = iw * badc0 / 255; // skala sampel tertunda dengan potensiometer iw1 = 127 - badc1; // subset abstrak dari sampel baru iw1 = iw1 + iw; // tambahkan sampel tertunda dan sampel baru jika (iw1 127) iw1 = 127; // Penghad audio bb = 127 + iw1; // tambah ofset dd [icnt] = bb; // simpan sampel dalam penyangga audio icnt ++; icnt = icnt & 511; // had bufferindex 0..511 OCR2A = bb; // Contoh Nilai untuk Hasil PWM
PORTD = PORTD ^ 128; output (kiri, PORTD); // Pengeluaran
} }
batal readKnobs () {fx1 = analogRead (1); fx2 = analogRead (2); fx3 = analogRead (3); fx4 = analogRead (4);
}
batal fill_sinewave () {float pi = 3.141592; apungan dx; apungan fd; terapung fcnt; dx = 2 * pi / 512; // isi bufferarry bait 512 untuk (iw = 0; iw <= 511; iw ++) {// dengan 50 tempoh sinewawe fd = 127 * sin (fcnt); // nada asas fcnt = fcnt + dx; // dalam julat kenaikan 0 hingga 2xpi dan kenaikan 1/512 bb = 127 + fd; // tambahkan dc offset ke sinewawe dd [iw] = bb; // tuliskan nilai menjadi tatasusunan
} }
// ************************************************ ****************** // Timer2 Interrupt Service pada 62.5 KHz // di sini isyarat audio dan panci disampel dalam kadar: 16Mhz / 256/2/2 = 15625 Hz ISR (TIMER2_OVF_vect) {
PORTB = PORTB | 1;
div32 =! div32; // bahagi frekuensi pemasa2 / 2 hingga 31.25kHz jika (div32) {div16 =! div16; jika (div16) {// contoh saluran 0 dan 1 bergantian sehingga setiap saluran diambil sampel dengan 15.6kHz badc0 = ADCH; // dapatkan saluran ADC 0 sbi (ADMUX, MUX0); // tetapkan multiplexer ke saluran 1} lain {badc1 = ADCH; // dapatkan saluran ADC 1 cbi (ADMUX, MUX0); // tetapkan multiplexer ke saluran 0 f_sample = true; } ibb ++; ibb--; ibb ++; ibb--; // kelewatan pendek sebelum memulakan penukaran sbi (ADCSRA, ADSC); // mulakan penukaran seterusnya}
}
Langkah 6: Video
Masalah Berpotensi ● Pengambilan agak lemah terhadap litar kuasa - memerlukan op amp. - Dalam video kami menggunakan penggalak isyarat. (Kotak kelabu terletak di atas meja.)
Disyorkan:
Pedal Overdrive Bertenaga Bateri DIY untuk Kesan Gitar: 5 Langkah
Pedal Overdrive Powered DIY Battery untuk Kesan Gitar: Untuk cinta muzik atau cinta elektronik, tujuan Instructable ini adalah untuk menunjukkan betapa kritikalnya SLG88104V Rail to Rail I / O 375nA Quad OpAmp dengan daya rendah dan kemajuan voltan rendah boleh merevolusikan litar overdrive. Ty
Kesan Gitar Parasit Studio Bit Breaker: 5 Langkah (dengan Gambar)
Parasit Studio Bit Breaker Guitar Effect Build: Parasite Studio adalah laman web kesan gitar DIY yang menyediakan pelbagai bahan untuk membuat kesan gitar anda sendiri, terutamanya yang berurusan dengan kesan digital seperti bitbreaker atau fuzz. Alamat Parasite Studio terletak di http://www.parasi
Pedal Proto untuk Kesan Gitar DIY: 5 Langkah (dengan Gambar)
Pedal Proto untuk Kesan Gitar DIY: Merancang dan membina kesan gitar anda sendiri adalah kaedah terbaik untuk menggabungkan minat terhadap elektronik dan gitar. Namun, ketika menguji reka bentuk baru, saya mendapati rangkaian rapuh di papan roti tanpa pateri sukar disambungkan ke tambalan
Walabot FX - Kawalan Kesan Gitar: 28 Langkah (dengan Gambar)
Walabot FX - Kawalan Kesan Gitar: Kawal kesan gitar kegemaran anda dengan menggunakan gitar yang hebat
Kes Kesan Gitar Valve dan Bekalan Kuasa: 7 Langkah (dengan Gambar)
Sarung Efek Gitar dan Bekalan Kuasa: Ini akan menjadi sumber kuasa dan casis untuk pedal kesan gitar berasaskan injap. Saya memikirkan ini semasa saya berjalan sehingga kemajuan yang akan saya tunjukkan tidak semestinya mengikut urutan yang saya ambil - yang berikut adalah laluan yang sesuai, disusun semula dan tidak diselesaikan