Fórum témák
» Több friss téma |
most látom, hogy a DTR kivezetés el van választva a földtől, mondjuk a chip adatlapja alapján is ez a logikus. Elnézést a figyelmetlenségért.
Sziasztok!
USB -> UART átalakítást szeretnék (soros port emulációval), hogy egy AVR, mely belső U(S)ART-tal rendelkezik, képes legyen a PC-vel kommunikálni. Terveim szerint az MCP2200 IC-t választanám a feladatra. Ehhez kérnék egy kis tanácsot. Az adatlapja szerint 12 MHz kvarc kell rá. Erre mekkora kondikat kell tenni? Továbbá ír egy soros ellenállást, melyre lehet, hogy szükség lehet... mikor és mekkora legyen? A másik kérdésem az, hogy ha az AVR-t én 3V és 3,5V között szeretném üzemeltetni, akkor mit tegyek? A PC USB tápvezetékeit leoszthatom, vagy zenerezhetem, viszont az RX-TX gondot okozhat. Mi itt a legértelmesebb megoldás? Előre is köszönöm a válaszokat! Üdv: Jack
Ugyanaz vonatkozik rá, mint a PIC18F14K50-re. Én lustaságból minden frekvenciára 22 pF-es kondenzátort használok, és eddig mindig jó volt. (Talán 15 pF a hivatalosan ajánlott, de ez a kristálytól függ)
Az ellenállásokat (soros és/vagy párhuzamos) első körben felejtsük el. Ha 3,3 V-os feszültségen üzemelő mikrovezérlőhöz csatlakozol, akkor legegyszerűbb az MCP2200-at is 3,3 V-ról járatni, s akkor nincs gond az Rx/Tx jelszintek illesztésével. Az USB D+/D- adatvezetékek egyébként mindig 3,3 V-os jelszinttel mennek: akkor is, ha az MCP2200 5 V-ról megy és akkor is, ha 3,3 V-os tápfeszültségről. (például LM 1117IMP-3.3) Zener helyett én egy LDO (kis feszültségesésű) 3,3 V-os stabilizátort ajánlok a 3,3 V előállítására.
Szia!
Köszönöm a gyors választ! Tehát akkor 15-22 pF legyen mind a két kondi, és ellenállás nem kell. A feszültségekkel kapcsolatban egy kis rendbetételre lenne még szükségem. A PDF 2. oldalán lévő blockdiagramot nézem. VSS - föld - az USB vezeték földje VDD - az USB vezeték tápja, +5V, de a block diagram alapján van beépített 3.3V LDO VUSB - ide ne kössek semmit, csak ez és a föld közé tegyek 100 nF kerámiát. Az RX és a TX így 3.3V-os lesz, magának az AVR-nek pedig az USB 5V-ját stabilizálhatom 3.3V-ra, és jó is vagyok. Jól értettem meg a dolgokat?
Idézet: Nem teljesen: „Jól értettem meg a dolgokat?” Ha 3,3 V-os jelszintekkel akarsz dolgozni, akkor az MCP2200 VDD bemenetére is 3,3 V-ot kell kötni! VDD és VSS lábai közé kell 100 nF-ot kötni. VUSB és VSS közé pedig 470 nF-ot köss.
Okés, én a rajzon látható 3.3V LDO miatt gondoltam, hogy akkor mindegy, mit kötök oda, úgyis 3.3V lesz.
A 470 nF honnan jött? Nyilván elhiszem, csak érdekelne a miértje.
Hello!
A 470nF-os kondi az lényegében az MCP2200 belső 3.3V-os feszültséggenerátor pufferkondija, ezen a feszültségen kommunikál az USB adatvezetékeken(D+ és D-). Mivel pufferkondi, kevésbé érzékeny a változtatásra. Nálam 220nF-2.2µF között bármivel ment, a 470nF a gyári ajánlás, elvileg ezen a legstabilabb. Erről nem szabad külső eszközt(pl. AVR) járatni mert instabillá teheti az USB-kapcsolatot. Persze kísérletezni lehet!
Köszönöm a választ!
Nem is szerettem volna a VUSB-ről, vagy akár a VDD-ről mást meghajtani, az AVR-t az USB +5V-os tápjáról hajtanám, 3.3V-ra stabilizálva. Köszi az infókat, beszerzem az IC-t, és nekiállok próbálkozni. Egyébként valami tutorialt nem tudtok hozzá esetleg? Majd keresek, ha nem, csak hátha "van a polcon"?
A beépített LDO-ra gondolsz? Az csak az USB interfész tápellátására szolgál, semmi másra.
Van tutorial a microchip oldalán. Leírások, meg egy konkrét kapcsolási rajz.
Szia!
Nem igazán találtam meg az általad említett tutorialt, illetve lehet, hogy megtaláltam, csak nem azt mutatja, ami nekem kell. Amivel kapcsolatban kérdésem lenne még, az az RTS és CTS használata. Az oké, hogy az AVR és a MCP2200 RX-TX lábát keresztben összekötöm, az RTS, CTS-t szintén összekötöm az AVR-en egy-egy tetszőleges lábbal, de nem tudom pontosan, hogy kéne ezeket használni.
Ezt a fórumot megtekintve úgy látom, hogy nincs sok értelme az RTS/CTS lábbal való szerencsétlenkedésnek. Pont arra nem jó, amire használni kellene...
Hát ez zseniális... mindegy, egy gonddal kevesebb.
![]() Akkor egyszerűen hagyhatom lebegni az RTS és CTS lábakat, ugye?
Igen, hagyhatod. Alaphelyzetben, úgy tudom, az MCP2200 RTS/CTS funkciója nincs is engedélyezve.
Kedves Urak
Szeretnék kicsit kisérletezni egy seagate hdd firmware fix el. mindenhol azt irja, hogy ttl csatlakozás kell neki. a kérdés a következő külön adapterre lenne szükségem vagy tudnám használni az alapom serial portját is? nellékelve a lap hátulja. Esetleg valakinek valami jó ötlete. http://www.youtube.com/watch?v=Yg-yVfD55tY hasonlót szeretnék véghezvinni.
Sziasztok
A HeStore oldalán találtam ezt az USB kit-et Bővebben: Link Jól értelmezem, hogy erre már rá van építve a soros portra illesztett chip is? Tehát teljes értékű USB rs232 cucc?
Igen, jól értelmezted. Egyébként a user's manual ott van a HEStore oldalán, érdemes megnézegetni egy picit.
Mit értesz teljes értékűn? Kommunikációra igen.
Nagyszerű. Riasztókhoz kellene, ugyanis a PL2303 chipes USB-rs232 nem minden esetben használható. Pl. újabb DSC központokhoz használhatatlan, mert a központ állandóan változtatja az adatsebességet (csak tudnám miért) és a PL2303 chipes átalakítók jó része nem tudja követni. Remélem ebben az FT232 jobb lesz.
Ez a panel ráadásul fejleszthető, így elég sok TTL rendszerű kommunikációs porthoz is tudnám illeszteni. A DSC forgalmazó egy Moxa Uport 1110 USB-rs232-t ajánlott hozzá, de ennek beszerzése eléggé nehézkes. (ebben viszont nem tudom, milyen chip dolgozik)
Csak bele kell nézni a PDF-be és látszik is. Egy kicsit el van rejtve a legalsó pár oldalon a kapcsolási rajz, szerintem mindent elárul: RS-232 szintillesztő IC(nem MAX232), az összes kimenet be van kötve.
Ha csak Rx/Tx/RTS/CTS kell akkor jóval olcsóbb megoldások is léteznek.
Megnéztem. Tökéletesnek tűnik. Van, ahol kell szinte az összes kivezetése az RS232-nek. Van, amelyiknek elég az RX-TX, és van olyan, ahol TTL szint kell, és 5V táplálás.
Egy kérdés viszont felmerült. TTL szintnél kell szintillesztő az FT232 kimenetről, vagy a kimenetei már közvetlenül is alkalmasak a TTL meghajtásra?
TTL esetében nem kell semmilyen szintillesztő, azon a feszültségen(5V) megy az FTDI is.
Egyébként én gyártogatok TTL jelszinten dolgozó Rx-Tx modulokat MCP2200 IC-vel szerelve, 1600Ft-ért árulgatom, van ahol egy FT-232 IC-t önmagában nem adnak ennyiért. A modulon természetesen az MCP2200 teljes környezete megtalálható, csak rá kell kötni az USB-re, amásik oldalon a cél IC-re(AVR, PIC, GSM modul, stb.). Az egész panel kb. 22x10mm, mindkét oldalán 4-4 tű, az USB oldalon VCC/D-/D+/GND a másik oldalon VCC/Rx/Tx/GND. Sebesség szempontjából 115kbps-en garantáltan hibátlan, de működik 230kbps-en is. Lassúbb rendszereknél a 9600bps is tökéletesen megy vele. A sebességet a PC program állítja be amikor a portot megnyitja. Windows/Linux/Mac is támogatja. 5V-os TTL jelszintekkel megy, de gond nélkül szóbaáll 3.3V-os rendszerekkel is, mivel a leválasztó ellenállások már be vannak építve. Sajnos csak Rx/Tx-et tud, de a legtöbb mikrokontrolleres alkalmazáshoz ez bőven elég. Csatolok egy képet. Ez a gyári STK500 egy utánépített változata, teljesen kompatíbilis vele, frissíthető AVR Studio-ból, tud HVPP/HVSP-t is. Látható, hogy az interfész USB, amiről a piciny Rx-Tx modul gondosodik.
Építésre szánom magam, kell csinálnom egy univerzális USB-RS232 kábelt. Kell a TTL kimenet is, és kell az RS232 szint kimenet is.
A választott modul ez lenne: UM232R Bővebben: Link Ez megoldaná a TTL kimeneteket. A kérdés a következő: Mivel szükség lesz a normál RS232 csatlakozás összes kivezetésére is, a szintillesztéshez MAX232 IC-t gondoltam 3db-ot. (ez szerezhető be a Store-ban jelenleg) Jobb lenne a MAX213, de nem beszerezhető sajnos. Megoldható, így, vagy más megoldást keressek?
Szerintem olcsóbb készen. TTL kábelnek az FTDI kábel (Bővebben: Link) a SOSElectronic-nál és a Farnellnél is kapható. Én az E-bay kínálatában található Ca-42 vagy telefoncsatlakozó nélküli PL-2303 kábelt választanám.
Jó tapasztalataim vannak a CP2102 modulokkal is (Bővebben: Link2) Persze, ha neked a 9 tüske kevés, akkor ez utóbbi nem járható út. Az USB-RS232 átalakítók kínálata is bőséges: Bővebben: Link2
PL2303 kilőve, van rendszer, ami nagyon nem szereti, FT232-vel simán kommunikál, PL2303-al nem. Kösz a linkeket, de nincs lehetőségem külföldről beszerezni, ill. rendelni, így marad a magyar beszerzés. Pl soselektr. vagy a HEStore. Az FT azért is szimpatikus, mert nincs driver gondom vele, és eddig, amit ezzel a chipkészlettel programoztam, az mind jól működött. A PL2303 sajnos egyes riasztóknál nem működik, PL új DSC központok.
Az univerzális kivitel is fontos, mert így csak különböző kis csatlakozó fejek kellenek és egy kábel, nem pedig egy szatyor drót. Persze, hogy olcsóbb a kész kábel, de nem fedi le teljesen az igényeimet. Most is kész kábel rengeteg van, ettől akarok megszabadulni.
Ha az RI(Ring Indicator) mégse kell akkor elég 2 darab MAX-232 IC is. A kábelek olcsók, de ha a TTL is kell
meg az RS-232 egyazon eszközön, akkor meg kell oldani hogy a MAX IC-t(vagy épp ami lóg rajta) ki lehessen iktatni, mert van 5 (RI nélkül 4) vonal ahol a modem az adó, így az illesztő IC is meghajtja. A másik 3 vonal(PC-től jövők) esetében nincs ilyen probléma ha az FTDI meghajtja a MAC IC-t is... A másik megoldás, ha egy FTDI-vel szerelt RS-232 kábelt használsz, amire opcionálisan ráköthetsz egy szintillesztő sort(pl. MAX IC-kkel) és akkor is csak egyetlen kábeled és egy adaptered lesz.
PL2303-mal nekem is vannak rosszirányú tapasztalataim sajnos.
![]()
Az a megoldás jó, hogy külön kivezetem a TTL tüskesort is, és külön az RS tüskesort? Egyszerre nem lesz használva, vagy TTL232, vagy RS232. TTL esetén maradhat a vonalon a nem használt MAX232, vagy muszáj leválasztani?
Természetesen az is jó megoldás, hogy veszek gyári FT232-213 chipekkel szerelt kábelt, és erre építek külön TTL illesztőt, de egy kicsit faramuci, hogy ott egy TTL kimenet, amit RS vonalra illesztek, majd újra TTL... Az RI eddig nem kellett sehol szerencsére.
Ahogy említettem, a szintillesztő belerondít a kommunikációba, így TTL esetében muszáj leválasztani.
Most faramuci ide vagy oda, a legegyszerűbb mégis egy gyári RS-232 kimenetes és egy külső, RS-232-->TTL átlakító még akkor is ha egyszer oda majd vissza kell alakítani. Az egyetlen átalakítás amit eszközölnék a gyári kábelen, hogy a tápfeszt kivezetem, így az újabb illesztő táplálása megoldott. A saját kedvenc példám egy porttükröző volt, amire bement egy RS-232 és egy USB a gépről, kifelé pedig szintén egy RS-232. Lényege a dolognak, hogy a gép az USB-n emulált és a natúr COM porton is megkapja azt amit a kliens ad, és bármelyik küld ki adatot, azt a kliens(és csak a kliens) kapja meg. Mit gondolsz miként oldottam meg a logikát? Természetesen a TTL oldalon, tranzisztorokkal+ellenállásokkal! A táplálás természetesen a beépített USB miatt meg is volt oldva, és csak RX/TX jelek kellettek mindenhova... |
Bejelentkezés
Hirdetés |