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   873 / 874
(#) tufatofu válasza mateatek hozzászólására (») Aug 30, 2026 /
 
328PB-U van rajta, a dude configja tudná(persze a felirat az egy dolog, mert a fene tudja, hogy valójában mi az). a PB-nek ráadásul 2db spi csatornája van. Ki tudja a kínai melyiket engedélyezte, attól függetlenül, melyik van a panelen kivezetve a 6 tűs steckerre. Már egy hete szenvedek vele, hogy különféle, minden mással működő bevált eszközökkel, különféle operációs rendszerek alól, különféle programokkal megszólítsam ICSP-n ezt az ótvart, amiből bevásároltam.

  1. part parent "m328"
  2.     id                  = "m328pb";
  3.     desc                = "ATmega328PB";
  4.     signature           = 0x1e 0x95 0x16;
  5.  
  6.     ocdrev              = 1;
  7.  
  8.     memory "efuse"
  9.         size = 1;
  10.         min_write_delay = 4500;
  11.         max_write_delay = 4500;
  12.         read = "0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0",
  13.                "x x x x x x x x o o o o o o o o";
  14.  
  15.         write = "1 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0",
  16.                 "x x x x x x x x x x x x i i i i";
  17.     ;
(#) mateatek válasza tufatofu hozzászólására (») Aug 30, 2026 / 1
 
Programoztam 328PB-t . Egy lapkára feltöltöttem az Arduino ISP programot, rádrótoztam a 328PB-re és már ment is föl a program.
De LGT328P lapkára is gond nélkül föl szokott menni a program, csak olyankor a Larduino ISP programot használom, meg kicsit más a drótozás.
A hozzászólás módosítva: Aug 30, 2026
(#) tufatofu válasza mateatek hozzászólására (») Aug 30, 2026 /
 
Ez volt az elképzelés nekem is, de már fogalmam sincs mi lehet a baj. Egy 100nF-os kondi a reset vonalon a ch340-től, egy 10K-s felhúzóellenállás szintén a reseten, és egy led az órajelen a különbség egy sima 328-as chip között, amit minden visz vidáman. Még az lehet, hogy az isp-t letiltotta a kínai
(#) mateatek válasza tufatofu hozzászólására (») Aug 30, 2026 / 1
 
Még olyasmi közbe játszhat, rá kellene mérni, hogy az a 100nF-os kondi, amin keresztül a RESET impulzust kapja az MCU, annak a kondinak a CH340 felőli vége, tehát a CH340 2-es lába az fix potenciálon van alap esetben, vagy nagy impedanciásan lóg.
Mert ha fix potenciálon van, akkor az ICSP felől jövő RESET impulzusnak át kell polarizálni ezt a kondit. Ha rövid az impulzus és hosszú a kábel, akkor lehet, hogy az MCU nem kap megfelelő RESET jelet.
(#) tufatofu válasza mateatek hozzászólására (») Aug 30, 2026 /
 
Gondoltam arra is, hogy teszek egy fetet az égető kimenetére a reset lábra, ami radikálisan lerántja gnd-re az arduino reset lábát bármi legyen is ott a ch340 felől odaszivárogva. Valami piszlicsáré dolog szívat, ha egyáltalán kiderül valaha mi volt az, de mindenképpen az arduino board kavar be, mert külön viszi a chipet.
A hozzászólás módosítva: Aug 30, 2026
(#) mateatek válasza tufatofu hozzászólására (») Aug 30, 2026 / 1
 
Idézet:
„Gondoltam arra is, hogy teszek egy fetet az égető kimenetére a reset lábra, ami radikálisan lerántja gnd-re az arduino reset lábát”

Az nem invertálna?
A hozzászólás módosítva: Aug 30, 2026
(#) tufatofu válasza mateatek hozzászólására (») Aug 30, 2026 /
 
Itt már kínszenvedett valaki a Nanoval, csak ő Polulu programozóval, és tranzisztorokkal oldotta meg, a reset gondot.
(#) mateatek válasza tufatofu hozzászólására (») Aug 30, 2026 / 1
 
Erről a kapcsolásról az jut az eszembe, hogy egy LED-tranzisztoros optocsatolóval egyszerűbben meg lehetne oldani. Egy ellenállás a LED elé, a tranzisztor meg lerántja GND-re a RESET lábat.
(#) user1914 válasza tufatofu hozzászólására (») Aug 31, 2026 / 1
 
A dude ha nem választasz IC-t a detektálás gombbal rátalál?
Üdv. M.
(#) tufatofu válasza tufatofu hozzászólására (») Aug 31, 2026 / 1
 
Köszönet minden hozzászólónak az ötletekért és a segítségért! Nagy nehezen,de meg lett a baj. A kínai valami ötlettől vezérelve(biztos ebből több volt) 10K-s (103) helyett 1K-s(102) légysz@rt rakott a reset vonalra felhúzó ellenállásként. Miután kicseréltem kínomban, varázsütésre minden jó lett. Feltehetőleg a logikai L szint alá nem tudta lerántani a programozó az adott pillanatban a reset vonalat. Sajnos az összes panel ilyen amit egyszerre vettem, és annyira nem jó ezt cserélni. Azt viszont nem tudom, hogy az IDE bootloaderrel, hogy oldotta meg a resetet, mert azzal meg működött jól, csak az ICSP-n nem. Üdv mindenkinek!
(#) bubuszoft válasza Régi motoros hozzászólására (») Aug 31, 2026 /
 
Hestorból vettem a mini usb-s tipist. nem ajénlom senkinek! Érdekes a type c-s vígan dolgozik
(#) Régi motoros válasza tufatofu hozzászólására (») Szept 1, 2026 /
 
Esetleg lassú jelváltási sebesség, az ISP módban.
Nem vennék mérget rá, de elképzelhető, hogy az IDE lassabb sebességgel ír és olvas,
feltéve ha nem állítottál már be amúgy is lassabb órajelet az ISP programozás közben.
Tennék egy próbát kisebb órajellel.

Ha az IDE -vel alap 115.200bps van beállítva, az pedig működik,
megpróbálnám ISP -n is beállítani evvel egyező bitsebességű órajelet, vagy akár kisebbet is.

A 115.200bps IDE sebességhez tartozó órajel periódusideje kb 8,68 µs.
A 375 kHz ISP sebességhez tartozó órajel periódusideje kb 2,67 µs.
Szóval ISP módban kb háromszor gyorsabb a jelsebesség, ezért nem érzékeli a resetet megfelelően, feltételezésem szerint.

Tehát ha az ISP órajelet lentebb veszed, hogy megkapd a lassabb periódusidőt elvileg működhet ISP-n keresztül is, és nem kell ellenállást cserélni. (AVRDUDESS -ben a bit órajelet csökkentsd.)
Elvileg 93.75kHz sebességen már működhet, mert akkor már nagyobb a periódusidő is.
Másik fontos dolog, hogy minél rövidebb legyen az ISP vezetékköteg.

Számoltattam pár lassabb fokozatot támogató periódusidőt az AI-val, ha gondolod próbáld ki.
A hozzászólás módosítva: Szept 1, 2026
(#) Régi motoros válasza bubuszoft hozzászólására (») Szept 1, 2026 /
 
Már úgy értettem, hogy a programozó gyártója mit szól hozzá.
De akkor gyanítom, hogy neked is a kínai klónféle hardvered van, azért nem tetszik a gyári programozónak. Akkor meg persze, hogy hiába keresnéd a programozó gyártóját is...

Esetleg bepróbálkozhatnál te is lassabb sebességen, rövidebb dróton ahogy tufatofunak ajánlottam...
A hozzászólás módosítva: Szept 1, 2026
(#) user1914 válasza tufatofu hozzászólására (») Szept 1, 2026 /
 
A fent említett sebességet vedd le az AVRDUDES-ben 32k-ra.
A belső oszci az arduinóba 1MHzre van állítva gyárilag.
Majd te be tudod utána a konfig biteket állitani magadnak.
De nem mindegy mennyi idő alatt programozod fel első alkalommal?
Én is szenvedtem hasonlóval, még az IC-t sem detektálta autóban. Ezt levéve 32k, máris tökéletes lett.
A hozzászólás módosítva: Szept 1, 2026
(#) tufatofu válasza user1914 hozzászólására (») Szept 1, 2026 /
 
Azzal kezdtem az egész kálváriát, hogy végigzongoráztam az összes órajelet, de még 500Hz-n sem vitte. Aztán usbasp firmware frissítés az eredetire, majd zongora ismét, de hiába. Minden más működött, csak ez a Nano sorozat nem. Olvastam valahol, hogy volt akinek úgy sikerült programozni néhány tipust, hogy letakarította valamelyik ledet a Nano panelről. Sajnos ilyen ez a Klón piac. Feltehetőleg valami meós szemétből készül mindegyik ezért nagy a szórás, melyik, hogy viselkedik.
A hozzászólás módosítva: Szept 1, 2026
(#) bubuszoft válasza Régi motoros hozzászólására (») Szept 2, 2026 /
 
Egy óriási baklövést követtem el, és leírom, hogy senki más ne essen bele ebbe! van egy LM2596S-PSUM tápom és az arduino nanom. A hibás bekötést írom le, és ezt így tilos (nem is értem hol járt a fejem, na mind1) két nanom bánta
Az LM2596S-PSUM beállítottam 5 voltra, és a vavo 5 volos lábára raktam, majd onnan egy diodén keresztül kapott a ds18f20 és a kék hátterű lcd is. Amikor programozni akartam tápot levéve, nem volt semmilyen védelem, a kis chip nem bírta a LM2596S-PSUM kimenetén lévő 100uf kondi és a rátett fogyasztók táplálását! Az iskolába tanultuk, hogy az elko első pillanatban rövidzárként viselkedik, és pontosan elég ez annak a pici smd ic-nek! A megoldás A LM2596S-PSUM ről egy diodám 4001 el a Vin A másik LM2596S-PSUM ról egy 7805 re rakom amitől az lcd-t és a DS-t táplálom. Igy tuti ha programozni akarom, akor az arduinoban lévő stapic és a 4001 megfogja és nem szálé el az ic!!
(#) TavIR-AVR válasza tufatofu hozzászólására (») Szept 11, 2026 / 1
 
A 328PB az is programozható. Az Arduino keretben igaz fel van rakva a 328PB kiegészítés?
A programozós lapon a RESET és a GND közé 10µF kondid ott van?
(#) TavIR-AVR válasza bubuszoft hozzászólására (») Szept 11, 2026 / 1
 
Tipp: Ne klasszik diódát tegéyl rá - azon ~0,7V esik. Schottky-t keress: 0.2...0.3V esik rajta...
(#) tufatofu válasza TavIR-AVR hozzászólására (») Szept 12, 2026 /
 
Köszi a választ! Már megoldódott. Az a néhány Nano volt szériahibás. Más beszerzéssel működött elsőre.
(#) tursaba hozzászólása Sze, 19:05 /
 

Arduino PROGMEM

Sziasztok!
Arduino at2560 R3, PROGMEM -ben 2D tömböt csak 8K méretet tudok deklarálni.
A fordító efölött méret hibát ír.
Jó a hardware kiválasztásom, Arduinio Mega or Mega2560
Szerintetek mi lehet a hiba?
Köszönöm.
(#) vargham válasza tursaba hozzászólására (») Sze, 19:59 /
 
Ez lefordul:
const uint16_t table[8191][2] PROGMEM;
Ez nem:
const uint16_t table[8192][2] PROGMEM;
error: size of array 'table' is too large const uint16_t table[8192][2] PROGMEM;

32k a limit. Nálad milyen hibát ír a fordító?
(#) mateatek válasza tursaba hozzászólására (») Sze, 20:03 / 1
 
Úgy tudom, hogy az AVR fordítónak van egy korlátja. nem lehet 32767 bájtnál nagyobb tömböket létrehozni (PROGMEM vagy sem).
(#) majkimester válasza mateatek hozzászólására (») Sze, 21:38 / 1
 
Az AVR 16 bites index regisztereket használ a memória címzéshez, ebből jön a 64k határ, de a gcc fordító ezt lefelezi, mert 16 bites előjeles integer-t használ indexnek. Innen a 32767.

A jó hír, hogy a gcc fordító, amit az Arduino is használ támogatja a Named Address Space-eket, úgymint __flashx vagy __memx amelyekkel 24 bites pointereken keresztül nagyobb tömöket is lehet egyben kezelni.

A rossz hír, hogy ezeket C nyelven lehet csak használni.
C++-ban, amit az Arduino használ közvetlen nem érhető el.

ITT van egy megkerülő megoldás, hogy hogyan lehet C-ben definiálva, majd extern C függvényekkel elérve megoldani ezt Arduino-ban.
(#) tursaba válasza vargham hozzászólására (») 6:57 /
 
A 2 prg sorod egyforma.

cons unsigned long int proba [198] [42] PROGMEM =
{
}

A 198-al már éppen túl van a 8Kb-on.
Alatta pl 190 jó.

size of array 'proba' too large.
(#) tursaba válasza mateatek hozzászólására (») 6:59 /
 
8 Kb- nál nem enged többet.

size of array 'proba' too large.
(#) tursaba válasza tursaba hozzászólására (») 7:05 /
 
Meg van .
cons unsigned int kell!
(#) vargham válasza tursaba hozzászólására (») 7:07 /
 
Nem, nem egyforma. 8191 lefordul, 8192 nem fordul le.
Az általad írt const unsigned long int proba [198] [42] mérete 33264 byte.
(#) vargham válasza tursaba hozzászólására (») 7:08 /
 
Valamit nagyon nem értesz. 32 kB a limit, nem 8 kB.
(#) tursaba válasza tursaba hozzászólására (») 7:08 /
 
Igaz. Tényleg 32Kb- enged csak.
(#) tursaba válasza vargham hozzászólására (») 7:14 /
 
Igaz.
Még 1 tömböt lehet deklarálni, vagy ettől, összesen (32Kb) többet nem enged meg?
Következő: »»   873 / 874
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