Мазмуну:

Ардуино менен ретро үн чипи - SAA1099: 16 кадам (сүрөттөр менен)
Ардуино менен ретро үн чипи - SAA1099: 16 кадам (сүрөттөр менен)

Video: Ардуино менен ретро үн чипи - SAA1099: 16 кадам (сүрөттөр менен)

Video: Ардуино менен ретро үн чипи - SAA1099: 16 кадам (сүрөттөр менен)
Video: ЗАПРЕЩЁННЫЕ ТОВАРЫ с ALIEXPRESS 2023 ШТРАФ и ТЮРЬМА ЛЕГКО! 2024, Ноябрь
Anonim
Image
Image
Зым - SAA1099
Зым - SAA1099

Бул көрсөтмөдө, мен сизге винтаждык үн синтезинин чипи менен Arduino Uno колдонууну, midi файлдарды төрт бурчтуу толкундуу жакшылыкта ойнотууну көрсөтөм!

Эгер сиз бул долбоордун тез аткарылышын кааласаңыз, анда жогорудагы видеону көрүңүз. Болбосо, улантыңыз!

1 -кадам: Видео

Image
Image

Эгерде сиз бардык көрсөтмөлөрүңүздү ачык жана кыска видеолордо көрүүнү кааласаңыз, анда биз сизге кам көрдүк!

Калгандарыбыз үчүн, сиз дагы, майда -чүйдөсүнө чейин жана жазуу жүзүндөгү көрсөтмөлөрдү уланта аласыз.

2 -кадам: Бөлүктөр жана материалдар

Бул үчүн сизге бул нерселер керек болот:

(Шилтемелер eBay буюмдары үчүн)

  • An Arduino (Uno, Nano, Leonardo, алардын баары иштеши керек)
  • Жок дегенде орто өлчөмдөгү нан
  • SAA1099 стерео үн генераторунун чипи
  • Breadboard секирүүчү зымдары (Же болбосо, мен дупонт ургаачыдан секирген аялдарга чейин колдонгонду жакшы көрөм, эки четине 20мм төөнөгүч казыктары киргизилген- Күчтүү)
  • 8Mhz TTL осциллятору (AliExpress шилтемеси zweigelt тарабынан берилген)
  • Стерео (же моно) аудио джек
  • 2 x 1K каршылыгы (100 лот)
  • 1 x 10K каршылыгы (50 лот)
  • 2 x 100pF Конденсаторлор
  • (Кошумча) Кээ бир светодиоддор, жок дегенде 1 (Ар кандай түстө, бул жерде 100 долларга ар кандай түстөр!)

Берилген шилтемелерди колдонуп, жалпы наркы жеткирүүнү кошкондо $ 23.25 түзөт. Албетте, анын көбү дүйнөнүн жарымынан келет, андыктан жеткирүү адатта бир айга созулат. Эгерде сиз тезирээк жеткирүүнү кааласаңыз, анда бир аз көбүрөөк төлөшүңүз керек болот.

3 -кадам: Wiring - SAA1099

Зым - SAA1099
Зым - SAA1099
Зым - SAA1099
Зым - SAA1099

Эгерде схемалар сиздики болсо, бул жерде! Калгандарыбыз этап -этабы менен өтүп, же видеону көрө алабыз.

  • SAA1099ду чиптин учу менен аягына каратып, нан тактасынын аягына коюңуз.
  • Эми, бийлик. SAA1099дагы VDD (пин 18) бийликке өтөт, андан кийин VSS (пин 9) жерге туташат.
  • Андан кийин, төмөн тартылуу үчүн, CS (пин 2) менен жерге ортосунда зым салыңыз

Мен ошондой эле мен тиркеген маалымат барагын кароону сунуштаар элем.

4 -кадам: Wiring - TTL осциллятору

Зым - TTL осциллятору
Зым - TTL осциллятору
Зым - TTL осциллятору
Зым - TTL осциллятору
  • Биз TTL осцилляторун нан тактасынын жанына коебуз, ошондо саат чыгаруу пини SAA1099дагы саат кирүүсүнө жакыныраак болот (Pin 8)
  • Сиз алдыга жылып, TTL осцилляторуна электр менен жерди туташтырсаңыз болот. (Мен видеомду кийинчерээк күттүм, ошондуктан менде сүрөт жок). Жогорудагы сүрөттө кайсы казыктар бар экени көрсөтүлгөн.

5 -кадам: Wiring - Iref жана Chip Interface

Зым - Iref жана Chip Interface
Зым - Iref жана Chip Interface
Зым - Iref жана Chip Interface
Зым - Iref жана Chip Interface
  • Iref (пин 6) менен 5V ортосундагы 10K каршылыгын туташтырыңыз.
  • Санарип пин 8ди WRге (пин 1) SAA1099го туташтырыңыз.
  • Санарип пин 9ны SAA1099догу А0го (пин 3) туташтырыңыз.

6 -кадам: Wiring - Үн компоненттери

Зым - үн компоненттери
Зым - үн компоненттери
Зым - үн компоненттери
Зым - үн компоненттери
Зым - үн компоненттери
Зым - үн компоненттери
  • OUTR (pin 4) менен GND ортосунда 100pF конденсатор туташтырыңыз
  • OUTR (pin 4) менен 5V ортосунда 1K каршылыгын туташтырыңыз
  • Биз дагы OUTL үчүн ушундай кылабыз (пин 5)
  • OUTL (пин 5) менен GND ортосунда 100pF конденсатор туташтырыңыз
  • OUTL (пин 5) менен 5V ортосунда 1K каршылыгын туташтырыңыз

Эскертүү! Резисторлордун/конденсаторлордун зымдарынын бири да тийбей турганын текшериңиз, антпесе нерселер иштебейт жана (болжолдуу түрдө) жүзүңүздө жарылып кетиши мүмкүн.

7 -кадам: Зым - Аудио Jack

Зым - Аудио Jack
Зым - Аудио Jack
Зым - Аудио Jack
Зым - Аудио Jack
Зым - Аудио Jack
Зым - Аудио Jack
  • Кичинекей секиргич зымды 5В менен нандагы бош катарга туташтырыңыз.
  • Аудио уячаңызды 5Vдан секирүүчү Аудио Jack'теги "Sleeve" казыгына туташтыргыдай кылып коюңуз
  • L жана R (Же аудио пин, эгерде сизде Моно уячасы бар болсо), SAA1099догу OUTL (pin 5) жана OUTR (pin 4) казыктарына туташтырыңыз.

Эскертүү! Моно аудио джектерде, чынында, бир пин 5Vга, бирөө OUTL же OUTRге туташып турса, эмне болгону маанилүү эмес. Жакшы угулат. Антпесе, анда сиз зымыңызды кайра текшерип көрүшүңүз мүмкүн.

8 -кадам: Кабелдер - Баннерлерге Power

Кабелдик байланыш - Power Breadboard
Кабелдик байланыш - Power Breadboard
Кабелдер - Power Breadboard
Кабелдер - Power Breadboard
  • Өткөргүч зымдарды колдонуп, Breadboard электр автобусунун эки тарабын бири -бирине туташтырыңыз.
  • Бир тарапты Arduinoдогу 5V жана GND казыктарына туташтырыңыз, зымдарды эч жакка аралаштырбаганыңызды текшериңиз. Эгер андай кылсаңыз, сыйкырдуу түтүн чыгып кетиши мүмкүн.

9 -кадам: Кабелдер - Маалымат линиялары

Wiring - Data Lines
Wiring - Data Lines

D0 аркылуу D7 аркылуу Arduino'го D0 (10 -пин) аркылуу D7 (пин 17) аркылуу SAA1099 боюнча, ирети менен туташыңыз

Менин оюмча, DuPontтун аял-аял секирүүчү зымдары, эки учунда 15-20ММ төөнөгүчтөр, эркек-эркек дюпонт зымдарына караганда алда канча жакшы иштейт. Мындан тышкары, аларды аял-ургаачы же эркек-ургаачы катары колдонсоңуз болот. Экөө тең eBayде чоң өлчөмдө, кичине өзгөрүүлөр үчүн оңой эле табылат. Ардуино джигитине жакшы Рождество белеги!

10 -кадам: Кошумча LED (лер)

Кошумча LED (лер)
Кошумча LED (лер)
Кошумча LED (лер)
Кошумча LED (лер)

Мен бул жерде бардыгын кантип курууну этап -этабы менен айтпайм, бирок LED кошуу үчүн бир нече жакшы жерлер бар. Биринчиден, мен Arduino SAA1099га буйрук жөнөткөн сайын көрсөтүү үчүн WR (пин 1) менен GNDдин ортосунда 3 мм кызыл LED туташтырдым.

Мен LED диоддорун маалымат линияларына мурун туташтыргам, бул ар бир линиядагы чыныгы бинардык маалыматтарды көрүүгө мүмкүндүк берет. Мен бул орнотууну "Arduino and SAA1099 - Fireflies" видеомдо, ошондой эле дагы 6 LED жана активдүү болгон ар бир канал үчүн ар бир LEDди жарыктандыруу үчүн кошумча кодду колдондум.

Светодиоддор канчалык көп болсо, муздак көрүнөт!

11 -кадам: Код

Code!
Code!
Code!
Code!

Эми сиз схеманы түзгөндөн кийин, кош байланыштарды текшериңиз! Сиз кымбат ардуино менен Soundchipти жардыргыңыз келбейт! (Эгер кылсаңыз, анда. Бул менин ишим эмес)

Сиз акыл -эсиңиз бар деп ойлоп, баарын текшерип көрсөк, биз аны программалоого кирише алабыз.

  • Китепкана https://github.com/Bobcatmodder/SAATunes дарегинде
  • Сиз SAATunes.zip файлын каалайсыз, андыктан улантыңыз жана жүктөп алыңыз.
  • Эми Arduino IDE ачыңыз.
  • "Эскиз", "Китепкананы кошуу" астындагы ".zip китепканасын кошууну" чыкылдатыңыз
  • SAATunes китепканасын жүктөп алган жерге барыңыз. (Бул сиздин үстөлүңүзбү, жүктөөлөрбү же (уят нерсени киргизиңиз) папкасы болсо да мага баары бир- Жөн эле табыңыз)
  • Аны тандап, "Ачуу" баскычын басыңыз
  • Бул сиздин китепканаларыңызга кошулганын айтыш керек.

12 -кадам: Аны сынап көрүңүз

Сыноо!
Сыноо!
Сыноо!
Сыноо!
  • Мисал SAATunes программасын ачыңыз, "Файл", "Мисалдар", "SAATunes", "SAATunes-Uno".
  • Ардуинону компьютерге жана кандайдыр бир динамикке сайыңыз.
  • Программаны Arduinoго жүктөңүз.

Сиз аккордду угушуңуз керек, андан кийин Бетховендин жоголгон пенни үчүн каары. Эгерде Классикалык нерсе сиздин колуңузда болбосо, коркпогула, анткени биз жакында өзүбүз тандаган MIDI файлдарын колдонууну үйрөнөбүз.

Эгер эч нерсе укпасаңыз, бир нече нерсени текшериңиз: Биринчиден, сиздин динамик күйгүзүлгөнбү? Баарын өйдө карай буруңуз. Анда, чынында, arduino күйүп турабы? Программа туура жүктөлдүбү? Бардык зымдарды скематикалык жана маалыматтык баракча менен текшерип, кайра аракет кылыңыз.

13 -кадам: Өзүңүздүн MIDI файлдарыңызды колдонуу - Конверсия программасы

Өзүңүздүн MIDI файлдарыңызды колдонуу - Конверсия программасы
Өзүңүздүн MIDI файлдарыңызды колдонуу - Конверсия программасы

Бетховенден башка нерсени сынап көрүүгө даярсызбы? Абдан жакшы, мына кетиңиз.

MIDI файлдарын C ++ Bytestreamsке айландыруу үчүн бизге Len Shustek программасы керек болот. Ал менин кодумду негиздеген китепкананын жаратуучусу жана менин китепканам анын байтстрим форматын колдонот.

  • Сиз программаны https://github.com/LenShustek/miditones сайтынан таба аласыз
  • Сиз каалаган программа "miditones.exe". Улантуу жана муну жүктөп алуу.

14 -кадам: MIDI файлдарын айландыруу

MIDI файлдарын айландыруу
MIDI файлдарын айландыруу
MIDI файлдарын айландыруу
MIDI файлдарын айландыруу
MIDI файлдарын айландыруу
MIDI файлдарын айландыруу

Эскертүү! Бул жерде ascii ажыдаарлары бар! Мен айтып жаткан нерсени так көрө турган видеону көрүү оңой болушу мүмкүн. Эгерде кирүүгө батынсаңыз, анда улантыңыз!

MIDI Bytestream конверсия программасын колдонуу үчүн, сиз буйрук терезесин ачышыңыз керек. Кечиресиз, Mac жана Linux колдонуучулары, сизге чечим табууга туура келиши мүмкүн.

  • Баштоо менюну ачыңыз жана "CMD" деп териңиз, андан кийин enter басыңыз.
  • Биз азыр бир аз MS-DOS сыйкырчылыгын үйрөнөбүз. "CD" буйругун колдонуп, "miditones.exe" файлын кайсы жерге жүктөсөңүз, ошол жерге өтүңүз. Көпчүлүк учурларда, буйруктар "cd downloads" болот.
  • "Miditones.exe" программасын "miditones" терүү менен иштетиңиз. Бул сизге эң кеңири таралган буйруктарды көрсөткөн жардам тизмесин көрсөтүшү керек.

Эми, биз динине MIDI билэ керек. Интервебтерден бир жерден табыңыз, эң жакшы инструменттерден/ылдамдыктан башка эч кандай атайын эффекттер жок. (Эгер бул эмне экенин билбесеңиз, кабатыр болбоңуз, баары жакшы болот)

  • MIDI файлыңызды "miditones" программасы бар жерге жүктөп алыңыз.
  • Эми, буйрук киргизүүчү терезени колдонуп, "miditones -d -v [filename]" деп териңиз ([файлдын атын] MIDI файлыңыздын аты менен алмаштырыңыз).
  • miditones MIDI файлы менен бирдей аталышта, ошол эле папкада C ++ байтест менен. C файлын түзөт.

15 -кадам: Конверттелген MIDI файлыңызды колдонуу

Сиздин айландырылган MIDI файлыңызды колдонуу
Сиздин айландырылган MIDI файлыңызды колдонуу
Сиздин айландырылган MIDI файлыңызды колдонуу
Сиздин айландырылган MIDI файлыңызды колдонуу
Сиздин айландырылган MIDI файлыңызды колдонуу
Сиздин айландырылган MIDI файлыңызды колдонуу

Эми сиз MIDI файлыңызды айландырдыңыз, аны кичинекей байт менен arduinoго берели!

  • SAATunes-Uno мисалыңыз ачык деп ойлосоңуз, келгиле, дагы бир нерсени "катары сактайлы", ошондо биз аны түзөтө алабыз.
  • Сиз аны сактагандан кийин, жогорку оң бурчтагы кичинекей "ылдый жебе" сүрөтчөсүн чыкылдатыңыз.
  • "Жаңы өтмөктү" чыкылдатып, аны "[name].h" деп атаңыз ([атын] MIDI ырыңыздын аты менен алмаштырыңыз же каалаган нерсеңиз)
  • Эми, мурда түзүлгөн miditones. C файлын ачыңыз. Аны ачуу үчүн блокнотту колдонсоңуз болот.
  • Бардыгын тандоо үчүн CNTRL/A колдонуп, анан көчүрүңүз.
  • Аны arduino редакторуна жаңы "[name].h" өтмөгүнө чаптаңыз.

Бул жерде баары жакшы, андыктан программага кайтып келели.

  • Кайсы жерде "#include" RagePenny.h "" деп жазылганын таап, көчүрүп/астына жаңы сапка чаптаңыз.
  • "RagePenny.h" файлын жаңы файлга кандай ат койсоңуз ошондой өзгөртүңүз.
  • Эми, "#include" RagePenny.h "" деп комментарий бериңиз, анын алдына эки алдыга сызык (//) кошуп.
  • Программаны жүктөө!

Эгерде баары ойдогудай болсо, анда ал өзүңүздүн MIDI файлыңызды ойнотушу керек. Болбосо, кайра текшериңиз, жаңы өтмөктүн аттары менен "#RagePenny.h" ичинде өзгөрткөн ысымыңыз бирдей экенине ынануу үчүн. Башка кадамдарды текшерип, баарын туура кылганыңызды текшериңиз. Кээ бир MIDI файлдары иштебейт, бирок алар сейрек кездешет.

16 -кадам: Фин

Фин!
Фин!

Баары сиз менен жакшы өттү деп үмүттөнөбүз жана сиз жаңы жашоого ээ болгон байыркы технологиянын MIDI файлдарына тыгылып жатасыз!

Бирок, эгер андай болбосоңуз, багынбаңыз! Комментарийге менин жолумду жөнөтүңүз, мен жардам берүүгө кубанычтамын. Албетте, комментарийлерде мага сунуштарды берүүдөн тартынба.

Бактылуу чиптондор!

Сунушталууда: