Stránka 1 z 2

externí CH340

Napsal: 14 led 2024, 11:02
od Ludek
Zdravím, měl jsem takový úkol.
Nacpat kod do Arduina UNO, ale né přes jeho USB port, ale přes to samé ale externě.
A tak jsem zapojil CH 340 přesně prodle schema co má UNO, připojil na ty samé piny... A NIC
V čem je ten rozdíl?
Zkusil jsem to jak na funkční UNO - paralelně na Tx a Rx i RES, tak i na UNO, kde byl CH340 se všemi komponenty odstraněn.
Tak to je mimo mé chápání. Dokonce jsem zkontroloval schema dle tišťiku a nic.
Máte někdo vysvětlení?

Re: externí CH340

Napsal: 14 led 2024, 14:16
od peterple
Paralelne to fungovať nemôže. Samo o sebe to fungovať musí. Teraz nakopnem vešteckú gulu - máš to asi zle zapojené. Ked to pripojíš, ten prevodník objaví sa ako sériový port? Ak áno, máš prekrížené Tx a Rx medzi prevodníkom a procesorom? Máš tam pripojený reset cez kondenzátor? Máš v MCU bootloader?
Zatiaľ ma viac nenapadá.

Re: externí CH340

Napsal: 14 led 2024, 16:29
od Caster
Podívej se na Arduino serial Programmer CH340N ;) . V popisu máš i propojení s Arduinem.

Re: externí CH340

Napsal: 15 led 2024, 11:18
od Ludek
Ahoj pánové,
pro petrple -
zapojení mám OK, a dokonce jsem zkoušel s i bez Reset, kond tam je. Nechápu.
Tx a Rx jsem také zkoušel prohodit a COM vidím. A nejde to ani na čistý UNO - kde nejsou ty původní součástky od CH340.
pro Caster -
to zapojení zkusím, ale on tam není krystal, to jde i bez něj? - jo už to vidím, to je čip 8pin.

Re: externí CH340

Napsal: 15 led 2024, 19:40
od peterple
Ešte si nenapísal či v tom MCU máš nahratý bootloader. Dajme tomu že áno.
Rx a Tx sa neskúša prehodiť to treba mať na 100% zapojené správne. Ak tam máš totiž dve alebo viac chýb tak množstvo variant na otestovanie rastie geometrickou radou.
Takže tu máme logický krok keď vieme že COM vidíš. Otvoríš si ho v termináli. Prepojíš Tx a Rx. A začneš písať. To čo píšeš sa musí objaviť v tom termináli. Tak si skontroluješ že to posiela a prijíma. Volá sa to hw echo.
Potom uvidíme čo ďalej

Re: externí CH340

Napsal: 15 led 2024, 21:16
od Ludek
Tady nejde o MCU...
vše je OK, žádná chyba. Proto mě to trápí.
Mám jedno UNO, které je OK a programuju ho přes ISP. Tak jsem to na něm taky zkoušel použít ten CH340.
Nejde to. Dle Tvé rady jsem na UNO nahrál Echo kod a připojil ten modul CH340.
A TO FUNGUJE !!! První krok je za námi :-)
Ale nenahraju tam nic :-)

Re: externí CH340

Napsal: 16 led 2024, 00:17
od peterple
Jak že nejde o MCU. Ak v ňom nemáš nahraný bootloader tak tam cez seriak nemôžeš nič dostať. A podľa toho čo píšeš tak tam bootloader nemáš, pretože napálením programu cez ISP znamená že tam síce napáliš program ale pri tom vymažeš bootloader.
Takže si tam cez ISP nahraj príslušný bootloader a potom správne pripoj Tx a Rx a reset a malo by to fungovať.

Re: externí CH340

Napsal: 16 led 2024, 07:14
od Ludek
Tak další dílčí úspěch.
Nevím proč a čím to je, ale Reset kond jsem změnil ze 100n na 1mikro.
A šlape to - dokonce i na funkčních UNO - paralelně ke stávajícímu CH340.
Potud OK
Ale na desce, kde je čip AT328PB, to nejde. Zkusil jsem přes ISP nahrát jak botloader i echo kod.
A echo funguje ale nic nenahraju.
Echo_PB.jpg

Re: externí CH340

Napsal: 16 led 2024, 11:09
od Ludek
HEUREKA !
Tak jsem na to přišel - prosím o vaše názory !!!
Celou dobu jsem se trápil tím, že jsem se snažil externím CH340 programovat UNO.
Po odstranění všech mušek a s vaší pomocí jsem to dokázal ... ALE !!!!!
ALE je tu to ALE !
NEJDE takto programovat UNO, kde je procesor ATmega 328PB ! Proto tam bývá ten neznámý čip,
o kterém jsem tu psal s dotazem co to je za čip. Nikdo to neví... ( v sekci Arduino desky oficiální - UNO s USB mico )
A tak se to ukázalo PROČ TAM TEN ČIP JE !!!
Máte někdo vysvětlení, proč se ten 328PB nedá programovat CH340?? a potřebuje toho neznámého brouka???

Re: externí CH340

Napsal: 17 led 2024, 16:13
od kiRRow
Pokud chceš programovat přes CH340, tak programuješ pomocí pinu na procesoru RX a TX ... a ty standartně neslouží k programování !!! V procesoru musí být napálen správný bootloader, který se spouští jako první instrukce po zapnutí ... bootloader následně čeká, jestli se něco objeví na sériové lince , pokud ano tak přepíše skutečný program procesoru a restartuje se, pokud ne, tak spustí první instrukci skutečného programu.

Pokud programuješ přes ten 6ti pin konektor, tak tam to probíhá úplně jinak (MOSI MISO RST a CLK) a přepíšeš kompletně celou paměť procesoru a ten bootloader si smažeš. Nebudeš pak moct nahrávat program přes RX, TX ... ale na druhou stranu hlavní program se spustí ihned.