Hallo Zusammen Ich möchte meine Steuerung auf einem Atmega2560 direkt mit einem USB-Kabel an den PC anstöpseln, anstelle eines Max232 und einem USB/serial-wandler. Es scheint mir eine simple Angelegenheit zu sein, aber zur Sicherheit wärs schön, wenn ihr schnell über die Schaltung gucken könntet :) Vorallem die Wahl der Teile, da habe ich das erst Beste genommen. MCP2200 https://www.reichelt.de/ICs-MCP-1-2-/MCP-2200-I-SS/3/index.html?ACTION=3&LA=446&ARTICLE=109741&GROUPID=5471&artnr=MCP+2200-I%2FSS&SEARCH=mcp2200 ADuM1201AR https://www.reichelt.de/ICs-ADC-ADXRS-/ADUM-1201-AR/3/index.html?ACTION=3&LA=446&ARTICLE=107978&GROUPID=5458&artnr=ADUM+1201+AR&SEARCH=adum). Danke schon im Voraus! Gruss Chrys
Hi, hast du auf der AVR Seite Tx und Rx vertauscht ? Normal müsste ja Tx vom MCP auf Rx vom Atmega gehen. Ein Pullup am Rx auf der AVR Seite währe nicht schlecht. Damit wenn der MCP nicht eingesteckt ist der low Pegel nicht als Startbit erkannt wird. Gruß JackFrost
Den Shield vom USB würde ich über eine Induktivität oder einen Widerstand von 100k oder so anbinden. Über die Schirmung soll ja eigentlich kein Strom fließen, und schon keine HF. fchk
Bastian W. schrieb: > Hi, hast du auf der AVR Seite Tx und Rx vertauscht ? Normal müsste ja Tx > vom MCP auf Rx vom Atmega gehen. Ein Pullup am Rx auf der AVR Seite > währe nicht schlecht Jop, danke. Habe einen Pullup mit 10k reingemacht. Frank K. schrieb: > Den Shield vom USB würde ich über eine Induktivität oder einen > Widerstand von 100k oder so anbinden. Vielen Dank für die Tipps, die vorgeschlagenen Änderungen sind in der Schaltung angepasst. Gruss Chrys
hi, hast du deine schaltung schon fertig und mal getestet, ich würde die gern ineins meiner projekt übernehmen wenn du nix dagegen hast ?
Der MCP2200 hat zwei Ausgänge RXLED und TXLED - an die sollte man LEDs anschließen, das ist bei der Fehlersuche (Sendet mein PC-Programm? Sendet mein AVR?) sehr hilfreich.
Wie sieht denn das mit den Treibern PC-seitig für den MCP aus? Kannte das Teil noch gar nicht. Könnte ne Alternative für den überteuerten FT232 sein...
H.Joachim S. schrieb: > Wie sieht denn das mit den Treibern PC-seitig für den MCP aus? Gibt es, aber nicht aktuell gepflegt - Datum von 2104. > Könnte ne Alternative für den überteuerten FT232 sein... FTDI will ich hier nicht mehr sehen, denen geht das zu gut. Der MCP2200 ist als einfacher Ersatz vermutlich nicht brauchbar, aber interessant, weil er andere Dinge kann. Für einen simplen seriell-to-Usb würde ich eher nach bewährten ICs wie SiliconLabs schauen, aber auch den Chinesen CH340 nicht außer acht lassen.
Der MCP2200 ist ein Programmierter 18Fxxx als Low Pin Count Demo Board gibt es Hardware und das Programm ist ein bisschen Flexibler und der mitgelieferte Treiber läuft Problemlos unter Windows 10. mfg Michael
Manfred schrieb: > aber auch den Chinesen CH340 nicht außer acht lassen. Gibt es abgesehen von dem Kram, den Prolific verbricht, eigentlich irgendwelche USB-Seriell-Bausteine, die noch schlechter dokumentiert sind?
Für mich privat wäre das völlig egal, da kann man auch schon mal bisschen basteln und probieren, um den Treiber wieder ans Laufen zu bringen (Prolific). Bei Kundensachen geht sowas nicht, das muss funktionieren. Auch nach einem Betriebssystem-update. Und da muss ich sagen, dass ich mit FTDI noch nie Probleme hatte, die funktionieren einfach immer.
Rufus Τ. F. schrieb: >> aber auch den Chinesen CH340 > > Gibt es abgesehen von dem Kram, den Prolific verbricht, eigentlich > irgendwelche USB-Seriell-Bausteine, die noch schlechter dokumentiert > sind? Nein!
Manfred schrieb: > H.Joachim S. schrieb: >> Wie sieht denn das mit den Treibern PC-seitig für den MCP aus? > Gibt es, aber nicht aktuell gepflegt - Datum von 2104. Das ist falsch. Dieser Chip nutzt den CDC-ACM-Treiber und den HID-Treiber des jeweiligen Betriebssystems. Er braucht daher gar keine speziellen Treiber. Bis Windows 8.1 brauchst Du nur ein .inf, das Windows sagt, das es seinen eigenen Treiber benutzen soll. Bei Windows 10 und MacOS und Linux/BSD brauchst Du nicht einmal das. Das ist ja der Vorteil bei dem Chip. fchk
Ray M. schrieb: > ich würde die gern ineins meiner projekt übernehmen wenn > du nix dagegen hast ? Mach damit was du willst :) Habs noch nicht getestet, Reichelt ist nicht so schnell...
Der PIC 18F14K50 ist sogar problemlos als DIL20 verfügbar das macht solche Sachen auch gleich noch Lochraster kompatibel. mfg Michael
Guten Morgen Zusammen Ich habe die Schaltung ins Kupfer gebracht. Jetzt habe ich auf der AVR Seite des ADuM's nichts angestöpselt um erstmal zu testen ob der MCP2200 vom PC erkannt wird. Mit Windoof passiert gar nichts und auf Ubuntu kriege ich mit dmesg die Meldung: usb usb1-port4: connect-debounce failed Weis irgend jemand was hier das Problem ist? Danke schon im Voraus Chrys
Im Anhang noch das verwendete Layout... Ich verwende diesen Quarz https://www.reichelt.de/Quarze/12-0000-HC49-SMD/3/index.html?ACTION=3&LA=5700&ARTICLE=72514&GROUPID=3173&artnr=12%2C0000-HC49-SMD Die anderen Teile sind ja schon im ersten Post erwähnt.
Hat sich erledigt, wenn man um die Uhrzeit noch richtig löten könnte... Für die dies interessiert, jetzt siehts so aus: [29485.008028] usb 3-1: new full-speed USB device number 8 using uhci_hcd [29485.216058] usb 3-1: New USB device found, idVendor=04d8, idProduct=00df [29485.216065] usb 3-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3 [29485.216069] usb 3-1: Product: MCP2200 USB Serial Port Emulator [29485.216073] usb 3-1: Manufacturer: Microchip Technology Inc. [29485.216076] usb 3-1: SerialNumber: 0001414376 [29485.225212] hid-generic 0003:04D8:00DF.0004: hiddev0,hidraw3: USB HID v1.11 Device [Microchip Technology Inc. MCP2200 USB Serial Port Emulator] on usb-0000:00:1a.0-1/input2 [29485.341627] cdc_acm 3-1:1.0: ttyACM0: USB ACM device [29485.343216] usbcore: registered new interface driver cdc_acm [29485.343219] cdc_acm: USB Abstract Control Model driver for USB modems and ISDN adapters Gruss Chrys
Hallo Zusammen Das ganze funktioniert wie gesagt schon ziemlich gut :) Jetzt habe ich noch ein Problem: Wenn der MCP mittels USB Kabel am PC angeschlossen ist und ich mit dem Atmega ein Power On oder Off mache, kommt beim PC irgendwas an und es gibt Fehler im GUI... Eigentlich sollte der Ausgang des Adum's (herkommend vom TX des Atmega) auf der MCP Seite high sein, wenn die Atmega Seite nicht mit Strom versorgt wird. Meine Vermutung: Wenn der Atmega ein/aus-schaltet wird das TX kurzzeitig low und der MCP meint etwas erkannt zu haben. Wie kriege ich das weg? Muss ich den Adum auf der Atmega Seite verzögert einschalten und früher als den Atmega ausschalten? Oder gibts noch andere Lösungen? Gruss Chrys
Hallo Zusammen Das Problem ist immer noch da: Chrys schrieb: > Wenn der MCP mittels USB Kabel am PC angeschlossen ist und ich mit dem > Atmega ein Power On oder Off mache... Dann schmiert die Verbindung mit dem PC ab und kurze Zeit später ist sie wieder da... Es ist egal ob RX/TX vom AVR mit dem Adum verbunden sind oder nicht. Ein reines An- oder Ausschalten des Adums (auf der Atmega Seite) verwirrt den MCP offenbar. Die MCP Seite des Adums ist ja die ganze Zeit mit Strom versorgt, solange das USB Kabel eingesteckt ist. Dmesg spuckt das hier raus: ... [19769.685244] hid-generic 0003:04D8:00DF.000B: hiddev0,hidraw3: USB HID v1.11 Device [MCP2200 USB Serial Port Emulator] on usb-0000:00:1a.1-2/input2 ---> bis hier ist alles gut :) ---> hier wird der Adum (auf der Atmega Seite mit Strom versorgt) [19800.220260] usb 4-2: USB disconnect, device number 8 [19800.222238] cdc_acm 4-2:1.0: failed to set dtr/rts ---> kurze Zeit später ist wieder alles OK [19800.492027] usb 4-2: new full-speed USB device number 9 using uhci_hcd [19800.697222] usb 4-2: New USB device found, idVendor=04d8, idProduct=00df [19800.697229] usb 4-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3 [19800.697233] usb 4-2: Product:MCP2200 USB Serial Port Emulator [19800.697236] usb 4-2: Manufacturer: Microchip [19800.697239] usb 4-2: SerialNumber: 0001414376 [19800.700366] cdc_acm 4-2:1.0: ttyACM0: USB ACM device [19800.707387] hid-generic 0003:04D8:00DF.000C: hiddev0,hidraw3: USB HID v1.11 Device [MCP2200 USB Serial Port Emulator] on usb-0000:00:1a.1-2/input2 Kann mir jemand einen Tipp geben, wie ich dies wegkriege? Ich möchte die Atmega Seite so oft an- und ausschalten wie es mir passt, ohne das die Verbindung zum PC beeinträchtigt wird :) Gruss Chrys
Hast Du Dich an die Layoutempfehlungen im Datenblatt des ADuM gehalten? fchk
Frank K. schrieb: > Hast Du Dich an die Layoutempfehlungen im Datenblatt des ADuM gehalten? So viel ich weis, ja. Das Layout ist weiter oben gepostet...
Sollte soweit alles passen... PCB LAYOUT The ADuM120x digital isolators require no external interface circuitry for the logic interfaces. Power supply bypassing is strongly recommended at the input and output supply pins. The capacitor value should be between 0.01 μF and 0.1 μF. The total lead length between both ends of the capacitor and the input power supply pin should not exceed 20 mm.
Du hast ja das ganze Board mit GND geflutet. Das kann nicht gut gehen. Die ADuMs sind dafür gedacht, dass Du links eine Region auf Potential A hast, die an den Pads der linken Reihe des ADum endet. Dann kommt eine Region ohne Kupfer, nur gebrückt durch den ADuM, und dann kommt Region B. Der Pinabstand zwischen beiden Reihen ist je nach Gehäuse 5-7.5mm, und das ist auch der Abstand beider Regionen an JEDER Stelle auf BEIDEN Seiten zu ALLEN Seiten, damit es nicht zu kapazitiver Koppelung kommt. Und wenn Du schon SMD machst, dann richtig. Heißt: auch Kondensatoren und Widerstände in SMD. Damit bekommst Du ein deutlich kompakteres Layout hin, und damit auch ein besseres. Die Drähte an den Bauteilen wirken nämlich wie Induktivitäten. fchk
Hallo, C4 sollte laut Datenblatt mindestens bei Vusb > 0.22 besser 0.47 sein. Das würde ich als erstes mal korrigieren. Gruß Sven
Du hast zwar die 100nF Bypass-Caps für die 5V-Versorgung von dem MCP2200 und dem ADUM gesetzt. Aber bei Lastschwankungen, z.B. wenn der ADUM während des Ein/Ausschaltens viele "Müll"-Bits überträgt, könnte die Versorungsspannung knapp werden. Pack mal zusätzlich noch 10µF auf diese 5V-Schiene, das könnte dagegen helfen. Wenn Du Dir die AN-1109 von Analog anschaust, dann machen die das dort auch so.
Erstmal vielen Dank für die Hinweise!! Sven K. schrieb: > C4 sollte laut Datenblatt mindestens bei Vusb > 0.22 besser 0.47 sein. > Das würde ich als erstes mal korrigieren. Gerd E. schrieb: > Pack mal zusätzlich noch 10µF auf diese 5V-Schiene, das könnte dagegen > helfen. Hat leider beides nichts gebracht, immer noch das Selbe verhalten. Frank K. schrieb: > Der Pinabstand zwischen beiden Reihen ist je nach Gehäuse 5-7.5mm, und > das ist auch der Abstand beider Regionen an JEDER Stelle auf BEIDEN > Seiten zu ALLEN Seiten, damit es nicht zu kapazitiver Koppelung kommt. Werde es mir beim nächsten Versuch beherzigen, aber dies sollte ja jetzt nicht der Grund sein wieso der MCP abschmiert... Bin froh für alles, was helfen könnte... Gruss Chrys
Gerd E. schrieb: > könnte die > Versorungsspannung knapp werden. Hab diese eben mal mit dem Oszi nachgemessen, ist stabil wie ein Betonfundament... Wo könnte ich noch was messen? Gruss
Wie schaltest du den Atmega ab ? Ziehst du den Stecker , oder schaltest du das Netzteil aus ? Ich hab hier ein altes NEtzteil mit nem einfachen Trafo und wenn ich das ausschalte reconnected mein Board mit dem FT232RL auch fast immer. Wenn das JTAGICE MK3 angeschlossen ist dann passiert nichts. Das selbe passiert wenn im Stall die Motoren für die Fütterung schalten. Was ich mit dem Oszi messen konnte, war das zischen GND und Schirm die Spannung schwankt wenn ich das Netzteil ausschalte. D+ und D- hab ich nicht gemessen ob da ggf. die Kommunikation ein Problem hat. Das du das mal gemessen wie D+ und D- aussehen wenn du den Atmega ausschaltest ? Bei dem aktuellen Layout mit einem xMegaA3U hab ich TVS Dioden auf den Datenleitungen für USB, ich hab aber noch nicht getestet ob das Netzteil hier auch stört. Gruß JackFrost
Vielleicht ein EMV-Problem? Mit was für einem Netzteil speist Du denn die AVR-Seite Deines Adums? Wie trennst/verbindest Du diese Versorgung wenn es zu dem Problem kommt? Abschalten des gesamten Netzteils oder stecken/ziehen eines Kabels? Ändert sich etwas wenn Du dort ein anderes Netzteil nimmst? Ansonsten schau Dir mal die Leitung zum RX-Pin des MCP während des Einschaltens/Ausschaltens auf dem Oszi an, Single Trigger. Was passiert da?
Bastian W. schrieb: > Wie schaltest du den Atmega ab ? Ziehst du den Stecker , oder schaltest > du das Netzteil aus ? Gerd E. schrieb: > Mit was für einem Netzteil speist Du denn die AVR-Seite Deines Adums? > > Wie trennst/verbindest Du diese Versorgung wenn es zu dem Problem kommt? > Abschalten des gesamten Netzteils oder stecken/ziehen eines Kabels? Ein Labornetzgerät, bei welchem ich den ON/OFF Knopf bediene. Wenn ich nur den Stecker ziehe passiert es nicht...
uncool, wollte mich gerade mit einem Schalter in der + Leitung abfinden aber ich muss auch GND abhängen, damit ich dann das Netzteil schalten kann... Auf jedenfall vielen Dank für die Hilfe bis hierhin, manchmal denke ich schon nicht über die Nasenspitze hinaus...!! Die Spannungsversorgung für den Atmega ist ein TS7805 mit je einem 100uF elko und je einem 100nF keramik kondensator auf der Ein- und Ausgangsseite. Was könnte ich da noch ändern, um es immuner zu machen? Gruss Chrys
Manfred schrieb: > Der MCP2200 ist als einfacher Ersatz vermutlich nicht brauchbar, aber > interessant, weil er andere Dinge kann. Der Treiber vom MCP2200 unterstützt auch MCP2221A. "Version 1.3 (Released 10/09/2014): - Updated tool to include the new MCP2200/MCP2221 driver version (v1.4)." http://www.microchip.com/wwwproducts/en/MCP2221A http://ww1.microchip.com/downloads/en/DeviceDoc/20005565B.pdf Die Schaltung passt zum Upgrade, womit wir auch noch eine Schnittstelle zu I2C/SMBus erhalten. Welche andere Dinge hat Manfred gemeint? GPIO's? Einfachen DAC/ADC vom USB2.0 aus?
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.