Turinys:

Skaitykite el. Laišką su „Arduino“ir „Wave Shield“: 4 žingsniai
Skaitykite el. Laišką su „Arduino“ir „Wave Shield“: 4 žingsniai

Video: Skaitykite el. Laišką su „Arduino“ir „Wave Shield“: 4 žingsniai

Video: Skaitykite el. Laišką su „Arduino“ir „Wave Shield“: 4 žingsniai
Video: Lesson 2: Getting Arduino Software and using Documentation for SunFounder Arduino Kit | SunFounder 2024, Liepa
Anonim
Skaitykite el. Laišką su „Arduino“ir „Wave Shield“
Skaitykite el. Laišką su „Arduino“ir „Wave Shield“

Vykdydamas savo projektą čia https://www.instructables.com/id/Sound-Switcher/ (šis projektas yra konkurse, taigi, jei jums tai patinka, balsuokite už tai!), Kuris naudoja „Arduino“, kad nutrauktų ekstremalų garso šaltinį (pvz., „iPod“), kad galėčiau pranešti apie aplinkinius dalykus, taip pat nutraukiau el. laiškus ir perskaičiau, kas yra el. laiškas ir temos eilutė (kad žinotumėte, ar norite nutraukti tai, ką darote) ir patikrinkite). Kadangi „Arduino“su „Wave Shield“perskaitė jūsų el. Laišką, gali būti naudingas kitiems, aš jį išskaičiau į tai, ką čia galima pamokyti. Duomenims perduoti naudojama serija. Aš tik naudoju „Arduino“USB sąsają, bet jūs turėtumėte sugebėti tą patį padaryti belaidžiu ryšiu su „XBees“, ką aš suprantu. Taigi iš esmės šios instrukcijos dalykai Patikrinkite savo el. Jei kažkas naujo, jis konvertuos jį į wav failą3. tada jis nusiųs jį į arduino per serial4. tada „Arduino“jį paleis. Didžiausias TODO yra failų perdavimo spartinimas. Mano idėja yra, kad kompiuteris atsiųstų daugiau nei 100 baitų, tada palaukite patvirtinimo atsakymo iš „Arduino“, kol jis siunčia daugiau. Taip pat būtų malonu tikrinti klaidas, nes dalinis dvejetainis failas kai kuriais atvejais nėra daug geresnis nei jo nėra.

1 veiksmas: komandinės eilutės teksto į kalbą priemonė

Štai nedidelis įrankis, kurį parašiau labai greitai, kad tekstas būtų paverstas kalba. Jis parašytas C# su nemokamu „Visual C# 2008 Express Edition“. Tikriausiai jums reikės. Net 3.5. Kodas yra įtrauktas, bet jei norite tik exe, galite jį gauti „CommandLineText2Speech“/„CommandLineText2Speech/bin/Release“ZIP faile. Jei norite, kad įrankis veiktų, tiesiog atidarykite komandų eilutę, eikite į katalogą, kuriame įdėjote exe, ir įveskite CommandLineText2Speech.exe. Tai išves: Naudojimas: Įdiegtų balsų sąrašas: CommandLineText2Speech.exe whatvoices

Norėdami konvertuoti tekstą į wav: CommandLineText2Speech.exe [balsas] [norma - numatytasis 0 (nuo -10 iki 10)] [garsumas - numatytasis 80 (nuo 0 iki 100)] "[tekstas konvertuoti]" [išvesties failas] Kitaip tariant tikriausiai pirmiausia norėsite paleisti: CommandLineText2Speech.exe whatvoicesTame bus išvardyti, kokie balsai įdiegti jūsų kompiuteryje. Norėdami paleisti įrankį, jums reikės balso pavadinimo. Balsai, ateinantys su „Windows“, nėra puikūs, „AT&T“turi keletą gana gerų. Jei norite konvertuoti tekstą į wav failą, atlikite tai kabutėse, nes yra tarpas0 - normalus greitis (gali būti nuo -10 iki 10) 80 - normalus garsumas (gali būti nuo 0 iki 100) „tai testas“- tekstas, kuris bus paverstas „wav filetest“.wav - kaip bus vadinamas wav failas

2 veiksmas: „Ruby Utility“, skirta patikrinti el. Paštą ir įkelti „Wav“į „Arduino“

Pridėtas „Ruby“kodas atlieka toliau nurodytus patikrinimus, kad sužinotų, ar nėra naujų el. Turėjau problemų dėl didelės spartos ryšio per serijinį (tikriausiai buferio dydis). Visi failo nustatymai yra failo viršuje. Tam naudojama mano programa C#, kad būtų sukurtas wav failas. Tikriausiai turėčiau visa tai paversti viena kalba, aš esu didelis Ruby gerbėjas, bet neatrodė, kad tai galėtų labai lengvai sukurti tekstą, todėl parašiau mažą C# programą. Jums taip pat reikės rubino serijos perlas, aš taip pat įtraukiau. Norėdami jį įdiegti (įdiegus „Ruby“), katalogo, į kurį atsisiuntėte brangakmenį, komandų eilutėje įveskite „gem install win32-serial-0.5.1-x86-mswin32-60.gem“. Tai viskas, ko jums reikia, kad ši programa veiktų.

3 žingsnis: „Arduino“kodas

Štai pavyzdys, kai duomenys nuskaitomi serijiniu būdu, nukopijuojami į SD kortelę, tada paleidžiama banga. Tai yra dalis mano pamokų čia https://www.instructables.com/id/Sound-Switcher/ (atkreipkite dėmesį, kad tai yra Arudino konkursas, jei jums patinka, balsuokite už tai!). Kitą dieną pridėsiu dar vieną pavyzdį, kuris bus sumažintas. Pažiūrėkite į funkciją check_serial, kaip rašyti į SD kortelę. Tam naudoju čia rastą „WaveRP“biblioteką

4 žingsnis: paleiskite viską

Gerai, dabar turite visas dalis. Kad tai veiktų tinkamai, jums reikia: 1. Įdiekite „Wave Shield“į „Arduino2“. Prijunkite „Arduino“prie kompiuterio (arba naudokite „XBee“) - darau prielaidą, kad jau esate įdiegę programinę -aparatinę įrangą3. Paleiskite „Ruby checkEmail.rb“scenarijų4. Mėgaukitės, kai „Arduino“skaito jūsų el.

Rekomenduojamas: