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   848 / 850
(#) Rober_4 válasza kameleon2 hozzászólására (») Szept 3, 2024 /
 
Szerintem megfelelő regiszterbe való írással le tudod némítani a boot folyamat alatt.
A regiszterek címzéséről itt írtam infókat. A regiszterekről pedig tájékoztatást ad az adatlap. Mondjuk én az órajelet állítgattam, de minden tulajdonságot tudsz így állítani.
https://github.com/kaszarobert1/vs1053/wiki
Bővebben: Link
Mondjuk én nem mp3-lejátszónak használtam, hanem Midi szintetizátornak. De valahol van olyan projektem is, ahol a különböző loop-okat az adott billentyűnek megfelelően játszotta le az SD kártyáról.
(#) morzsa15 hozzászólása Szept 4, 2024 /
 
Sziasztok!

Egy arduinoval mivel lehetne mérni DC áramot 100A körüli értékről lenne szó a sönt-öt nem szeretnék használni. Más lehetőség van esetleg?
(#) Skori válasza morzsa15 hozzászólására (») Szept 4, 2024 /
 
ACS áramszenzoroknak, és a DC áramváltóknak nézz utána (mindegyik HALL szenzorra épül)
pl.:
Bővebben: Link
A hozzászólás módosítva: Szept 4, 2024
(#) morzsa15 válasza Skori hozzászólására (») Szept 4, 2024 /
 
ACS szenzorokat néztem. De azok közül max 30A amit találtam. Ezt néztem még de ilyet meg itthon nem találtam sehol.
A hozzászólás módosítva: Szept 4, 2024
(#) Skori válasza morzsa15 hozzászólására (») Szept 4, 2024 /
 
Esetleg ilyesmi: Bővebben: Link
(#) Josi777 válasza morzsa15 hozzászólására (») Szept 4, 2024 /
 
Skori linkjét megnézted? Mert nekem a TME oldalán 3-at hoz, 2 db 100A-est és egy 150A-est. Mind három ACS.
(#) morzsa15 válasza Josi777 hozzászólására (») Szept 5, 2024 /
 
Néztem igen, csak az árak kérdésesek. Tudnál linket küldeni?
(#) Josi777 válasza morzsa15 hozzászólására (») Szept 5, 2024 /
 
Neked ez nem működik?
https://www.hobbielektronika.hu/forum/topic_post_2623096.html#2623096
Ebben a hozzászólásban van a link.
(#) kameleon2 hozzászólása Szept 5, 2024 /
 
Sziasztok! Max 7219-el hajtott 8db 8 szegmenses kijelzőt kell használnom. A Minta szoftver elindult, de valahogy nem lehet a tesztet kiiktatni? baromi zavaró bekapcsoláskor az a sok felesleges cirkumstancia. Van esetleg valakinek a Hestore-os panellel kéz projektje, mintaszoftver tapasztalat? nekem nagyon instabilnak tűnt, de lehet, hogy ez a mintaszoftverem sem az igazi, vagy a bekötése. Erről a panelről és egy nanoról van szó. 2, 3,4 lábakon van a MOSI, IO, SCK. CS-t mire érdemes hagyni induláskor? H szintre?
(#) pipi válasza kameleon2 hozzászólására (») Szept 5, 2024 /
 
Átnézted a használt library-t? Szerintem a bekapcsolási tesztet az csinálja, vagy (nem néztem utána) bekapcsoláskor nem definiáltak a 7219 kimenetei, és szemét van rajta...
(#) kameleon2 válasza pipi hozzászólására (») Szept 5, 2024 /
 
Szia!
Amit találtam az a szoftverben is benne van:
  1. initialise();
  2. output(0x0f, 0x02);  //display test register - test mode off (0) (2 best)
  3. output(0x0c, 0x01); //shutdown register - normal operation (1)
  4. output(0x0b, 0x07); //scan limit register - display digits 0 thru 7
  5. output(0x0a, 0x00);  //intensity register - max brightness (F)
  6. output(0x09, 0xff);   //decode mode register - CodeB decode all digits

Eszerint a display test register off lenne a 0, de a valóságban kevesebb a "szemét" ha 2-re állítottam.
A teljes kód jelenleg:
  1. //MAX 7219 SPI PINS
  2. #define MAX7219_DIN 2
  3. #define MAX7219_CS  4
  4. #define MAX7219_CLK 3
  5.  
  6. void initialise() {
  7. pinMode(MAX7219_DIN, OUTPUT);
  8. pinMode(MAX7219_CS, OUTPUT);
  9. pinMode(MAX7219_CLK, OUTPUT);
  10. // digitalWrite(MAX7219_CS, HIGH);
  11. // delay(1);
  12.  
  13. }
  14.  
  15. void output(byte address, byte data) {
  16.  
  17. digitalWrite(MAX7219_CS, LOW);
  18. delay(1);
  19. shiftOut(MAX7219_DIN, MAX7219_CLK, MSBFIRST, address);
  20. shiftOut(MAX7219_DIN, MAX7219_CLK, MSBFIRST, data);
  21. digitalWrite(MAX7219_CS, HIGH);
  22. delay(1);
  23.  
  24. }
  25.  
  26. void setup() {               // put your setup code here, to run once:
  27.  
  28. initialise();
  29. output(0x0f, 0x02);  //display test register - test mode off (0) (2 best)
  30. output(0x0c, 0x01); //shutdown register - normal operation (1)
  31. output(0x0b, 0x07); //scan limit register - display digits 0 thru 7
  32. output(0x0a, 0x00);  //intensity register - max brightness (F)
  33. output(0x09, 0xff);   //decode mode register - CodeB decode all digits
  34.  
  35. /*
  36.  * 0x00-Zero  | 0x01-1    | 0x02-2    | 0x03-3    | 0x04-4    | 0x05-5      | 0x06-6    | 0x07-7    | 0x08-8    | 0x09-9    |
  37.  * 0x0A-(-)   | 0x0B-E    | 0x0C-H    | 0x0D-L    | 0x0E-P    | 0x0F- URES  |    
  38.  * 0xA0-(0.)  | 0xA1-(1.) | 0xA2-(2.) | 0xA3-(3.) | 0xA4-(4.)   | 0xA5-(5.) | 0xA6-(6.) | 0xA7-(7.) | 0xA8-(8.) | 0xA9-(9.)  |
  39.  * 0xAA-(-.)  |
  40.  */
  41. output(0x08, 0x02); //digit 7 (leftmost digit) data (H?-0x0c)
  42. output(0x07, 0x00); //                              (E?-0x0b)
  43. output(0x06, 0x0D); //                              (L?-0x0d)
  44. output(0x05, 0xA1); //                              (P?-0x0e)
  45. output(0x04, 0x01); //                              (8? -0x08)
  46. output(0x03, 0x09); //                              (7? -0x07)
  47. output(0x02, 0x07); //                              (6? -0x06)
  48. output(0x01, 0x00); //digit 0 (rightmost digit) data (5?)
  49.  
  50. }
  51.  
  52. void loop() {
  53.  
  54. // put your main code here, to run repeatedly:
  55.  
  56. }

Az eredeti projekt kód, amiből kiindultam. Megvallom nem igazán kedvelem ezeket a buszos meghajtásokat, de most a kevés láb és a sok szegmens miatt rá vagyok kényszerítve. Időből viszont csehül állok, hogy eredményt is tudjak elérni.
(#) Bakman válasza kameleon2 hozzászólására (») Szept 5, 2024 /
 
A Display Test nevű regiszter állapota 0 vagy 1 lehet, pontosabban a kiküldött bájlt legalsó (LSB) bitjét veszi figyelembe. Magyarán mindegy, hogy 0b00 -át vagy 0b10 -át küldesz, mindkét érték nullának számít adott regiszterben.

Az adatlap szerint bekapcsoláskor a kijelző sötét. Én nem ezt tapasztaltam akkor, amikor használtam nevezett IC-t. Nekem úgy tűnt, minden regiszter random értékű lesz bekapcsoláskor. Kicsit halványak az emlékek, nem is a gépem előtt ülök, most nem tudom ellenőrizni, de valahogy így bekkeltem ki a dolgot:

  1. output(0x0F, 0x00); //kijelzo teszt kikapcsolasa
  2. output(0x0C, 0x01); //kijelzo kikapcsolasa
  3. output(0x01, 0x00); //digit 0 kikapcsolasa
  4. output(0x02, 0x00); //digit 1 kikapcsolasa
  5. output(0x03, 0x00); //digit 2 kikapcsolasa
  6. output(0x04, 0x00); //digit 3 kikapcsolasa
  7. output(0x05, 0x00); //digit 4 kikapcsolasa
  8. output(0x06, 0x00); //digit 5 kikapcsolasa
  9. output(0x07, 0x00); //digit 6 kikapcsolasa
  10. output(0x08, 0x00); //digit 7 kikapcsolasa
  11. output(0x09, 0x00); //dekodolas
  12. output(0x0A, 0x08); //fenyero
  13. output(0x0B, 0x07); //hasznalt digitek
  14. output(0x0C, 0x00); //kijelzo bekapcsolasa
(#) kameleon2 válasza Bakman hozzászólására (») Szept 8, 2024 /
 
Köszönöm. Időközben találtam egy 5 évvel frisebb libet, ami sokkal humánusabb. Itt már nincs vibrálás, nincs random móka, megy minden. Nem kell annyit küzdeni vele. Sajnos maga a hardver is elég gyengécske, betonstabilan ment minden, amióta újrahuzaloztam, rögzítettem mindent. Majd arrébb raktam 10 centivel és haldokolni kezdett. A Nano megy, de elég fura. HEStores Nano még ennyi ideig sem húzta, ahhoz nem is találtam normális libet. A Kínaival legalább a szofter fut. Lehet persze maga a panel is gyenge, elég sok gyártási hibát láttam rajta, a kijelzők is eléggé lötyögtek a foglalatban.
(#) pavikpeter válasza GPeti1977 hozzászólására (») Szept 8, 2024 /
 
Most jutottam el oda, hogy ki tudtam próbálni a kódot amit adtál. Remekül működik, köszönöm szépen. Elsőre elég meredek értékeket mutatott de aztán az általam korábban felvett karakterisztika alapján módosítottam a setup.h-ban lévő értékeket. Így már közelebb van a valósághoz amit mérek de további finomításra lesz szükség. Az a gondom, hogy hőmérsékletet egy multiméterrel meg egy somogyis indoor/outdoor digitális hőmérővel tudok mérni, de ezek közt is kb. 1,5 C eltérés van. Nem tudom melyiket tekintsem jónak.
(#) pipi válasza pavikpeter hozzászólására (») Szept 8, 2024 / 1
 
olvadó jég, és forrásban lévő víz megmondja
(#) kameleon2 válasza kameleon2 hozzászólására (») Szept 9, 2024 /
 
Korrigálnom kell magam. Megy a HeStore-s Nano is, csak kellett egy kicsit a chatgpt segítsége. Pont ellenkezőleg kellett beállítani, mint ami a store oldalán van. Normal bootloadert kellett és nem old bootloadert állítani.
(#) morgo hozzászólása Szept 13, 2024 /
 
Sziasztok!
Portable Arduino 2.3.2 az alany. Az alaplap kezezelőből telepíteni szeretném az Arduino Mbed OS RP2040 lapot. Elindul, de ezt a hibaüzenetet kapom:
Error: 2 UNKNOWN: local error: tls: bad record MAC
Mi lehet a hiba?
A hozzászólás módosítva: Szept 13, 2024
(#) neogeo2 hozzászólása Szept 17, 2024 /
 
Sziasztok!

Van egy arduino uno kínai klón panelom. Elég bizonytalan a működése. Régen használom már, de egyre instabilabb. Volt már olyan hogy a bootloadert kellett újra programozni, mert megsérült. Egyébként egy másik hasonló panelon hibátlanul működő programok is sokszor hibásan mennek rajta. 7-8 évig hibátlan működéssel ment, csak mostanában vannak gondjaim vele. Mi lehet a gond?
Hogyan, milyen módon lehetséges a flash memória és a RAM ellenőrzése? Valami olyanra gondoltam hogy tele lehetne írni a flasht ismert tartalommal és azt vissza olvasni.
Tápegység ellenőrzése és új bootloader feltöltése megvolt. Ami ötletem van még, a 328 cseréje, de hátha van valami más gondolat itt...

Minden tippet szívesen fogadok és köszönet érte!
(#) Bakman válasza neogeo2 hozzászólására (») Szept 17, 2024 /
 
A klónok eleve nagyobb kockázatú eszközök. Első ránézésre úgy tűnik, elhasználódott a programmemória, azt ugyanis nem lehet végtelenszer újraírni. Nem valószínű, hogy annyiszor írtad újra, hogy az adatlap szerinti újraírhatósági limitet átlépted, de egy klón esetén a fene tudja, mennyire tartósak azok a bitek.

Ha a tápfeszültség biztosan stabil és zajmentes és minden körítés rendben van (forrasztások, Reset bemenet stb.), akkor cseréld a kontrollert.
(#) Lamprologus hozzászólása Szept 18, 2024 /
 
ESP12F-et programozgatok ...
Több függvényben használnák nagyobb méretü karakter tömböket ...
Mi a célszerűbb, program futás elején lértrehozni egy globális karaktertömböt, és ezt használni minden függvényben, vagy minden függvényben külön definiálni?
Mi történik, ha függvényenként, futás időben akarja létrehozni, de nincs egybefüggő megfelelő méretű nemória terület? "Rejtélyes" programhibák, resetelések?
(#) asch válasza Lamprologus hozzászólására (») Szept 18, 2024 /
 
Ha globális, akkor nagyon kell figyelni, hogy ne legyen olyan, hogy ketten "egyszerre" használják! Ha egy függvény elkezdi használni, majd továbbhív egy másikat ami belül ugyanazt a buffert másra használná, az már nem jó. Észnél kell lenni.

Ha lokális, akkor a program a stacken fogja allokálni. Ebben az a jó a globálissal szemben, hogy csak addig van lefoglalva a memória, ameddig használjuk. De a stacken allokálás problémája az, hogy a mikrovezérlőknek tipikusan kicsi a stackje, könnyen stack overflow lehet a vége. Ha a fordító nem csinál overflow checket (szerintem a legtöbb alapesetben nem csinál), akkor ennek bizony lehet nehezen felismerhető hiba az eredménye, mert a tipikus architektúrákon a stack a heapbe kezd beleérni, és felülír ottani változókat. Ezt egyébként egyszerű volna felismerni, de sajnos a legtöbb fordító által generált program nem csinál önellenőrzés.

Fejlesztéskor a stack allokálással úgy tudsz számolni, hogy tudod, hogy hány mélységben hívják egymást a stacken allokáló függvények, és hogy ezek mennyit foglalnak. Öszeadod, összesen ennyi helyjel kell számolni a stacken erre a célra. Ha ezek egyszerre a stacken vannak, akkor globálisként megvalósítva is egyszerre használnád őket. Tehát ugyanannyi memóriát fogsz használni így is úgyis, csak egyszer a stacken, egyszer meg a heapen, amik úgyis egymás kárára tudnak nőni. (Ha többszálúságot is használsz, akkor más a helyzet, mert minden szálnak külön stackje van. De a globális is nehéz ott, mert akkor meg több szál használhatja ugyanazt a globálist.) Tehát összességében mindegy. Mégis azt szokták a programozók mondani, hogy stacken tilos nagy tömböket allokálni, van ahol ez a kóding standard.

Ha dinamikusan allokálod (malloc és tsai-val), akkor az megint más terület aminek meg vannak a maga problémái, de nem hiszem, hogy ezt csinálnád, úgyhogy erről nem értekezek.
(#) kameleon2 válasza neogeo2 hozzászólására (») Szept 19, 2024 /
 
Van pár klónom. Például Geekcreit és más CH340-esek. Némelyik jó, de ugyanabból a sorozatból volt rossz is. Mindegyiknek sebesség és memória gondja van. Azt gyanítom a gyártói tapasztalataim alapján, lehetséges, hogy pont kifogtunk pár olyat, amit a Covid idején leállított gépsorokról kaptunk. Volt amelyik még éppen végiggördült a gyártósoron, a másikra éppen csak ráfolyt a massza. Persze ez vicc de a memória gondok elég sűrűek. Én azt csináltam, hogy rátöltök olyan, egyébként jó Uno-n lepróbált szoftvert, ami 98-99%-ban kitölti a memóriáját. Van amire már fel sem megy, van ahol hibát produkál. Ezek kapnak másik chipet, bootloadert, vagy éppen pinheadert, mert a szállításkor volt pár törött csatis is. Most Nano klónokkal fordult elő, hogy a lila C csatis (echte aliexpress) változaton jól futott egy szoftver, a HEStore-s változat hibát produkált.
A hozzászólás módosítva: Szept 19, 2024
(#) asch válasza kameleon2 hozzászólására (») Szept 19, 2024 /
 
Pont most vettem ilyeneket. Eddig jól működtek, de még csak épp kipróbáltam amit építeni akarok belőlük.
Mi a gyanúd, mi az oka a hibáknak? A CH340 az az USB illesztő csip, ez tehát akkor jön gyanúba, ha az USB-serial kapcsolat problémás. Lehetséges, hogy hamis az ATMega328p? Vagy az összeszerelés hibás? Rá lehet jönni valahogy szemrevételezéssel, hogy fogok-e szívni vele, vagyok oké?
(#) GPeti1977 válasza asch hozzászólására (») Szept 20, 2024 /
 
Szerintem ezek nem hamisítványok, hanem a gyártási selejt valahogy kikerül a kereskedelmi forgalomba.
(#) vargham válasza asch hozzászólására (») Szept 22, 2024 /
 
Találkoztam olyannal, ahol azért nem működött az USB soros, mert a CH340 rosszul volt bekötve. A NYÁK tervezője (klónozója) felcserélte a lábakat... Tehát soha nem is működhetett. Mivel minőségellenőrzés nincs, ez nem derült ki náluk...
(#) kameleon2 válasza asch hozzászólására (») Szept 23, 2024 /
 
A rátöltéssel nincsen baj. Végrehajtáskor működik hibásan.
(#) kameleon2 hozzászólása Szept 24, 2024 /
 
4-es nyomógomb dekódolása probléma: Van egy kínai 4-es taszterem, amit RS-485-el hirdettek. Én naív, megszoktam, hogy eleve MODBUS a protokoll. Nem így van. Arduino-hoz szeretném illeszteni és meg is van már miként kommunikál. 19200 Baudon szépen lehet pc-ről kérdezni, vezérelni. Mindössze annyi, hogy nagyon egyedinek tűnő protokollt használ - ami nem baj, csak szeretném érteni is. 2 alkalommal küldi el ugyanazt a táviratot, vagy ugyanezzel lehet aktiválni, deaktiválni. Egy ilyen decimális távirat:
  1. 1. gomb bekapcsolás: 238       238     70      88      165     132     0       0       0       209
  2. 238     238     70      88      165     132     0       0       0       209
Ebből a 132 a bekapcsolás parancs. Nem ismerős valakinek ez a felépítés valahonnan? Megértettem és oda-vissza működik, ha küldöm, ha fogadom. Lehet ez szabványos távirat, vagy ex has?
(#) pumpa hozzászólása Okt 6, 2024 /
 

Információ kérés!

Üdv! Ezt a hőelemet szeretném rákapcsolni az ardunio pro minire, hogy kijelezze a hőmérsékletet, és programozni is tudjam. Milyen modul kellene hozzá, ami tudja kezelni az 120 fokot?

https://vi.aliexpress.com/item/1005007182526067.html?gatewayAdapt=glo2vnm
(#) mnyugger válasza pumpa hozzászólására (») Okt 6, 2024 / 1
 
MAX6675 modult keress.
(#) pumpa válasza mnyugger hozzászólására (») Okt 6, 2024 /
 
Köszönöm a gyors választ! Megnéztem a MAX6675-ös modult a hestore pdf-jében de úgy nézem az csak 1024-C.fokot tud. Biztos, hogy jó ez a modul amit ajánlottal?
Következő: »»   848 / 850
Bejelentkezés

Belépés

Hirdetés
XDT.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