Fórum témák
» Több friss téma |
A klónok CH340 Soros-USB illesztőjének drivere (Letöltés)
Szia!
Kicsit utána néztem, de nem vágom ezt sajnos, de te az ARM STM32F103C8T6- vagy ehhez hasonló gépet szeretnéd beállítani úgy, hogy neked az SWD frekvenciája alacsonyabb legyen? Amit találtam, az csak az AHB1/2 regiszter, (óra prescale ha jól látom) állítgatásával mondott valamit, de nem tudom megerősíteni neked sajnos, hogy ez jó tipp, vagy sem. Regiszterek/bitek, amik segíthetnek: RCC_AHB1ENR RCC_AHB1RSTR DBGMCU_APB1_FZ DBGMCU_APB2_FZ Nem biztos, hogy ehhez való Manual, csak pár percem volt keresni: MANUAL A dsPIC-tapasztalataimra építek, ott mélyültem bele regiszter szinten mindenbe. Ott a részletes leírás majdnem mindenre megadta a választ. Hátha elegendő csak az óra freki csökkentése, majd utána visszaállítása, meg reset-elni mindent utána. De nem értek ehhez, lehet teljesen blődség mindez, akkor bocsánat, csak segíteni próbálok.
Ez más.
Az SWD frekvencia az a debugger kapcsolat frekvenciája, és a hoston kell állítani.
Így van, feltételezem, hogy külső programot hív meg az arduino, és lehet, hogy ennek kellene valahogyan további paraméterként megadni az SWD frekvenciát is. Egyelőre "kerülő úton" oldottam meg a problémát, de attól még a későbbiekben hasznos lehetne ez az infó.
A hozzászólás módosítva: Ápr 8, 2024
Igen, sejtettem, hogy ez más lesz, de gondoltam hátha. Sajnálom....
Bocs.
Igen, külső programot hív meg.
GUI nincs a paraméterek beállításához. Valamelyik konfigurációs fájlt kell átírni az adott core-ban.
Sziasztok.
ESP8266 a vezérlőm, a kód egy lakásvezérlő program, most a html eléggé összedobott de nem az a fő gond. A hiba ott kezdődik hogy a weboldalon a gomb megnyomásakor nem "zöldül" ki a gomb, és a vezérlő sem vált kimeneti állapotot, de nem jövök rá miért, lassan 3 napja ülök felette pedig biztos hogy bagatel a probléma.... Elvileg dinamikusan kéne frissítenie, így ha állapotváltozást észlel az regisztrálja a tárolóban így megmarad a megváltozott kimeneti állapot így mind a html-ben megadott "változás" végbemegy, megy a vezérlő állapotot vált az ahhoz társított lábon. Jelenleg 3db dallas ic-ből olvas ki hőmérséklet adatot és kapcsol egymástól függetlenül 6db SSR-t, ez volna a feladat internetes elérésen keresztül. A segítséget előre is köszönöm!
A hozzászólás módosítva: Ápr 14, 2024
Ez a <valamilyen cim>/switch utvonalon varja a beerkezo kereseket.
Ez pedig:
A <valamilyen cim>/ utvonalon kuld egy switch valtozot Probald igy:
Végül sikerült köszönöm a segítséget.
A sor amit javasoltál nem teljesen lett jó, panaszkodott a html kód hogy nem találja a /switch/ -t , ott rájöttem hogy egy /-el több van neki, levettem és fut szépen a kód hibamentesen. Köszönöm még egyszer!
Inkabb csak az elv volt erdekes, hogy hogyan mukodik
Sziasztok!
Két MOSFET-et szeretnék vezérelni, úgy hogy a kapcsoló négyszögjel frekvenciája tökéletesen megegyezik, viszont időbeni eltolás van a két jel között. Az időbeni eltolást változtatni kellene tudni oda-vissza a lehető legkisebb léptékben. Csatoltam egy képet mire is gondolok. Kérdésem, hogy ez megvalósítható-e Arduino-val, vagy esetleg van rá egyéb egyszerű megoldás? Előre is köszi a segítséget.
Idézet: „esetleg van rá egyéb egyszerű megoldás? ” Hídkapcsolású D osztályú erősítő??
Van rá lehetőség. Beállítod mondjuk azonos frekire a 2-es, 8 bites timert és az 1-es, 16 bitest. A 16 bites timer beállítását a lehető legnagyobb felbontásúra csinálod és a TCNT1 regiszterrel tologatod a fázisát. Példa 10 kHz-re:
Ha nincsen nagy igény a fázistolás finomságára, akkor egy, 8 bites timerrel is meg lehet csinálni:
Ennek a kódnak az a hátránya, hogy a timer indulásakor a két jel fázisa egymáshoz képest pontosan indul, de az, hogy a két kimenet fel, vagy lefutó éllel indul, az véletlenszerű. Ezért indítás után rögtön le kell olvasni a két kimeneti port állapotát és ha jó, akkor csak menjen, ha nem jó, akkor újraindít. Van, hogy rögtön jól indul, van, hogy 30-40 újraindításnál lesznek megfelelőek a szintek.
Nem írtad, mekkora PWM frekvenciáról van szó. PCA9685-tel (12 bites felbontású PWM IC), viszonylag alacsony frekvencián megoldható igaz, kissé ágyúval verébre, lévén 16 kimenete van. A kimenetek frekvenciája egyezik, nem is lehet eltérő értékeket megdani, csak egy frekvenciát ismer az összes. Ha jól emlékszem, olyan 25 Hz-től 1500 Hz-ig megy a dolog.
Esetleg, ha nem túl nagy PWM frekvencia kell és belefér a CPU időbe, szoftverből megoldani az egészet.
Kellene tudni azt is, hogy mekkora a cél-frekvencia és a kitöltési tényező (az ábra 50%-ot sugall, de tényleg annyi-e, és kell-e változatani)?
AMEGA328p esetén van olyan megoldás, hogy a számlálót úgy konfigurálod, hogy OCR1A, OCR1B egyezésnél átállítsa a kimenetet, és triggereljen interruptot (ISR(TIMER1_COMPA_vect), ISR(TIMER1_COMPB_vect)). Az interruptból pedig be lehet állítani a következő jelváltás irányát és időpontját. Ha az IRQ futása belefér két jelváltás között, akkor ezzel a módszerrel tetszőleges jelformát ki lehet adni, az általad leírtat is. Azt is meg lehet csinálni, hogy két különböző számlálóra állítasz be 1-1 PWM-et, és a számlálóikat úgy indítod el, hogy eltérő fázisban legyenek. Ha három dologra figyelsz, akkor reprodukálhatóan helyesen tudod állítani a fázist: * Akkor állítsd a számláló értékét, amikor szabályos abban az értelemben, hogy nem ugrasz át eseményt. * Az egyikből kiolvasod a számláló értéket, számolod az új értéket, és azt beállítod a másik számlálónak. * Mindezt IRQ kizárt blokkban csinálod: ekkor mindig ugyanannyi lesz a végrehajtás ideje. Ezt vagy méred, vagy az ASM alapján számolhatod is, és ezzel az értékkel korrigálhatod, hogy mennyit adsz hozzá. De ha sima összeadással csinálod, akkor néhány órajel lesz összesen, ami 1 mikroszekundum körülre jön ki, az is lehet, hogy elhanyagolható. Szerk.: Amit írsz úgy hangzik mintha "dead time" generátorról lenne szó, aminek az a célja, hogy H-híd esetén ne nyissuk szembe a két FET-et, ami rövidzárat jelentene. Vannak csipek, amik beípítetten tudnak dead time-ot generálni a PWM kimenethez, érdemes megfontolni, hogy olyat használj, ami eleve tudja ezt. Pl. az ATtiny1614 az adatlap szerint tudja. Ez egy újabb családba tartozik amit kicsit másképpen kell programozni. A hozzászólás módosítva: Ápr 15, 2024
Sziasztok!
Köszi mindeninek a hozzászólást. 10Hz - 3KHz közötti tartományra van szükség, kitöltési tényező 10-50% között gyakorlatilag bármi jó. Arduino-val ígéretesnek tűnik. Mivel kezdő vagyok ezen a téren, melyiket javasolnátok erre a célra?
Én is valami hasonlon dolgozok.
Elvben nekem külön megy a negativ meg a pozitiv jel ( a hid miatt) alapbol egyforma frekin, de bizonyos feltételek mellett DC tartalmat kell elöállitani azaz a pozitiv meg a negativ impulzusok szélességét kell arányosan változtatni ( azaz amivel szélesebb a pozitiv annyival keskenyebb a negativ. Alapbol semmi gond az egésszel, csak idözités kérdése ( nekem meg az alapfrekit is be kell tartani, Azaz 3 idöparameter van: a pozitiv, a negativ idö meg a maradék idö a periodus végéig. A DC eltolás egy delta ami a pozitiv impulzust hosszabbitja ( szorozza) a negativat (osztja) meg szükiti. A hozzászólás módosítva: Ápr 16, 2024
Az Ardu ezeket a kritériumokat megcsinálja a timerek segítségével. A timer konfigurálása után a teljes számítási kapacitás rendelkezésedre áll, tehát az alap feladaton kívül még sok mást is csinálhat mellette.
Azt meg szabad kérdezi mit hajt meg pontosan ez?
Sziasztok!
Kezdő vagyok, a felprogramozott Arduino Uno-ból, hogy lehet kiolvasni, elmenteni az éppen rá töltött programot?
Itt van egy leírás: Bővebben: Link. A végén kapni fogsz egy hex fájlt, amivel kb. semmire sem mész.
Hex fájlba ilyen módon tudod kiolvasni a tartalmat.
Sziasztok!
Vettem 2 db ilyen 40x4 karakteres kijelzőt. Van valamilyen megoldás arra, hogy I2C LCD Display modult használhassak hozzá? (Ilyenről lenne szó) Köszönöm előre is, ha valakinek van ötlete!
(Odáig eljutottam, hogy a 40x4 -es 2 db 40x2-esként kezelendő - az elv tiszta is, de hogyan lehetne ezt a gyakorlatban kivitelezni?)
A hozzászólás módosítva: Ápr 18, 2024
Köszönöm, ezt néztem, de sajnos nem felel meg, mivel Mobiflight-hoz szeretném használni, tehát arra lennék kíváncsi, hogyan lehet két I2C eszközt (természetesen különböző címekre beállítva) fizikailag csatlakoztatni egy 40x4-es modulhoz? Megoldható, hogy mindkét I2C összes kimenete (az enable-t kivéve) közösítve, majd megy az ERM-re, az egyik I2C enable kimenete az E1-re, a másiké az E2-re? Nem vágják az I2C kimenetei egymást haza? Tri-state kimenetük van?
A hozzászólás módosítva: Ápr 18, 2024
A PCA7584 kimenete csak L szintre tud lehúzni nagy árammal, H szintre kapcsolható felhúzó ellenállás van, a kijelző lábai is ilyenek, így lehet közösíteni.
Nagyon köszönöm!!! Holnap ki is próbálom!
Sziasztok!
Arduino MEGA2560-ból sikerült már valakinek kiolvasni az ic-ben lévő programot AVRDUDESS-el? A NANO-nál semmi problémám nincs ott simán kiolvasom és egy másikba vissza is tudom írni, viszont a MEGA2560-nál a program egyszerűen nem találja meg.
Sziasztok, hála nektek és az „Arduino”-nak sikerult megvalósitanom a tervem, igaz a B tervet.
Sikerült több mint 90%-át (ma 94%-et) elfogyasztanom a napelemek által létrehozott energiának, ime a tegnapi és a mai grafikon. Köszönet mindenkinek! A hozzászólás módosítva: Máj 14, 2024
Ez szép eredmény,végül mire lett felhasználva és hogyan?
|
Bejelentkezés
Hirdetés |