Мазмұны:

Raspberry Pi көмегімен ойнату жазбасы: 7 қадам (суреттермен)
Raspberry Pi көмегімен ойнату жазбасы: 7 қадам (суреттермен)

Бейне: Raspberry Pi көмегімен ойнату жазбасы: 7 қадам (суреттермен)

Бейне: Raspberry Pi көмегімен ойнату жазбасы: 7 қадам (суреттермен)
Бейне: ComfyUI Tutorial - How to Install ComfyUI on Windows, RunPod & Google Colab | Stable Diffusion SDXL 2024, Қараша
Anonim
Image
Image
Қажетті материал
Қажетті материал

Бәріне сәлем, Бұл нұсқаулықта мен Raspberry Pi көмегімен ойнату жазғышын қалай жасағанымды түсіндіремін. Құрылғы R+Raspberry Pi моделі, жоғарыда 7 түйме бар, Pi -дің USB порттарының біріне қосылған динамик және басқа USB порттарына қосылған микрофон. Әр түйме дыбысқа байланысты, сондықтан ол 7 түрлі дыбысты ойнай алады. Дыбыстар түймені қысқа басқаннан кейін ойнатылады. Жаңа дыбысты жазу үшін түймені 1 секундтан артық басып тұрыңыз, дыбыстық сигналдан кейін жазыңыз және жазбаның соңындағы түймені жіберіңіз. Бұл одан да қарапайым болмайды!

1 -қадам: Қажетті материал

Қажетті материал
Қажетті материал
Қажетті материал
Қажетті материал

Бұл жоба үшін маған қажет болды:

  • A Raspberry Pi моделі B + және micro SD картасы - 29,95 $ + 9,95 $
  • Raspberry Pi пластикалық корпусы - 7,95 доллар
  • USB динамиктері - 12,50 доллар
  • USB микрофон - 5,95 доллар
  • Жартылай өлшемді перма-прото тақта-4,50 доллар
  • 7 лездік батырмалар - 2,50 доллар

Маған да қажет болды:

  • Кейбір электр сымдары
  • Тік бұрышты әйел тақырыптары
  • Бірнеше ағаш, қара бояу мен түйме корпусына арналған желім
  • Дәнекерлеуіш пен дәнекер

2 -қадам: түймелер

Түймелер
Түймелер
Түймелер
Түймелер
Түймелер
Түймелер

Қолданылатын түймелер өте қалың (6 мм), олар корпустың қалыңдығынан өте алады.

Мен өзімнің 7 түймені нанға ұқсайтын перма-прото тақтаға қойдым, тек компоненттер дәнекерленген. Бұл нан тақтасына қарағанда берік және компьютерді басып шығарудан арзан. Әр түйме Raspberry Pi -дегі GPIO -мен жерді байланыстырады. Менде бұл жерде резисторлар жоқ, өйткені Pi бағдарламасында орнатылатын ішкі көтеру/түсіру резисторлары бар. Бұл жағдайда мен оларды тартуға орнаттым (төмендегі бағдарламаны қараңыз).

Түймелер әр 4 жолға немесе 0,4 дюйм сайын орналастырылады.

3 -қадам: түймелердің жағдайы

Түймелер жағдайы
Түймелер жағдайы
Түймелер жағдайы
Түймелер жағдайы
Түймелер жағдайы
Түймелер жағдайы

Мен түймелер үшін фанера парақтары мен ағаштан жасалған шаршы дюбельмен өте қарапайым корпус жасадым. Дюбельдің өлшемі түйме негізі мен тақтаны қамтитындай үлкен болуы керек, бірақ түйменің корпусынан жоғары шығуы үшін жеткілікті кішкентай. Мен 1/4 дюйм 1/4 дюбельді қолдандым.

Тақтаның корпусқа сәйкес келетініне көз жеткізгеннен кейін, дюбельдер негізгі параққа жабыстырылады. Содан кейін үстіңгі парақта тесіктер бұрғыланады (тақтаны 0,4 дюйм сайын дәл белгілеу үшін қолдануға болады). Ағаштың барлық бөлшектері боялған, тақта корпусқа салынған және үстіңгі парақ оның үстіне жабыстырылған.

4 -қадам: Raspberry Pi

Таңқурай Pi
Таңқурай Pi
Таңқурай Pi
Таңқурай Pi
Таңқурай Pi
Таңқурай Pi

Мен болашақта Pi -ді басқа нәрсеге қолданғым келсе, сымдарды тікелей Pi -ге дәнекерлегім келмеді. Сондықтан мен сымдарды тік бұрышты әйел тақырыптарына дәнекерледім және тақырыптарды Пи-ге жалғадым.

Қолданылатын GPIO - 21, 26, 20, 19, 13, 6 және 5. Сонымен қатар, жерге тұйықтауыш қолданылады.

Микрофон мен динамик 4 usb портының екеуіне қосылады.

Pi микро-USB розеткасы арқылы жұмыс істейді

5 -қадам: Бағдарламалау

Pi бағдарламалау үшін мен оны Ethernet кабелі арқылы интернетке қостым және оны қашықтағы компьютерден VNC қарау құралының көмегімен басқардым. Алайда, сіз бұл қондырғыны Pi -ге бірінші рет қосқанда пайдалана алмайсыз, себебі ОЖ әлі орнатылмаған және SSH өшірілмеген. Сондықтан сізге кем дегенде бірінші рет экранды, пернетақтаны және тінтуірді қосу қажет болады.

Дыбыс картасына дыбысты жазу және ойнату командаларын табу өте қиын болды. Бұл мен үшін жұмыс істеген командалар:

  • aplay -D plughw: CARD = Device_1, DEV = 0 0.wav

    0.wav ойнайды

  • arecord 0.wav -D sysdefault: CARD = 1 -f cd -d 20

    CD файлының 0.wav файлында максимум 20 секундқа жазылады

Дыбыстық файлдар әдепкі каталогта орналасқан (/home/pi). Әдепкі каталогқа орналастырылған және beep.wav деп аталатын дыбыстық файл да қажет.

Питон кодының өзі келесідей:

Raspberry Pi ойнату құрылғысының питон коды

GPO ретінде RPi. GPIO импорттау
импорт уақыты
импорттау os
#айнымалылар:
butPressed = [True, True, True, True, True, True, True] #if батырмасы i басылса, but buted жалған болады
pin = [26, 19, 13, 6, 5, 21, 20] #GPIO әр түйменің түйреуіштері
recordBool = False#True, егер жазу жүріп жатса
GPIO.setmode (GPIO. BCM)
i үшін диапазонда (0, 7):
GPIO.setup (pin , GPIO. IN, pull_up_down = GPIO. PUD_UP)#Pi ішкі резисторларын тартуға орнатады
шындық кезінде:
i үшін диапазонда (0, 7):
butPressed = GPIO.input (pin )#түйменің басылғанын тексереді
if butPressed == False:#егер түйме басылса
previousTime = time.time ()
while butPressed == False және recordBool == False:
butPressed = GPIO.input (pin )
if time.time () - previousTime> 1.0:#егер түйме бір секундтан артық басылса, онда recordBool True
recordBool = True
if recordBool == True: #if recordBool True болса, ол дыбыстық сигнал береді, содан кейін жазады
os.system («aplay -D plughw: CARD = Device_1, DEV = 0 beep.wav»)
os.system («arecord %d.wav -D sysdefault: CARD = 1 -f cd -d 20 &» %i) i.wav файлында максималды 20 секунд ішінде#cd сапасымен жазылады
while butPressed == False:
butPressed = GPIO.input (pin )
os.system («pkill -9 arecord»)#түйме жіберілгенде немесе 20 секундтан кейін жазба тоқтатылады
recordBool = жалған
басқасы: #if recordBool False болса, ол i.wav дыбысын ойнайды
os.system («aplay -D plughw: CARD = Device_1, DEV = 0 %d.wav» %i)
уақыт.ұйқы (0.1)

GitHub ❤ арқылы орналастырылған rawPlayback жазғышын қарау

6 -қадам: Әр іске қосу кезінде Python сценарийін іске қосыңыз

Әр Pi іске қосылған кезде python сценарийін іске қосу үшін келесі жолдар /home/pi/.config/autostart/ қалтасында playback.desktop деп аталатын файлға қойылады.

Raspberry Pi іске қосылған кезде playback.py файлын іске қосады

[Жұмыс үстелі жазбасы]
Кодтау = UTF-8
Түр = Қолданба
Аты = Ойнату
Түсініктеме = Бұл ойнатуға арналған қосымша
Exec = python /home/pi/playback.py
StartupNotify = жалған
Терминал = ақиқат
Жасырын = жалған

GitHub ❤ арқылы орналастырылған rawplayback.desktop қарау

7 -қадам: Ескертпені аяқтаңыз

Пікір бөлімінде осы жоба туралы өз пікіріңізді айтыңыз, маған сіздің ұсыныстарыңызды айтыңыз, егер сізге ұнаған болса, Raspberry Pi байқауында маған дауыс беріңіз.

Сізді оқуды асыға күтемін!

Ұсынылған: