Fórum témák
» Több friss téma |
A klónok CH340 Soros-USB illesztőjének drivere (Letöltés)
Ez igaz fel se tűnt,akkor elvileg elegendő ahogy néztem átírnom a második sort hogy a regiszter 1-be küldje az adatot.
Nem a kérdésedre válaszolok de a 4-es 5-ös sor felesleges , mert a 6-osba pont ugyanaz van
elég ennyi LiquidCrystal_I2C lcd(0x27,20,4); A hozzászólás módosítva: Nov 9, 2022
Örülök neki! Majd írd meg mire jutottál?
Nekem is szándékomban áll majd belevágni az AUDIO projectbe.
Mondjuk nekem kifejezetten nem jó, ha fájlformátumokban gondolkodik. Valósidejű DAC elérésre van szükségem. Volt már dolgom VS1053-as DSP-vel. Semmire sem tudtam használni csak mp3 lejátszónak. (Mint a viccben, hogy akárhogy is rakom össze a hűtőgépgyárból az alkatrészeket, mindig tank jön ki belőle...) Egy évem ráment a dologra. Azért is néztem ezt a PCM5102-őt, hogy én küldhessem a Dac-nak az adatokat "kézzel", ugyanúgy mint ahogy azt a ArduinoDue-nál teszem a saját 12-bites DAC-jára, csak ugye 12-bit nagyon kevés audió jel feldolgozásra, még ha a végén butítom is, nagyon nehéz bent maradni a tartományban.
Sejtettem, hogy a végső célod valami hasonló lesz.
De szerintem kezdő ismerkedésnek jó lesz az ajánlott project, mivel nem kel hozzá sok plusz alkatrész. Az I2S kezeléshez pedig itt találtam leírást: Bővebben: Link
Az ESP32-höz szükséges *.lib-eket pedig itt találod: Bővebben: Link
Ehhez legalább találni segítséget, a DUE-hez nem találsz semmit! A kevés HW. ismeretünkkel gyakorlatilag kezdő ként mindent összehozni kevés időből reménytelen lenne. Ezek a segítség nélkül!
Közben elő kerestem amit legutóbb tőled kaptam 2020 05:
Gondolom azóta sokat fejlesztetted? Az Audio részt azt hiszem át kel dolgoznod az ESP32+DAC hoz. A MIDI részhez sajnos még mindig nem értek. Kíváncsian várom a folytatást!
Igen. Felhúztam a Due-t 114-MHz-re az sokat segített.
Ez a legújabb: fmszinti És a hozzá való pc szoftver: https://github.com/kaszarobert1/arduinoduemidisynthpcsoftware De nincs sok szabadidőm foglalkozni vele. Viszont jönnek a hosszú téli esték és hátha átültethető esp32-re...
Köszi, végül is úgy néz ki a program jól futott, a szkópom volt kontakt hibás és nem tudta megfogni a jelet.
Azért a háromszöget már nem tudta csak 1,5Mhz-ig torzítás mentesen, a felett már kerekedik kicsit, a négyszög jelnek van egy minimális túlkapása (ezt már 4Mhz-n néztem) de ennyit ekkora frekin megengedek neki, főleg az árát tekintve a modulnak ami 1000Ft~). Képek csak érdekesség képpen itt mindkét jel 2,5Mhz-n pontosan, igaz a szinusz azért ilyen "vastag" mert mérőcsipesszel mértem és nem a szkóptű végével így nem annyira kompenzált.
Nem lehet, hogy azért mérsz ilyen háromszög és négyszög jelet a szkóppal, mert csak 20MHz-es a szkóp? 1:10-es osztóval mérted vagy osztó nélkül ?
Osztó nélkül még kisebb a sávszélesség, a korrekt hullámforma méréséhez viszont a jel felharmonikusait is át kell vinni, tehát az alap-frekvenciánál sokkal nagyobb sávszélességű szkóp kell hozzá.
Köszi a linkeket!
Tanulmányozom ahogy az időm engedi. Ezt nem értem?: arduinoduemidisynthpcsoftware-main Itt csak README.md van! Hol a program? Az újabb ESP32-es változatot hogyan valósítod meg? Marad az I2C karakteres LCD, vagy SPI vezérlésű LCDt szereztél be? Utóbbi esetben a felszabaduló I2C portokat felhasználhatnád a második I2S kivezetésére. Azzal meghajthatnál még egy DAC-ot, igy már lenne 4 hang csatornád. Vagy ez már túl bátor elképzelés? Ha nem használod az ESP32 WIFI részét? Akkor felszabadul a CORE0-ás igy itt van 2db. 240MHz-es procid, ez mindent ki tudna szolgálni neked. Most már csak az a kérdés, hogy a fentmaradt szabad lábak elég lesznek az egyéb csatlakoztatott dolgokhoz? Idézet: Ezt, hogyan csináltad?„Felhúztam a Due-t 114-MHz-re” Miután installáltam a szükséges lib-eket, sikerült lefordítanom a programodat! Most már át nézem, miket kel KELL javítanod?. És ha tudok megpróbálok segíteni, ha nem bánod?. Nem tudom használod e az arduino_2.0.1-est?. Ajánlom, telepítsd fel, sokat javult és gyorsabban is fordítja le a projectet. A hozzászólás módosítva: Nov 10, 2022
Moderátor által szerkesztve
Ott egy pc szoftver van a május4 branch-nál. Az egy összedobott c#-os projekt, amivel pc-ről vezérelheted MiDI kimeneten az eszközt, kb. minden paramétert. Mentheted a hangszíneket, beállításokat stb. Nincs még ez rendbe szedve azért, inkább csak mentés jellegűen használom a dolgot. Igyekszem kikommentelni is majd.
A hozzászólás módosítva: Nov 10, 2022
Pontos link nélkül nem tudom mire gondolsz? Ezeket találta kereső: Bővebben: Link
Másik: Bővebben: Link
Végül úgy gondoltam, hogy ezt a midit kipróbálom: Bővebben: Link
Mivel nagyon hasonlít a programodban használthoz. Nem tudom jól választottam?
Az én Arduino Due fm szintim hardveresen fogadja a jelet a serial2-ő bemeneten, például egy Midi billentyűzetről. Ehhez írtam egy pc programot. (Az én programom tehát teljesen mást csinál )
Amit te választottál projektet az szerintem egy usb-Midi eszközként funkcionáló billentyűzet és kontroller, ami a gép felé küld Midi parancsokat. Tehát, ha van egy DAW-od pl. Ableton Live, vagy Cubase, akkor annak tudsz midi utasításokat küldeni. Egyébként javaslom ezt aMIDI teszter programot, megmutatja, hogy van e MIDI eszközöd a számítógépen, illetve monitorozza az utasításokat. Tulajdonképpen nem csinál semmit, de a monitorozás miatt nélkülözhetetlen, és tudod vele ellenőrizni az eszközeidet.
Az a gond, hogy nem jön át a programod. Valószínűleg a Win10 beépített vírus irtója, vagy az Opera a ludas, a futtatható programot le tiltja.
Esetleg ha tömörítenéd (zip-be) jelszóval védve, és megadnád a jelszót, akkor csak figyelmeztetést kapnák, hogy nem tudja megvizsgálni de mégis letölthetném.
Én azt mondom, hogy menjünk át privátba, írtam üzenetet. De a vezérlőm egyszerűen csak Midi parancsokat küld az eszköznek a számítógépről. Elvileg az egy C# projekt, a debug mappában van az exe, de kellenek hozzá a txt fájlok is, hogy elinduljon, illetve szokott "exception-ra" is futni az indítás, ha nem ésszel csinálom. Viszont ezzel szoktam a hangszíneket átküldeni.
A hozzászólás módosítva: Nov 10, 2022
Egy olyan feladatom van, hogy két kimenetet az arduinon egy bizonyos bemeneti állapot változás után kb 5 perccel késöbb kell kapcsolni ( nem egyszerre). Eddig csak a millis eljárás jutott az eszembe. Van más, egyszerübb? Közben persze a procinak dolgoznia kell.
Köszönöm az ötleteket.
Amikor megtörtént a bemenet aktiválása, akkor eltárolod a millis állapota plusz öt perc értéket, aztan a fő ciklusban megnézed hogy elérted-e már. Ha igen, akkor akció van. Szerintem ez a legegyszerűbb, bár hátránya hogy polling módszer, tehát prociidőt használ (noha nem sokat).
Vagy használhatsz timert is, ez már hardveres. A hozzászólás módosítva: Nov 12, 2022
Program szervezés. Ha a főprogramod kb azonos idő alatt végez mindig egy ciklussal, akkor ha a ciklusokat számolod egy kb időzítést kapsz. Feltétel, a programot úgy kell írni, hogy sehol ne ragadjon le. ( bár ez a millis-re is igaz.).A millis pontosabb, és nem is túl bonyolult.
Sziasztok fórum társak!
Segítséget szeretnék kérni, lehet nem is olyan kicsit. Építettem egy napkollektor szivattyú vezérlő elektronikát amit egy arduino unó hajt , szeretném ha a kijelzőn látható adatok elküldésre kerülnének a ThingSpeak Iot oldalára, vagy épp egy mobil aplikációra . Amirehhez hasznélnék az egy ESP8266 (ESP-01) . Mivel nem vagyok programozó és ebbe bizony nagyon beletört a bicskám ,ehez a projekthez szeretnék segítséget kérni. A vezérlő szépen teszi a dolgát , de mivel ez egy hétvégi ház így szeretném távolról is felügyelet alatt tartani. Segítségeteket előre is köszönöm. Tisztelettel Gábor A hozzászólás módosítva: Nov 13, 2022
Az Interneten biztosan találsz ilyen projekteket. Például az első találat: IoT Made Easy With UNO, ESP-01, ThingSpeak and MIT App Inventor
A millis figyelése a jó megoldás, csak annyi a probléma vele, hogy a millis 50 nap után átfordul, erre figyelni kell a programozáskor, ha napokig áram alatt van a rendszer akkor 50 naponta hibázni fog, ha nem vagyunk felkészülve az átfordulásra.
A hozzászólás módosítva: Nov 13, 2022
Semmi baj nincs a millis() túlcsordulásával, ha megfelelő módon használod. Nem kell semmit figyelni hozzá.
Ebben én sem láttam gondot, mert a berendezés valoban folytonos üzemmodban lesz, de naponta kb 5-6szor lesz ilyesmire igény (azaz 5 perces késleltetés). S az sincs kizárva, hogy a késleltetés alatt egy ujabb esemény következik be ami ujra kezeli azt két kimenetet, azaz ujra inditja, és állitja meg, ill késlelteti.
Annak idején a parsic nevezetű pices programból loptam az ötletet.
ott úgy oldották meg, a folyamatos működést, hogy a program beolvasta a bemenetet, az alapján beállított egy változót, tovább a másik bemenetre, változó beállítása.... Utána a változók alapján a függőségek kiszámítása majd a loop végén a kimenet1 állítása, változók alapján a kimenet2 állítása..... Ebben a rendszerben egy loop kb azonos idő alatt fut le. De ha a végére tesz az ember egy delay(xx)-et, akkor a minden loop kb xx ms alatt fut le. Ez azért jó, mert a bemenetek prell mentesítésével nem kell foglalkozni, azt az időzítés alapból intézi. ahova késleltetés kell oda meg egy ciklusszámláló. idő= XX*számlálóállás. Egy dologra kell figyelni, ha a számláló túlcsordulást kell kezelni. De szinte tetszőleges független idő kezelhető. Egyszerű programoknál jól használható.
Egyrészt a loop-ot nem lassítjuk, ha van értelmesebb megoldás is, főleg úgy, hogy ez a módszer nagyon pontatlan is tud lenni, attól függően, hogy milyen elágazások vannak benne. A legegyszerűbb és leghatékonyabb megoldás egy vagy több timer használata, melyeknek az ütemideje a kívánt pontosság. Tehát ha percenként kell valamit végrehajtani, másodperc pontossággal, akkor másodpercenkénti az időalap.
A millis() túlcsordulásához hasonlóan itt sem kell foglalkozni a túlcsordulással, csak jól kell elvégezni a vizsgálatot. A hozzászólás módosítva: Nov 13, 2022
|
Bejelentkezés
Hirdetés |