Мазмұны:
- 1 -қадам: Қажетті материал
- 2 -қадам: түймелер
- 3 -қадам: түймелердің жағдайы
- 4 -қадам: Raspberry Pi
- 5 -қадам: Бағдарламалау
- 6 -қадам: Әр іске қосу кезінде Python сценарийін іске қосыңыз
- 7 -қадам: Ескертпені аяқтаңыз
Бейне: Raspberry Pi көмегімен ойнату жазбасы: 7 қадам (суреттермен)
2024 Автор: John Day | [email protected]. Соңғы өзгертілген: 2024-01-30 10:27
Бәріне сәлем, Бұл нұсқаулықта мен 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 -ге дәнекерлегім келмеді. Сондықтан мен сымдарды тік бұрышты әйел тақырыптарына дәнекерледім және тақырыптарды Пи-ге жалғадым.
Қолданылатын 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 байқауында маған дауыс беріңіз.
Сізді оқуды асыға күтемін!
Ұсынылған:
ESP32 көмегімен бейне ойнату: 10 қадам (суреттермен)
ESP32 көмегімен бейне ойнату: Бұл нұсқаулық ESP32 көмегімен бейне мен аудионы ойнату туралы бірдеңе көрсетеді
Сөйлейтін Ардуино - Arduino -мен ешқандай модульсіз MP3 ойнату - PCM көмегімен Arduino -дан Mp3 файлын ойнату: 6 қадам
Сөйлейтін Ардуино | Arduino -мен ешқандай модульсіз MP3 ойнату | PC файлын қолдану арқылы Arduino -дан Mp3 файлын ойнату: Бұл нұсқаулықта біз mp3 файлды arduino -мен ешқандай аудио модульсіз ойнауды үйренеміз, мұнда біз Arduino үшін 8 кГц жиіліктегі 16 биттік PCM ойнайтын PCM кітапханасын қолданамыз
Дыбыстық файлдарды (Wav) Arduino және DAC көмегімен ойнату: 9 қадам
Аудио дыбыстық файлдарды (Wav) Arduino және DAC көмегімен ойнату: Audino SD картасынан wav аудио файлын ойнату. Бұл нұсқаулық сізге SdCard картасындағы wav файлын динамикке қарапайым тізбек арқылы қалай ойнатуға болатынын көрсетеді. Wav файлы 8 бит моно болуы керек. 44 кГц файлдарды ойнату менде қиындық тудырмады
Жергілікті әкімші есептік жазбасы: 5 қадам
Жергілікті әкімші тіркелгісі: Бұл нұсқаулық толық әкімші артықшылықтарына ие болу үшін Mac OS X жүйесінде жергілікті түбірлік парольді қалай теориялық түрде өзгертуге болатынын көрсетеді. Түсініктеме сөзіне баса назар аударыңыз
Quicktime ойнатқышының көмегімен бейнелерді артқа қарай ойнату: 5 қадам
Quicktime ойнатқышының көмегімен бейнелерді артқа қарай ойнату: Бұл ғасырдың ең керемет айла -амалдары. Бұл нұсқаулық сізге қауіпті бағдарламаларды жүктеместен бейнелерді артқа қарай ойнатудың оңай әдісін көрсетеді (егер сізде жылдам уақыт болмаса, сізге қажет болады.) Суретте ештеңе жоқ. жобамен айналысыңыз, бірақ маған қажет болды