فهرست مطالب:
- مرحله 1: مشکل
- مرحله 2: زمینه پروژه
- مرحله 3: قطعات / ابزار مورد نیاز
- مرحله 4: استراتژی فنی
- مرحله 5: کد
- مرحله ششم: فیلم
تصویری: NeckCrusher (پدال جلوه گیتار): 6 مرحله (همراه با تصاویر)
2024 نویسنده: John Day | [email protected]. آخرین اصلاح شده: 2024-01-30 08:52
دیل روزن ، کارلوس ریس و راب کخ
DATT 2000
مرحله 1: مشکل
پدال های گیتار نوازنده را به سکوی پدال محدود می کند. راه حل: عملکرد پدال های گیتار را در خود گیتار ایجاد و تعبیه کنید. این به نوازنده اجازه می دهد آزادانه در سراسر صحنه حرکت کند و از گردن گیتار به عنوان رابط به جای محدود شدن در محل پدال استفاده کند. ما این مفهوم را با ایجاد یک دستگاه جلوه بیت رنده/میزان نمونه بررسی می کنیم.
مرحله 2: زمینه پروژه
بسیاری از پدال های گیتار توسط نوازندگان برای دستکاری صدای گیتارهای خود استفاده می شود. اغلب اینها معمولاً در واحدهای مبتنی بر قفسه یا قفسه هستند ، بنابراین کنترل اثرات را به محل واحد جلوه ها محدود می کند. نصب دستگاه بر روی گیتار ، بازیکنان را قادر می سازد تا پارامترهای اثر را در هر نقطه از صحنه کنترل کنند. این بدان معناست که آنها محدود نخواهند شد و می توانند آزادی حرکت برای عملکرد خود را داشته باشند.
از آنجا که آردوینو فقط قادر به پخش 8 بیت صدا است ، انجام پردازش سیگنال با وفاداری بالا غیرممکن است. به همین دلیل است که ما جلوه هایی را که انتخاب کردیم انتخاب کردیم ، زیرا آنها بر اساس ایجاد صدایی با وفاداری کم و تحریف شده است. اینها تنها جلوه هایی هستند که به طور معقول با آردوینو امکان پذیر است.
مرحله 3: قطعات / ابزار مورد نیاز
ill مته ضربه ای
. برش سیم
rip استریپرهای سیم
● آهن لحیم کاری
Gun تفنگ چسب داغ
● پمپ لحیم کاری
● گیتار los محفظه
● لحیم کاری
● چسب داغ
● آردوینو
● تخته اولیه
● سیم روکش دار
acks جک های صوتی (x2)
● پتانسیومترها (x3)
● خازن ها: 2.2 uF (x2)
● سیم مسی در معرض دید
● پیچ (M3.5 *8)
● مقاومت ها: 1 k ، 10 k ، 1.2 k ، 1.5 k ، 390 k
Op * Op Amp (LM358) / * ترانزیستور (2N3442)
مرحله 4: استراتژی فنی
مدارات داخلی
ورودی خروجی
ما باید سیگنال صوتی که از گیتار می آید را به چیزی تبدیل کنیم که آردوینو می تواند از آن استفاده و تغییر دهد. سپس باید سیگنال دریافتی از آردوینو را به سیگنال صوتی تبدیل کنیم. آردوینو ولتاژهای 0 تا 5 ولت را می خواند ، سیگنال های صوتی از -1 ولت تا 1 ولت است. این تبدیل ها با استفاده از مقاومت ها انجام می شود. سیگنال در مدار خروجی نیز تبدیل می شود.
کتابخانه آردوینو: ArduinoDSP
شرح پروژه (رابط)
دستگیره دستگیره 1: میزان نمونه
دستگیره 2: بیت سنگ شکن
دستگیره 3: تغییر دهنده بیت
مرحله 5: کد
#شامل "dsp.h"
#cbi (sfr ، bit) (_SFR_BYTE (sfr) & = ~ _BV (bit)) #sbi (sfr، bit) (_SFR_BYTE (sfr) | = _BV (bit))
boolean div32؛ boolean div16؛
فرار بولی f_sample؛ بایت فرار badc0؛ بایت فرار badc1؛ byte فرار ibb؛
int fx1؛ int fx2؛ int fx3؛ int fx4؛
int cnta؛ int icnt؛ int icnt1؛ int icnt2؛ int cnt2؛ int iw؛ int iw1؛ int iw2 ؛ بایت bb؛
بایت dd [512]؛ // آرایه حافظه صوتی 8 بیتی
void setup () {setupIO ()؛
// بارگذاری مجدد موج پس از 1 ثانیه fill_sinewave ()؛
// تنظیم پیش شماره رسانای adc روی 64 برای فرکانس نمونه برداری 19 کیلوهرتز cbi (ADCSRA ، ADPS2) ؛ sbi (ADCSRA ، ADPS1) ؛ sbi (ADCSRA ، ADPS0) ؛ // ADC 8 بیتی در ADCH Register sbi (ADMUX، ADLAR) ؛ sbi (ADMUX ، REFS0) ؛ cbi (ADMUX ، REFS1) ؛ cbi (ADMUX ، MUX0) ؛ cbi (ADMUX ، MUX1) ؛ cbi (ADMUX ، MUX2) ؛ cbi (ADMUX ، MUX3) ؛ // حالت Timer2 PWM روی PWM cbi سریع تنظیم شده است (TCCR2A ، COM2A0) ؛ sbi (TCCR2A ، COM2A1) ؛ sbi (TCCR2A ، WGM20) ؛ sbi (TCCR2A ، WGM21) ؛ // راه اندازی برای Timer2 cbi (TCCR2B ، WGM22) ؛ // ساعت مچی Timer2 ساعت پیش زمان برای: 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؛
}
حلقه خالی () {
// بررسی وضعیت پتانسیومتر اثر و سوئیچ چرخشی readKnobs () ؛
// ************* // ***طبیعی*** // *************
if (fx1 == 0 && fx2 == 0 && fx3 == 0 && fx4 == 0) {ورودی بایت = analogRead (سمت چپ) ؛ خروجی (چپ ، ورودی) ؛ }
// ************* *** *** Phasor *** // ************
if (fx4> 100) {
fx1 = 0 ؛ fx2 = 0 ؛ fx3 = 0؛
while (! f_sample) {// منتظر مقدار نمونه از ADC} // چرخه 15625 کیلوهرتز = 64uSec PORTD = PORTD | 128؛ f_sample = false؛ bb = badc1؛ dd [icnt1] = bb؛ // بنویسید به بافر fx4 = iw * badc0 / 255؛ // مقیاس نمونه تأخیری با پتانسیومتر iw1 = dd [icnt2] ؛ // بافر تأخیر badc0 = badc0 / 20 را بخوانید؛ // محدود کردن مقدار به 512 icnt1 ++ ؛ icnt2 = icnt1 - badc0؛ icnt2 = icnt2 & 511؛ // شاخص محدود 0.. icnt1 = icnt1 & 511؛ // شاخص محدود 0..511 iw2 = iw1 + bb؛ iw2 = iw2 / 2 ؛ bb = iw2؛ OCR2A = bb؛ // مقدار نمونه برای خروجی PWM
PORTD = PORTD ^ 128؛ خروجی (چپ ، PORTD) ؛ // خروجی}
// ************* // *** Flanger *** // ************ if (fx3> 100) {
fx1 = 0 ؛ fx2 = 0 ؛ fx4 = 0؛
while (! f_sample) {// منتظر مقدار نمونه از ADC} // چرخه 15625 کیلوهرتز = 64uSec
PORTD = PORTD | 128؛ f_sample = false؛ bb = dd [icnt]؛ // بافر تأخیر iw = 127 - bb را بخوانید؛ // جایگزینی افست fx3 = iw * badc0 / 255؛ // مقیاس نمونه تأخیری با پتانسیومتر iw1 = 127 - badc1؛ // جایگزینی از نمونه جدید iw1 = iw1 + iw؛ // اگر (iw1 127) iw1 = 127 ؛ نمونه تأخیری و نمونه جدید را اضافه کنید ؛ // محدود کننده صدا bb = 127 + iw1؛ // افزودن افست dd [icnt] = bb؛ // ذخیره نمونه در بافر صدا icnt ++؛ icnt = icnt & 511؛ // limit bufferindex 0..511 OCR2A = bb؛ // مقدار نمونه برای خروجی PWM
PORTD = PORTD ^ 128؛ خروجی (چپ ، PORTD) ؛ // خروجی
} }
void readKnobs () {fx1 = analogRead (1)؛ fx2 = analogRead (2) ؛ fx3 = analogRead (3) ؛ fx4 = analogRead (4) ؛
}
void fill_sinewave () {float pi = 3.141592؛ float dx؛ شناور fd ؛ شناور fcnt؛ dx = 2 * pi / 512 ؛ // بافری 512 بایت را برای (iw = 0 ؛ iw <= 511 ؛ iw ++) {// با 50 دوره sinewawe fd = 127 * sin (fcnt) پر کنید ؛ // تن بنیادی fcnt = fcnt + dx؛ // در محدوده 0 تا 2xpi و 1/512 افزایش bb = 127 + fd ؛ // افزودن dc offset به sinewawe dd [iw] = bb؛ // مقدار را در آرایه بنویسید
} }
// ******************************************** ****************** // سرویس وقفه Timer2 در 62.5 کیلوهرتز // در اینجا سیگنال صوتی و دیگ با سرعت: 16 مگاهرتز / 256 /2 /2 = 15625 نمونه برداری می شود Hz ISR (TIMER2_OVF_vect) {
PORTB = PORTB | 1
div32 =! div32؛ // تقسیم تایمر 2 فرکانس / 2 به 31.25kHz اگر (div32) {div16 =! div16؛ if (div16) {// نمونه کانال 0 و 1 را به طور متناوب بنابراین هر کانال با 15.6kHz badc0 = ADCH نمونه برداری می شود. // دریافت کانال ADC 0 sbi (ADMUX ، MUX0) ؛ // تنظیم چندگانه بر روی کانال 1} else {badc1 = ADCH؛ // دریافت کانال ADC 1 cbi (ADMUX ، MUX0) ؛ // تنظیم مالتی پلکسر روی کانال 0 f_sample = true؛ } ibb ++؛ ibb-- ؛ ibb ++؛ ibb-- ؛ // تاخیر کوتاه قبل از شروع sbi تبدیل (ADCSRA ، ADSC) ؛ // شروع تبدیل بعدی}
}
مرحله ششم: فیلم
مشکلات احتمالی: پیکاپ کمی ضعیف تر از مدار است - به یک آمپر نیاز دارید. - در ویدئو از تقویت کننده سیگنال استفاده کردیم. (جعبه خاکستری روی میز افتاده است.)
توصیه شده:
شارژر قدیمی؟ نه ، این یک آمپ و پدال هدفون گیتار تمام لوله RealTube18 است: 8 مرحله (همراه با تصاویر)
شارژر قدیمی؟ نه ، این یک آمپ و پدال هدفون گیتار تمام لوله RealTube18 است: مرور کلی: در زمان همه گیری ، با یک شارژر باتری نیکل-کادمیوم منسوخ و لوله های خلاء رادیویی منسوخ 60 ساله خودروهای اطراف که نیاز به بازیافت دارند ، چه باید کرد؟ طراحی و ساخت یک باتری ابزار معمولی با ولتاژ پایین و لوله
پدال Overdrive باتری DIY برای جلوه های گیتار: 5 مرحله
پدال DIY باتری Overdrive برای جلوه های گیتار: برای عشق به موسیقی یا علاقه به لوازم الکترونیکی ، هدف از این دستورالعمل نشان دادن این است که SLG88104V Rail to Rail I/O 375nA Quad OpAmp با قدرت کم و پیشرفت ولتاژ پایین چقدر مهم است. می تواند مدارهای overdrive را متحول کند. تای
پدال اولیه برای جلوه های گیتار DIY: 5 مرحله (همراه با تصاویر)
Proto Pedal for DIY Guitar Effects: طراحی و ساخت جلوه های گیتار خود یک راه عالی برای ترکیب علاقه به الکترونیک و گیتار است. & nbsp؛ با این حال ، هنگام آزمایش طرح های جدید ، متوجه شدم اتصال مدار شکننده روی تخته نان بدون لحیم کاری دشوار است
پدال و تخته پدال تقویت کننده جیبی گیتار: 10 مرحله
پدال و تخته پدال تقویت کننده جیبی گیتار: سلام! این اولین آموزش من است و من سعی کردم بهترین کاری را که دوست دارم ، یعنی موسیقی انجام دهم. من یک مرد خوش صدا هستم و در وقت آزاد خود گیتار می زنم. بنابراین ، در اینجا یک تقویت کننده جیبی گیتار با خروجی 1 وات و حداقل 4 اهم است. من استفاده کردم و
پدال جلوه های گیتار و موسیقی ATMega1284P: 6 مرحله (همراه با تصاویر)
پدال جلوه های گیتار و موسیقی ATMega1284P: من Arduino Uno ATMega328 Pedalshield (که توسط Electrosmash توسعه یافته است و تا حدی بر اساس کار در Open Music Lab) توسعه داده است را به ATMega1284P که هشت برابر RAM بیشتری نسبت به Uno (16 کیلوبایت در مقابل 2 کیلوبایت) دارد منتقل کرده ام. یک مزیت غیرمنتظره دیگر