Fórum témák

» Több friss téma
Fórum » RS232 kérdések
 
Témaindító: tizedeske, idő: Júl 21, 2007
Témakörök:
Lapozás: OK   11 / 25
(#) Syn7h37ic válasza icserny hozzászólására (») Nov 6, 2011 /
 
CD4066 Ic-vel megoldható a kapcsolás, vagy használjak inkább jumpersort?
(#) icserny válasza Syn7h37ic hozzászólására (») Nov 6, 2011 /
 
Lehet, hogy egy soros ellenállás is elég a leválasztáshoz, a mindig bekötött MAX232 ágban. Feltételezem, hogy RS232 módban a TTL bemenetre nem csatlakoztatsz semmit. TTL módban pedig a közvetlenül csatlakoztatott eszköz (ha közvetlenül csatlakozik? Ezt neked kell tudod.) dominál, az ellenállás másik végére csatlakozó MAX232 nem jut szóhoz...
(#) Syn7h37ic válasza icserny hozzászólására (») Nov 6, 2011 /
 
Így van. Vagy csak TTL, vagy csak RS232. Kettő együtt soha nem lesz használva. A TTL közvetlen csatlakozás csak valószínűsített, nem ismerem a belső kivitelezését a rendszereknek, riasztókról van szó.
Rugalmas vagyok a kivitelezéssel, igazából ezek után fogom a panelt megtervezni, miután minden kérdés tiszta. A CD4066 azért is szimpatikus , mert egy jumperrel, megoldható a MAX232 ic-k leválasztása.
(#) CactusJack hozzászólása Jan 8, 2012 /
 
Sziasztok!

MCP2200-hoz lenne egy igen kezdő kérdésem. Még régebben csináltam egy NYÁK-ot, amin az IC egy AVR-rel kommunikál. A fő projectben, melyben ez lesz a vezérlő egység, az lenne a cél, hogy a PC-ről utasításokat tudjak adni az AVR-nek. A szoftvert .NET-ben szeretném megcsinálni. Az MCP-hez kiadott mintakód sikeresen csatlakozik a device-hoz. Hyper terminal segítségével is teljesen jól tudok kommunikálni vele.

Amit szeretnék, az valami mintakód, hogy hogy tudnék a terminálhoz hasonló kommunikációt megvalósítani saját programmal. (Az eszköz hallgatózik, ha mondanivalója van, elküldi, majd tovább hallgatózik.) Nem találtam a DLL-ben például olyan függvényt, amivel elkérhetném, hogy melyik soros portot használja a device.

Előre is köszönöm a segítséget!
Üdv:
Jack
(#) zombee válasza CactusJack hozzászólására (») Jan 8, 2012 /
 
Nem kell ide semmilyen DLL, ha soros portként akarod használni! Csak az I/O kezeléséhez kellene!
Ugyanúgy kell használni mint bármilyen más soros portot! Én PureBasic alatt használom és a bitbang módok
kivételével minden beépített függvény tökéletesen működik vele, .NET alatt is ugyanígy menni fog!

Ha az I/O lábakat is használni akarod akkor be kell tölteni a DLL-t, majd a doksiban megtalálod a függvényeket is.
(#) CactusJack hozzászólása Jan 8, 2012 /
 
I/O alatt gondolom a General Purpose lábakat érted. Ezeket nem szükséges használnom. Soros portot tudok kezelni C# alatt, csak azt hittem, a DLL tartalmaz valamit, ami elárulja, hogy melyik COM porton kéne a kommunikációt végezni. Hogy érdemes ezt megoldani, ha az ember nem akar ComboBoxos kiválasztót csinálni hozzá?
(#) icserny válasza CactusJack hozzászólására (») Jan 8, 2012 /
 
Idézet:
„Hogy érdemes ezt megoldani, ha az ember nem akar ComboBoxos kiválasztót csinálni hozzá?”
Ha jól emlékszem, VID/PID alapon lehet böngészni az eszközöket.

A Microchip Applications Library-ban van egy mintaprogram (talán VC++ 2008?), PC Dynamic Software néven. Ez a teljesen automatikusan nyitja meg vagy zárja be az USB Device - CDC Basic Demo-val megvalósított virtuális soros portot a PIC csatlakoztatásakor vagy lecsatlakoztatásakor.
(#) CactusJack válasza CactusJack hozzászólására (») Jan 8, 2012 /
 
Nézegettem még neten, de nem nagyon láttam megoldást. Mennyire bunkóság az összes COM portra kiküldeni valami köszönőüzenetet, amire a saját kütyü valami definiált választ kell, hogy adjon? (Ha megkaptam, ez az a port...)
(#) CactusJack válasza icserny hozzászólására (») Jan 8, 2012 /
 
Idézet:
„Ha jól emlékszem, VID/PID alapon lehet böngészni az eszközöket.”


Ez azt jelenti, hogy van valami szabványos módja a VID/PID lekérdezésnek?
(#) zombee válasza CactusJack hozzászólására (») Jan 8, 2012 /
 
Kiküldüzgetni valamit nem mindig szerencsés mert egy másik eszközt megszólítva bizonytalan lesz a viselkedése.
Örömhír hogy ha újra rácsatlakoztatod a gépre akkor ugyanazon a COM porton érheted el.

Én a saját cuccomnál úgy csinálom hogy az AVR folyamatosan(~50ms időközönként) elküldi a státuszt, természetesen CRC-vel kiegészítve. Csatlakozáskor a PC-program megkeresi az összes megnyitható COM portot, majd hallgatózik kb. 200ms ideig. Ha értelmes adathalmazt kap akkor megtalálta az eszközt...
(#) CactusJack válasza zombee hozzászólására (») Jan 8, 2012 /
 
Én is féltem volna mindenhová küldeni valamit. Minden esetre elképzelhető, hogy marad egy config fájlos megoldás, hisz tényleg nem változik a port, még akkor sem, ha másik USB portra dugom.
A periodikus jelentéses megoldás sem rossz gondolat, köszönöm a segítséget.
Remélem, elboldogulok majd. Közben kipróbáltam egy kétszálú kis programmal és szépen megy a terminál jellegű kommunikáció.
(#) icserny válasza CactusJack hozzászólására (») Jan 8, 2012 /
 
Idézet:
„Ez azt jelenti, hogy van valami szabványos módja a VID/PID lekérdezésnek?”
Igen, van valami, de jobban jársz, ha a korábban említett példaprogramot nézed meg, mert én nem nagyon értek ehhez.

Úgy látom, hogy a Windows setupapi.dll segítségével kéri le az eszközökről az információt.
(#) CactusJack válasza icserny hozzászólására (») Jan 8, 2012 /
 
Köszi az infót, utánanézek ennek is!
(#) knnorbixxx hozzászólása Feb 2, 2012 /
 
Sziasztok!

A napokban szert tettem egy csodás
Idézet:
„Made in China”
műanyagba ömleszett USB - RS232 adapterre. Kis idő mulva kiderítettem, hogy egy PL2303 lakik benne.
Nagyon örültem, mert már rég szükségem lett volna rá. Persze a kedvemet nagyon gyorsan lelombozta, hogy a mellékelt driver álítólag működik Windows Vista-val (és ugyebár a vista-s driverek jók Windows 7-en is), de mégsem. Elő egy virtuális XP. Driver feltelül, eszköz működésre kész. Gyorsan rádugtam egy CISCO-s AP console portját. Putty idul, szépen látom ahogy az IOS betöltődik az AP-n, mindenféle szépet küld nekem az eszköz az új szerzeményemen kereszül. Időközben találtam olyan drivert is ami működik 7-en is, szóval ez a probléma kipipálva, de most jött a másik. Ahogy az IOS felállt, és megpróbáltam volna valamilyen gomot lenyomi, semmire nem reagált. Csak ő tud írni nekem, de én neki nem.

Szóval az lenne a kérdésem hogy valaki tudja, hogy lehet orovosolni a problémát hogy az információk mindkét irányba tudjanak áramolni?
(#) icserny válasza knnorbixxx hozzászólására (») Feb 2, 2012 /
 
PL2303 drivert a gyártó honlapjáról szoktam letölteni (PL2303HX), eddig még mindig működött.
Idézet:
„Csak ő tud írni nekem, de én neki nem.”
Ellenőrizni kellene a jelszinteket! Ha az átalakítód 3,3 V-os jelszintű, a hozzá csatlakozó eszköz pedig 5 V-os és ráadásul CMOS Schmitt-triggeres bemenetű, akkor kevés lehet neki a jelszint. Lehet, persz más ok is, de ez egy elég triviális eset.

Feltételezem, hogy a vezetékeket sikerült azonosítani, tehát tudod, hogy melyiken megy ki az adat.
(#) gordonfreemN hozzászólása Márc 20, 2012 /
 
Sziasztok!
Az alábbi uc232a típusú usb-rs232 konverterrel van valakinek tapasztalata?
(#) gordonfreemN válasza gordonfreemN hozzászólására (») Márc 20, 2012 /
 
Bocs, a lényeg lemaradt, AVR esetleg PIC-re használnám a későbbiekben (programozás). Arra jó? Vagy inkább az alaplapimat használjam, asrock z68pro3-M
(#) gordonfreemN válasza gordonfreemN hozzászólására (») Márc 20, 2012 /
 
A chip rajta PL0323 ami 5V-os.
Ha stimmelnek az adatok, akkor a sejtésem, hogy igen a válasz, működik PIC-hez és AVR-hez.
Ha esetleg betéved egy kedves modi, megtenné nekem, hogy összevonja az utóbbi 3 hsz-emet?
De azért várok egy tapasztalt visszaigazolására.
(#) zombee válasza gordonfreemN hozzászólására (») Márc 20, 2012 / 1
 
A munkahelyemen pont egy ilyet használok a gyári STK500-hoz mert kevés a soros portom.
A pontos típust nem tudom, a kinézete pontosan ilyen; és eddig nem is volt vele probléma, megbízható darab!
Elvileg nem tudtak alá drivert telepíteni ezért félrerakták, én meg 10 perc kutakodás után életre keltettem.
(#) gordonfreemN válasza zombee hozzászólására (») Márc 21, 2012 /
 
Igen, köszi a választ!
Viszont én kicsit félregondoltam, a chip nem 5V-os, csak azt is tudna. Maga a konverter az RS232 jelszinteket tudja, tehát ehhez kell még egy TTL-RS232 átalakító is.
Lehet az alaplapi célszerűbb lesz akkor már.
Vagy USB-s?
(#) zombee válasza gordonfreemN hozzászólására (») Márc 21, 2012 /
 
Az alaplapi mindig célszerűbb, ha rendelkezésre áll, különben képbe jön az USB-s ami semmivel sem jobb.
Az alaplapi pl. azért jobb amiért rosszabb: nem kapcsol szét...

Igen, RS-232-re mindig kell szintkonverter(MAX232) is, akár USB-s átalakítóról tolod akár PC-ről.
Egy USB-átalakítóban lehet hogy ki tudod venni a TTL-jelet is ha belenyúlsz; sokszor max232-t tesznek bele.
(#) gordonfreemN válasza zombee hozzászólására (») Márc 21, 2012 /
 
Idézet:
„Igen, RS-232-re mindig kell szintkonverter(MAX232) is, akár USB-s átalakítóról tolod akár PC-ről.”


Ez nekem egy kicsit kesze-kusza, de kb értem.
Úgy értetted, hogy TTL-hez mindig kell konverter, akár PC-ról direktbe (USB,RS232) akár USB-s RS232-ről?
Ezt a szinteltolást mindig max232-vel oldják meg? Vagy van alternatíva?
(#) icserny válasza gordonfreemN hozzászólására (») Márc 21, 2012 / 1
 
A kábel, amit belinkeltél, az egy USB-RS232 átalakító. Valójában az ilyen kábelek két részből (többnyire két IC-ből) állnak:

USB-UART protokol konverter (pl. PL2303) és egy
TTL - RS232 szintillesztő. Ennek a jele nem köthető közvetlenül a mikrovezérlőhöz. Nemcsak a jelszinttel van baj, hanem azzal is, hogy az RS232 jelszabvány szerint a jel +/-12V (vagy valamivel kisebb érték, de mindenképp pozitív és negatív) között ugrál, a nulla környéke tiltott sáv... Ezért kell a mikrovezérlő oldalán a max232 vagy hasonló funkciójú, de más gyártmányú szintillesztő.

Van, persze, más út is, hiszen léteznek USB-UART protokol konverterek, amelyekben nincs RS232 szintillesztő, hanem TTL jelszinttel dolgoznak. Ezek között található 5 V-os, 3,3 V-os és átkapcsolható (vagy 5V toleráns) is.
Bővebben: Link
(#) gordonfreemN válasza icserny hozzászólására (») Márc 21, 2012 /
 
ADM213 chip van még rajta.
Ebből még lehet valami, nem? megnéztem az adatlapját. Így lehetne egy usb to TTL átalakítóm?
(#) icserny válasza gordonfreemN hozzászólására (») Márc 21, 2012 /
 
Idézet:
„ADM213 chip van még rajta.”
Ez a szintátalakító és a szintátalakító számára igényelt +/-10 V-ot előállító DC-DC konvertereket tartalmazó áramkör.

Idézet:
„Így lehetne egy usb to TTL átalakítóm?”
Igen, csak a PL2303 (vagy mi van benne?) RX bemenetét le kell választani az ADM123-ról (ha közbe lehet iktatni egy 1 kOhm-os elenállást, akkor a TTL és RS-232 mód is életképes.

A mikrovezérlő UART TX kimenete és az ADM123 megfelelő kimenete ugyanis nem köthetők össze direktben (mi van, ha az egyik le, a másik meg föl húzná ugyanazt a a bemenetet?)!

Egyébként nem biztos, hogy megéri a kínlódást, hiszen USB-TTL átalakítók fillérekért (na jó, 2-4 USD) rendelhetők az E-bay kínálatából.
(#) gordonfreemN válasza icserny hozzászólására (») Márc 21, 2012 /
 
Igen, PL2303 van benne, ez az UART mikrovezerlo, es az ADM213 a szintkonverter.
Viszont nem teljesen tiszta, hogy ha ellenallast teszek a PL2303 RX bemenete es a szintkonverteren levo masik vege koze, akkor hogyan marad eletkepes mindketto?
Hogy ezutan, hogy jon ide a PL0323 uart tx kimenete, vegkepp nem ertem. De nyilvan azert, mert kb ma kezdtem el okositani magam errol a kommunikacios retegrol.
Szoval a lenyeg, nem kell nekem rs232, legyen belole egy jol hasznalhato USB-TTL konverter, tudjak vele majd a kesobbiekben AVR-t, es PIC-et programozni.
Ehhez akkot az rx bemenetet el kell valasztani a szintkonvertertol? Illetve a kivezeteseket hogyan kotom be? Vagy hogyan tudok erre csatlakozni majd a programozoval?
Meglesem a blokkvazlatot a szintkonverterrol, es a megfelelo TTL/CMOS ki/bemenetekre rakotok?
Az eredeti driverrel hasznalhtao marad az atalakitas utan?
(#) icserny válasza gordonfreemN hozzászólására (») Márc 21, 2012 / 1
 
Idézet:
„legyen belole egy jol hasznalhato USB-TTL konverter, tudjak vele majd a kesobbiekben AVR-t, es PIC-et programozni.”

Ezzel nem fogsz PIC mikrovezérlőt programozni, csak kommunikálni, vagy - ha a PIC-be bootloadert égetett valaki előtte - akkor esetleg annak segítségével lehet programot betölteni (ami tuladonképpen ugyancsak kommunikáció).

Idézet:
„ha ellenallast teszek a PL2303 RX bemenete es a szintkonverteren levo masik vege koze, akkor hogyan marad eletkepes mindketto?”
Nyilván nem egyidejűleg, hanem vagylagosan. De ha nem érted, akkor inkább felejtsük el! A lényeg az, hogy a PL2303 RX bemenetéről le kell választani a szintkonvertert, mielőtt mikrovezérlőt csatlakoztatnál oda. Adatlapot, kapcsolási rajzot a Prolific honlaoján keress.
Idézet:
„Az eredeti driverrel hasznalhtao marad az atalakitas utan?”
Természetesen.
(#) gordonfreemN válasza icserny hozzászólására (») Márc 21, 2012 /
 
Koszi a segitseget!
A programozas nyilvan rossz kifejezes volt, a kommunikaciora gondoltam, tehat kozvetlenul az tuti, hogy nem ezzel programozok...
(#) icserny válasza gordonfreemN hozzászólására (») Márc 21, 2012 /
 
Idézet:
„A programozas nyilvan rossz kifejezes volt, a kommunikaciora gondoltam”
OK, rendben.

Van mégegy buktató, tehát mielőtt belemerülnél a dologba, ellenőrizd, hogy a VDD_325 lábon (SSOP28 tokozás esetén ez a 4-es láb) mekkor a feszültség van! Ha 3,3 V. akkor a TXD (1. láb) jelszintje kevés lesz egy 5 V-os mikrovezérlő CMOS bemenetének meghajtásához!

Magyarázat: A VDD_325-ös lábra kötött feszültség szabja meg az RS232 szintillesztőre menő jelek jelszintjét. Volt már, aki 5 V-ot kötött ide, de az adatlap nem biztat erre (aszerint 3,3 V a maximum).

PL2303HX adatlap
(#) gordonfreemN válasza icserny hozzászólására (») Márc 23, 2012 /
 
Szia!
Vagyok olyan "szerencsétlen" és melóba kaptam két max232-t. Így mit ajánlasz, hogyan csináljam?
Részemről mindegy, hogy soros porton vagy USB-n programoznék majd. Talán amelyik kevesebb alkatrésszel jár, hacsak nincs kompatibilitási probléma (arra gondolok, hogy soroson esetleg az AVR égetők jobban futnak)
Következő: »»   11 / 25
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