Агуулгын хүснэгт:
- Алхам 1: Функциональ тодорхойлолт
- Алхам 2: эд ангиудын жагсаалт
- Алхам 3: Утасны диаграм
- Алхам 4: Arduino эх код
Видео: Arduino Metronome: 4 алхам
2024 Зохиолч: John Day | [email protected]. Хамгийн сүүлд өөрчлөгдсөн: 2024-01-30 11:02
Бага байхдаа шинэ хөгжмийн зэмсэг сурч байхдаа маш олон шинэ зүйлийг анхаарч үзэх хэрэгтэй. Зөв хурдаар алхах нь тэдний нэг юм. Үйл ажиллагааны хувьд бүрэн гүйцэд, тохиромжтой метрономыг олж чадаагүй нь хүүхдүүдтэйгээ дахин барилгаа эхлүүлэх хамгийн сайн шалтаг болно. Энэхүү зааварчилгааны бичлэгээс та функциональ тайлбар, вэб дэлгүүрийн линк, үнэ бүхий хэсгүүдийн жагсаалт, угсрах утас диаграм, Arduino -ийн эх кодыг олох болно.
Алхам 1: Функциональ тодорхойлолт
Гэртээ эсвэл хөгжмийн сургуульд тухтай ашиглахын тулд дараах функцтэй метроном төхөөрөмжтэй байвал сайн байх болно.
- Хөгжмийн зэмсгийн дэргэд эсвэл хажууд байрлах жижиг газруудад тохирох авсаархан хэлбэрийн хүчин зүйл,
- Батерейгаар ажилладаг, бат бөх, зөөвөрлөхөд тохиромжтой,
- Хүүхдэд ч хялбархан тохируулах боломжтой, BPM утгыг үргэлж харуулдаг,
- Ротари товчлуураар минутанд 240 цохилтын цохилтыг тохируулж болно
- Дууны түвшний хяналттай дуу чимээ,
- Чихэвчийг шөнийн турш ашиглах чимээгүй горим,
- 8 хүртэлх LED хүртэлх цохилтын харааны хариу (1/4, 2/4, 3/3, 4/4, 6/8 гэх мэт),
- Тэргүүлэх өргөлтийг оруулах эсвэл оруулахгүйгээр, харааны болон дуут санал хүсэлтээр.
Метроном горимыг асаахад жижиг дэлгэц дээр 60 BPM -ээс эхэлж, хурдыг 10 -аас 240 -ийн хооронд эргүүлэх товчлуураар тохируулах боломжтой болно. Неопикселийн цохилтыг цэнхэр LED -ээр харуулдаг. Бариулыг дарахад цохилтын тохируулгын горимд шилжих бөгөөд ногоон LED нь тогтоосон цохилтын бүтцийг харуулна. Эргэдэг товчлуур нь цохилтын бүтцийг нэмэгдүүлэх буюу багасгах болно (2/2, 3/3, 4/4, 6/8 гэх мэт). Дээрх 8 LED -ээс дээш, цагийн зүүний дагуу эргүүлэхэд гол өргөлтийг асаах бөгөөд эхний LED нь үүнийг улаан өнгөөр харуулна. Тэргүүлэх өргөлт нь сонсогдож буй санал хүсэлтэй байх болно. Үүнийг цагийн зүүний эсрэг эргүүлэх замаар унтрааж болно. Бариулыг дарахад цохилтын тохируулгын горимоос метроном горим руу буцна.
Алхам 2: эд ангиудын жагсаалт
Танд хэрэг хэрэгтэй болно. Ямар ч хэлбэр, хэмжээтэй худалдаж авах боломжтой, гэхдээ бид найздаа хаясан хуучин гарын авлагын VGA унтраалгатай сайхан хар төмөр хайрцагтай байсан. Үлдсэн хэсгүүдийг доор жагсаав.
- 9В батерей, 1.50 доллар
- Батерейны холбогч кабель, 0, 16 ам
- Зүү толгойтой Arduino Nano, 2.05 доллар
- Nano IO Extension Shield, USD 1, 05
- Цахилгаан тэжээлийн мини слайд, 0.15 доллар
- Piezo дуугаралт, 0 доллар, 86 доллар
- Adafruit Neopixel WS2812 8 бит, USD 1, 01
- OLED дэлгэц 128x64, 1, 53 доллар
- Ротари кодлогч, 0, 50 доллар
- Dupont кабель F/F, USD 0, 49
Бүрэлдэхүүн хэсгүүдийн нийт үнэ 10 доллараас бага байна.
Алхам 3: Утасны диаграм
Олон GND болон VCC холболтыг гагнах ажилд санаа зовохгүйн тулд Nano IO өргөтгөлийн самбарыг ашиглана уу. Нано зүү толгой ба Neopixel модулийн холбогчдод хамгийн бага гагнуур хийх шаардлагатай болно. Dupont утас ашиглах нь диаграммд үзүүлсэн шиг бусад утсыг тогтвортой холбох боломжийг олгодог. 9V батерей нь GND ба VIN -тэй холбогддог бөгөөд сүүлийнх нь цахилгаан гүйдэг унтраалгаар дамждаг. Эргэдэг кодлогч модуль нь нэгдсэн унтраалга товчлууртай бөгөөд тэдгээрийг хэрхэн холбох талаар илүү хялбар ойлгохын тулд диаграммд тусад нь харуулав. Ротари хэсэг (CLK ба DT) нь PIN2 ба PIN3 -т тус тус холбогдсон байдаг, учир нь эдгээр нь тасалдлыг зохицуулах чадвартай цорын ганц NANO зүү юм. Ротари GND нь Nano -ийн GND PIN -тэй холбогддог. Нэгдсэн унтраалга товчлуур нь PIN4 -т холбогдсон байна. Piezo дуугаралт нь PIN5 болон GND -тэй холбогдсон байна. Adafruit Neopixel модуль нь PIN7, түүний VIN ба GND -ийг Nano 5V ба GND -т тус тус холбосон болно. Жижиг OLED дэлгэц нь I2C автобусны интерфэйстэй холбогддог бөгөөд энэ нь SDA ба SDL -ийн PIN A4 ба A5 юм. VCC ба GND нь Наногийн 5V ба GND -д ордог. Энэ нь бидний Дюпонт утас холболтыг дуусгасан.
Алхам 4: Arduino эх код
// Metronome, тэргүүлэх өргөлт, харааны болон сонсголтой яриа - 2019 Питер Цургай
#оруулах #оруулах #оруулах #оруулах #оруулах & Утас, OLED_RESET); #pin_neopixel 7 тодорхойлох #NUMPIXELS 8 тодорхойлох #BRIGHTNESS 32 Adafruit_NeoPixel пиксел = Adafruit_NeoPixel (NUMPIXELS, pin_neopixel, NEO_GRB + NEO_KHZ800); #тодорхойлох IDLE_11 0 #тодорхойлох SCLK_01 1 #тодорхойлох SCLK_00 2 #тодорхойлох SCLK_10 3 #тодорхойлох SDT_10 4 #тодорхойлох SDT_00 5 #тодорхойлох SDT_01 6 int төлөв = IDLE_11; #define CLK 2 #define DT 3 #pin_switch 4 тодорхойлох #pin_buzzer 5 int bpm = 60; int bpmFirst = 0; // LED эхлээд асаалттай, үлдсэн хэсэг нь унтраалттай… int tack = 4; bool тэргүүлэгчTack = худал; int pos = 0; int curVal = 0; int prevVal = 0; хүчингүй тохиргоо () {piksel.begin (); pinMode (pin_buzzer, OUTPUT); Цаг хэмжигч 1. эхлүүлэх (1000000*60/bpm/2); Таймер 1. хавсаргах Тасалдал (дуу чимээ сонсох); pinMode (CLK, INPUT_PULLUP); pinMode (DT, INPUT_PULLUP); pinMode (pin_switch, INPUT_PULLUP); attachInterrupt (digitalPinToInterrupt (CLK), rotaryCLK, CHANGE); attachInterrupt (digitalPinToInterrupt (DT), rotaryDT, CHANGE); if (! display.begin (SSD1306_SWITCHCAPVCC, 0x3C)) {// Хаяг 0x3D нь 128x64 (;;); // Үргэлжлүүлэхгүй, үүрд эргүүл} display.clearDisplay (); display.display (); } void loop () {if (digitalRead (pin_switch) == LOW) {саатал (100); while (digitalRead (pin_switch) == LOW); саатал (100); Timer1.detachInterrupt (); showGreenTacks (); while (digitalRead (pin_switch) == HIGH) {if (curVal> prevVal) {tack+= 1; if (tack> 8) {if (leadTack) tack = 8; өөр {leadTack = үнэн; бэхлэх = 1; }}} өөр if (curValprevVal) {bpm+= 2; хэрэв (bpm> 240) bpm = 240; } if if (curVal = 100) display.print (""); else display.print (""); дэлгэц.хэвлэх (bpm); display.display (); } void buzztick () {if (bpmFirst == 0) {int volume = 4; if (leadTack && pos == 0) эзлэхүүн = 8; for (int i = 0; i
Зөвлөмж болгож буй:
Өөр өөр хурдны хувьд програмчлагдах Servo Metronome: 3 алхам
Өөр өөр хурдны хувьд програмчлагдах Servo Metronome: Метрономоо өөрөө хий. Танд хэрэгтэй зүйл бол Arduino Mega 2560 гарааны хэрэгсэл болон нийцтэй компьютер юм
555 цаг тоолууртай Metronome: 3 алхам
555 цагийн тоолууртай метроном: Метроном гэдэг нь хэрэглэгчдийн тохируулах боломжтой интервалаар дуут товшилт эсвэл бусад дуу чимээг гаргадаг төхөөрөмж бөгөөд ихэвчлэн минут тутамд (BPM) байдаг. Хөгжимчид энэ төхөөрөмжийг ашиглан тогтмол импульс тоглодог. (Https://en.wikipedia.org/w
Бөмбөрчдөд зориулсан Visual Metronome: 8 алхам
Бөмбөрчдөд зориулсан Visual Metronome: Надад найз, хамт ажилладаг хүн бий. Түүний кабин нь ажил дээрээ миний хажууд байдаг тул миний электроник, програм хангамжийн бүх төслийг харж, сонсдог. Жил гаруйн хугацаа өнгөрсөн болохоор энэ бүхэн яаж болсныг ч санахгүй байна
555 Timer Metronome - Аудио ба визуал: 8 алхам (зурагтай)
555 Timer Metronome - Audio & Visual: Миний хүү саяхан укулеле тоглож эхэлсэн бөгөөд метроном нь түүний цагийг зохицуулахад тусална гэж бодсон. Үйлдвэрлэгчийн хувьд би 555 таймерын тусламжтайгаар өөрийгөө амархан ташуурдах болно гэж бодсон (та үүнийг юу хийж болохгүй вэ …) Дэлгүүр дээр жаахан хайсны дараа
CPE 133 Metronome: 3 алхам
CPE 133 Metronome: Cal Poly дахь бидний эцсийн төслийн хувьд бид метроном гэж нэрлэгддэг хэмнэл хадгалах төхөөрөмж бүтээсэн бөгөөд хөгжим, дижитал дизайны сонирхлыг харгалзан энэхүү төслийг сонгосон. Бид хамтран ажиллахад туслах код, онлайн хичээлээ зохиоход туслахын тулд CPE 133 -ийн өмнөх лабораториудыг ашигласан