Fórum témák

» Több friss téma
Fórum » Arduino
A klónok CH340 Soros-USB illesztőjének drivere (Letöltés)
Lapozás: OK   690 / 839
(#) Régi motoros hozzászólása Ápr 19, 2021 /
 
No sajnos nem nyertem hangszórót, ennek a lednek a test ágában van az ellenállás,
nem a pozitívban. Így nem tudom külön táplálni.
A hozzászólás módosítva: Ápr 19, 2021
(#) sdrlab válasza Régi motoros hozzászólására (») Ápr 20, 2021 /
 
Ha már úgyis össze vissza bontogatod ezt az LCD panelt, simán le is vághatod a LED-ek anódját a 3,3V-ról, és átkötheted ahová akarod, de már a legalább 5V stabil táp, a hozzá tartozó relatíve nagy értékű korlátozó ellenállással együtt, sokkal jobb helyzetet teremt...

Egyébként kipróbáltad már az AMS kimenetére egy legalább 22µF értékű elkó hatását?! Ugyanis ezeknek a stabkockáknak jelentős a gerjedő képessége, ha nincs elegendő kapacitás a kimenetén! És olyankor jelentkezik az általad is mért pontatlan és stabilizálatlan, rejtélyes hatású ingadozás a kimenő feszben!
(#) moltam válasza sdrlab hozzászólására (») Ápr 20, 2021 /
 
Szerintem akár párhuzamos ledek is lehetnek benne, az magyarázná a viszonylag nagy áramot. Az igaz hogy a feszültségingadozástól kevésbé fog függeni ha növeli az ellenállást, de miért van egyáltalán feszültségingadozás? Az AMS1117 nek kötelessége lenne tartani a 3.3V ot. Csak a kijelző modul tervezője elfelejtette a kötelező kondikat, és/vagy selejtes a stab.
(#) sdrlab válasza moltam hozzászólására (») Ápr 20, 2021 /
 
Ki mondta azt, hogy soros LED-ed vannak benne??!! Az csak egy agymenés volt, bárki is találta ki....
Egyel visszább leírtam az egyik lehetséges okot... A gerjedés ezeknél valós, kondi nélkül szinte garantált! És akkor majdnem olyan, mintha jó lenne...de csak majdnem! Mindez persze voltmérőn mérve csak, szkóppal egyértelműen látszik rajta a gerjedés ilyenkor, aminek az átlaga a normál feszt közelíti, de pontosan sosem éri el azt, és nem is stabil...
(#) Moderátor hozzászólása Ápr 20, 2021
 
Tisztelt Fórumtársak!
Egyfelől a beszélgetés erősen elment az eredeti témától, ami az Arduio, másfelől pedig megint kezd elharapózni a személyeskedés, aminek egy szakmai fórumon semmi keresnivalója.
Kérjük tehát, hogy térjen vissza mindenki az eredeti témához, és fejezze be a személyeskedést!
(#) eSDi válasza Régi motoros hozzászólására (») Ápr 20, 2021 / 1
 
Egy kis segítség!

Az adatlap szerint 4db led van benne közös anódosra bekötve. Nyitófeszültség 3.5V, áram 80mA (per darab?).

Azt kellene kideríteni, hogy az AMS1117 csak a LED-eket táplálja, vagy a TFT vezérlőjét is. Az első esetben nyugodtan lekötheted és külső tápról is táplálhatod. Ha az utóbbiról van szó akkor 3.6V-nál nem mernék többet rá kötni, mert kinyírja a vezérlőt. Viszont a mérésed alapján az első lehet és talán áramgenerátorként van bekötve. Bár ekkor nem szabadna villognia, kivéve, ha idióta módon van bekötve (katódokat is direktben összekötötte) és döglődik egy LED.

SPFD5408.pdf
    
(#) eyess válasza eSDi hozzászólására (») Ápr 20, 2021 /
 
Na erre lettem volna pont kíváncsi én is .És mivel nem úgy lett tesztelve a kijelző , illetve az áramkör , így azt nem tudtuk meg , hogy a kijelző haldoklik e vagy más .De szerintem kezdettől fogva a kijelzőre gyanakodtam , hogy azzal lesz a baj.
(#) szalamandra válasza eyess hozzászólására (») Ápr 20, 2021 /
 
Idézet:
„Jó értem , akkor legyél szíves 3 DB ledet sorbakötni , mert azt írtad annyi van a kijelzőben.És kösd a kijelző háttér világítás helyére a 3db ledet. Kíváncsian várom mennyi lesz az áramfelvétel”

Bővebben: Link
(#) eyess válasza szalamandra hozzászólására (») Ápr 20, 2021 /
 
Pontosan ezzel erre lettem volna kíváncsi , hogy a kijelzőben lévő ledek haldokolnak e.
(#) moltam válasza eSDi hozzászólására (») Ápr 20, 2021 /
 
Az ams ről megy minden, a tft és a led is. Nincs áramgenerátor, csak egy egy egyszerű 2ohm. Mondjuk szerintem ez a téma már rendesen túl van tárgyalva.
A hozzászólás módosítva: Ápr 20, 2021
(#) sdrlab válasza eSDi hozzászólására (») Ápr 20, 2021 /
 
Ha ez az adatlap megfelel a valóságnak, természetesen a 80mA egyszerre értendő, az az 20mA/LED-ág! És azért merték megtenni a kici kínaiak, hogy közvetlenül kötötték a 3,3V-os tápra, mert elvileg nagyon nem tud kialakulni túl nagy áram...legalábbis az adatlapból kiindulva! A valóság viszont azt mutatja, hogy van azoknak a LED-eknek akkora szórása, hogy már 3,3V-on 200mA feletti áram is kialakulhat(max 100mA a megengedett), és akkor még a hőfüggésből eredő bizonytalanságról nem is beszéltünk...
Nekem is volt ilyen panelem(ami hasonlóan ellenállás nélkül volt bekötve a 3,3V-ra), be is kellett raknom egy soros ellenállást, amivel lekorlátozhattam negyedére az amúgy durván nagy áramot!
(#) eSDi válasza moltam hozzászólására (») Ápr 20, 2021 /
 
Ha az AMS-ről megy minden, és stabilizátorként van bekötve, akkor nem mérhetett volna 3.5V-ot a kimenetén. De, ha mégis úgy van, akkor kell rá forrasztani egy 100nF-os kondit a kimenetére, hogy biztosan ne gerjedjen.
(#) sdrlab válasza eSDi hozzászólására (») Ápr 20, 2021 /
 
Itt leírtam részletesen, mit okoz a gerjedés! Azt is, hogy 100nF nem elég ehhez....
(#) Taki33 hozzászólása Ápr 20, 2021 /
 
Én csak azt nem értem, hogy ez a sok találgatás mit keres itt az arduino topikban!
Jó lenne ha a Tápegységgel kapcsolatos kérdések topikba folytatnátok.
(#) HiMen hozzászólása Ápr 26, 2021 /
 
Ha egy Game kontrollert szeretnék kiolvasni Arduinóval akkor kell hozzá USB host, mint itt:
https://www.electroingenio.com/arduino-en/usb-shield-arduino-servo-...ps3-2/

Vagy simán be lehet kötni az Arduinóba mint itt:
https://www.instructables.com/USB-Wii-Gamepad-Using-Arduino-Leonardo/

Eddig mindenki azt monda, kell egy USB Host áramkör hozzá. Már készülődtem beszerezni, mígnem rátaláltam az utóbbi projektre, ahol simán be van kötve. Nem értem...
(#) jefflynn válasza HiMen hozzászólására (») Ápr 26, 2021 / 1
 
Szerintem nem ugyanaz a kettő. A wii nem usb-s, hanem talán i2c-t használ.
(#) Cavalier hozzászólása Ápr 27, 2021 /
 
USB Host-ra tudsz kötni USB eszközt, vagyis a PS3 kontrollert. A leonardo USB eszközként működik, és egy PC-re kötöd, a wii kontroller meg nem USB-s, azt simán bármilyen kontrollerrel ki lehet olvasni.
(#) HiMen hozzászólása Ápr 27, 2021 /
 
Ó értem, nem figyeltem, hogy a wii valóban nem USB eszköz.

De ettől függetlenül sokat gondolkoztam már, hogy egy arduino miért nem tud emulálni USB hostot. Az USB is csak soros kommunikáció, Rx és Tx. A soros pinjein miért nem tudja lekommunikálni az eszközzel a dolgot szoftveresen? Ha az oprendszer meg tudja tenni, akkor egy arduino miért nem?
(#) Bakman válasza HiMen hozzászólására (») Ápr 27, 2021 / 1
 
Igen, valóban csak Rx és Tx de a szoftver ami mögötte van, az már jóval több, mint amit egy kis mikrokontroller tud kezelni. Ha tud, azt is csak korlátozottan. Amíg egy operációs rendszeren szinte korlátlan a SW rendelkezésére álló hely, addig egy mikrokontrollerben jóval szűkösebbek a keretek (RAM, ROM, számítási kapacitás).
(#) sargarigo válasza HiMen hozzászólására (») Ápr 27, 2021 / 1
 
Azért nem, mert például az arduino unó panelen ch340 chip van, ami egy USB-RS232C(TTL) illesztő. Magyarán usb felületen valósít meg soros kommunikációt, de ennyi! Amire tervezték, azt pontosan és jól tudja. Rádugod a számítógépre, és terminálként használhatod. Sőt, még programozni is tudod róla!
Létezett valamikor olyan verzió is, ahol a CH chip helyén egy atmega8 volt, és ő felelt az USB-ért. Na ha neki a firmware-jét átkókányolod, akkor az már képes mindenféle ügyes dolgokra. Csak hát ez a rendszer megerőszakolása, nem erre lett kitalálva. Ráadásul nem tudom találsz-e még ilyen panelt valahol..
Másik megoldás a V-USB használata, amikor a mikrovezérlőd szoftveresen kezeli az usb-t, de ez sem a saját USB csati a panelen, hanem egy külön pigtail. Végülis működik, de megeszi a kontrollert, másra már nem is nagyon marad ereje. Volt itt ilyen topic, ha érdekel keress rá!
Ahogy Bakman is írta, az USB az nem csak egy RX, és TX, hanem nagyon komoly apparátus! Volt szerencsém beleásni kicsit magam, és nagyon örültem neki, amikor a számítógépemmel elhitettem hogy az ardu panelem egy egér, és körbe körbe rohangált a monitoron. Eddig jutottam. Bonyolult. Nagyon.
A hozzászólás módosítva: Ápr 27, 2021
(#) Vacok hozzászólása Ápr 27, 2021 /
 
Sziasztok!
Adott az alábbi kód:
  1. volatile boolean dataCollection = true;
  2. volatile boolean dataEnd = false;
  3. volatile unsigned int timings[501];
  4. volatile unsigned int changeCount = 0;
  5. volatile unsigned long lastTime = 0;
  6. volatile unsigned int duration = 0;
  7.  
  8. void setup () {
  9.   pinMode(2, INPUT);
  10.   digitalWrite(2, HIGH);
  11.   Serial.begin(9600);
  12.  
  13.   attachInterrupt(0, handleInterrupt, CHANGE);
  14. }  // end of setup
  15.  
  16. void loop() {
  17.   if (dataEnd) {
  18.     Serial.print("Raw data: ");
  19.     for (int i = 0; i < 500; i++) {
  20.       Serial.print(timings[i]);
  21.       Serial.print(";");
  22.       timings[i] = 0;
  23.     }
  24.     Serial.println();
  25.     Serial.println(changeCount);
  26.     changeCount = 0;
  27.     dataEnd = false;
  28.   }
  29. }
  30.  
  31. void handleInterrupt() {
  32.  
  33.   static unsigned long lastTime = 0;
  34.  
  35.   const long time = micros();
  36.   const unsigned int duration = time - lastTime;
  37.  
  38.   if (dataCollection) {
  39.     timings[changeCount] = duration;
  40.     changeCount++;
  41.   }
  42.  
  43.   if (changeCount > 500) {
  44.     dataEnd = true;
  45.     dataCollection = false;
  46.   }
  47.   lastTime = time;
  48. }

Ezzel azt szeretném csinálni, hogy egy vezeték nélküli időjárás állomás által kiadott jelet us időzítésekre lebontva összegyűjteni és kiíratni a soros portra. A jeleket nem rf modullal veszem, hanem az időjárás állomás data kimenete vezetékkel össze van az arduino INT0 lábával. A jelek 250us és 750us időközönként érkeznek. A gondom az, hogy az arduino nagyon gyakran mér 1000us időközönkénti jeleket, mintha egy 250us-os és 750us-os jelet összeadna.
Esetleg valami ötlet, hogy miért van ez?
A hozzászólás módosítva: Ápr 27, 2021
(#) sargarigo válasza Vacok hozzászólására (») Ápr 27, 2021 /
 
Szerintem lehet hogy az adóval lesz a gond. Azt le tudod ellenőrízni, hogy mindig a várt időtartamon belül küldi az adatot?

szerk.: A lastTime-ot miért definiálod újra a handlerben?
A hozzászólás módosítva: Ápr 27, 2021
(#) Vacok válasza sargarigo hozzászólására (») Ápr 27, 2021 /
 
A last time fel sem tűnt. Próbáltam, úgy, hogy a handlerenben van definiálva és úgy is, hogy a program elején, véletlenül úgy maradt. Kiszedem a program elejéről és meglátjuk, úgy megy-e.
Amúgy biztosan a várt időtartamon érkeznek a jelek. Van egy a képen látható "felvételem" a jelről. A teljes jel 5x240 bit. Gondoltam dolgozzon helyettem a gép és bináris kódba is le tudja nekem fordítani, nem kell manuálisan böngészni.
A hozzászólás módosítva: Ápr 27, 2021

részlet.png
    
(#) sargarigo válasza Vacok hozzászólására (») Ápr 27, 2021 /
 
Idézet:
„Kiszedem a program elejéről és meglátjuk, úgy megy-e.”

Szerintem inkább az elején hagyd meg, nagyobb esélyt látok rá!
(#) vargham válasza sargarigo hozzászólására (») Ápr 27, 2021 /
 
Az Arduino Unon ATmega16U2 az USB soros illesztő, nem CH340. Csak a klónokon van CH340. ATmega8 semmin sem volt, abban nincs USB periféria.
(#) mateatek hozzászólása Ápr 27, 2021 /
 
Üdvözlet!

Megakadtam egy projektemben. A mikrokontroller egy atmega328PB. Ebben ugye 2 darab I2C busz van.
Én a másodikra tettem az LCD-t, gondolván arra, hogy simán menni fog vele. De eddig nem megy.
A program:
  1. #include <Wire1.h>
  2. #include <LiquidCrystal_I2C.h>
  3. LiquidCrystal_I2C lcd(0x26, 2, 1, 0, 4, 5, 6, 7, 3, POSITIVE);
  4. void setup() {
  5.   lcd.begin(16, 2);
  6.   lcd.setCursor(0, 0);
  7.   lcd.print("Szoveg");
  8. }
  9. void loop() {}


Ha a Wire1 könyvtár helyett a Wire könyvtárat használom, akkor a normál I2C lábakon működik. Wire1 könyvtárral viszont nem tudom használni a PE0 és PE1 lábakon.
Mit kellene még tudnom?
(#) wbt válasza mateatek hozzászólására (») Ápr 27, 2021 /
 
"ugye 2 darab I2C busz van" Tényleg? Erről én lemaradtam...
(#) mateatek válasza wbt hozzászólására (») Ápr 27, 2021 /
 
26.1 Features• Two TWI instances TWI0 and TWI1
(#) benjami válasza mateatek hozzászólására (») Ápr 27, 2021 /
 
Esélyesnek tartom, hogy az LCD driver még a régebbi atmega328PA-hoz készült, amiben viszont csak 1db I2C periféria van. A drivert kell módosítanod hozzá.
(#) mateatek válasza benjami hozzászólására (») Ápr 27, 2021 /
 
Most azt próbálom, egyenlőre sikertelenül, hogy a TWI.h fájlban a regisztereket átírom azokra a regiszterekre, amiket én használnék.
Következő: »»   690 / 839
Bejelentkezés

Belépés

Hirdetés
Lapoda.hu     XDT.hu     HEStore.hu
Az oldalon sütiket használunk a helyes működéshez. Bővebb információt az adatvédelmi szabályzatban olvashatsz. Megértettem