Hallo, habe einen Atmel AT89C51SND1C, den ich über den integrierten Bootloader beschreiben will. Beim Anstecken an den PC meldet dieser "USB-Gerät wurde nicht erkannt". In den USB-Datenleitungen habe ich 27Ohm Widerstände, zusätzlich an D+ noch einen 1,5kOhm an VDD. RST über 10µF und 1k an VDD. ISP über 2k2 auf VSS, jedoch fallen über dem Widerstand 0,7 Volt ab?!? Kann da was nicht stimmen? Den Quarz habe ich heute gecheckt, der schwingt. Soll an ALE auch ein Signal rauskommen (steht auf VDD)? Wollte das ganze dann mit Atmel's FLIP flashen, doch das fordert mich jedesmal auf die USB-Driver zu installieren. Habe ich jetzt schon zum hundertsten Mal. (WinXP) Noch was Grundlegendes: Der AT89C51SND1C hat zwei runde Markierungen auf seinem Package. Eine kleine und eine etwas größere. Habe die kleinere als Orientierung genommen - nicht dass der IC falsch herum aufsitzt. Müsste aber richtig sein, da hier auch eine kleine Fase an der Ecke ist?!? Wo könnte das Problem noch liegen? Was hat es mit dem Spannungsabfall an ISP zu tun? Wäre Schade um die Hardware! Danke, Gruß Alex
Hi, die kleine Phase ist Pin 1, guck bitte im Datenblatt, da steht es genauer beschrieben. Ich möchte auch etwas mit diesem µC basteln, leider hab ich bis jetzt noch keinen SMD-Adapter bekommen. Daher kann ich dir jetzt so auf die Schnelle nur mal anraten, nach FLIP 1.8.8 zu suchen, die neue 2er Version tat bei mir im Demomode auch nicht, hat auch nur gemeckert wegen den Treibern. Die 1.8.8 hat aber auch im Demomode funktioniert. Bist du überhaupt sicher, dass du den USB-Bootloader verwendest? Nicht dass du einen Chip bekommen hast, der den Seriell-Bootloader verwendet. Gruß Ralf
Hallo Ralf, mach mich nicht schwach. Woran erkenne ich das? Auf dem IC steht drauf: 89C51SND1C-IL 0248 A01721. Habe mal bei meiner Bezugsquelle nachgefragt, vielleicht wissen sie es? Im Datenblatt steht drin, dass der ISP-Pin auf GND gezogen werden soll, um in den Bootloader zu springen. Bin davon ausgegangen, dass dann alles problemlos funktioniert ;-( Warte mal die Antwort ab... Grüssle Alex
Hi Alex, ich glaub, über die Beschriftung bekommt man es nicht raus. Probier es erstmal mit einer funktionierenden Version vom FLIP. Wenn das nicht klappt, check die Schaltung. Wenns das auch nicht ist, häng einen MAX232 dran und probier mal, ob sich auf die Art ein Bootloader meldet. Du bist noch in der Anfangsphase des Projekts, oder? Gruß Ralf
Achja, versuch auch mal, den ISP-Pin direkt auf GND zu legen und nicht über den Widerstand zu gehen. Vielleicht liegts daran. Und warum ist in deiner Reset-Schaltung ein 1k Widerstand? Der µC hat einen internen Pull-Down-Widerstand, so dass du nur einen Kondensator brauchst. Besser wäre ein Reset-IC. Und den /TST-Pin hast du hoffentlich auf High gelegt? Gruß Ralf
Und noch eins: Ich nehme an, dass du den ISP auf Low ziehst und dann auch den Reset machst, oder? Ich frag nur, weil ich das bei einem anderen Projekt mal selbst übersehen hab. Gruß Ralf
Hallo Ralf, danke für die tolle Unterstützung. Bin grad mit dem Hardwareteil fertig geworden und wollte mich jetzt der Programmierung widmen. Den Schaltplan habe ich beigefügt. Dürfte doch so alles stimmen. Meinst du der Controller meldet sich dann richtig, wenn das alte FLIP installiert ist? Also wenn die richtigen *.inf & *.sys in den Systemordner von Windows eingebunden sind? Gruß Alex
Hi Alex, sorry, aber aus dem Schaltplan wird ja keiner aus dem Ersteller schlau!!! Wie gesagt, ich kann nicht bestätigen, dass es mit dem alten FLIP wirklich tut, da mir ja noch die HW fehlt. Aber die alte Version brachte keine Fehlermeldungen bezüglich der Treiber!!! Gruß Ralf
Ja, sorry war auf die Schnelle rausgedruckt und etwas undokumentiert. Hab mal jetzt alles beschriftet - jetzt dürfte es ersichtlicher sein. Der Distributor weiß im Übrigen auch nicht was für ein Bootloader drin ist. Wird noch ein paar Tage gehen bis ich hierzu genauere Infos bekomme. Ich probier jetzt halt mal das "alte" FLIP aus. Gibt es eigentlich Alternativen zu FLIP? Was soll am ALE-Pin anliegen? Gruß Alex P.S. Den Verlauf des Projektes kann man hier nachschauen www.atscheernst.de
Hi Alex, - Ich empfehle unbedingt 100nF Kondensatoren an den Versorgungspins aller ICs. - Alternativen zu Flip kenne ich leider keine. - ALE ist ein AUSGANG! Gruß Ralf
Hallo, hast Du da 'nen 20MHz Quarz dran? Soweit ich weiß werden 16 MHz benötigt, vermutlich stimmt deshalb das Timing für den USB nicht. Gruß Michael
@Ralf Leider nicht. Habe auch UART ausprobiert - keine Regung. Werde jetzt mal abwarten, was meine Bezugsquelle in seiner Charge für'n Bootloader drin hat. Falls es tatsächlich USB ist, weiß ich auch nicht weiter! Mit dem ALE-Pin wollte ich feststellen, ob mein Controller überhaupt anläuft, falls an dem Pin was rauskommen sollte - der Quarz schwingt ja. @Michael nun ja, könnte ne Möglichkeit sein, aber im Datenblatt steht nicht drin, dass es mit 20 MHz nicht gehen sollte. Der Takt für den USB kommt von einem PLL. Dem dürfte das egal sein (bin mir aber auch nicht sicher...). Hast du eventuell damit auch Probleme gehabt? Weißt du was genaueres? @alle und bei den Anderen hat das auf Anhieb geklappt? µC genommen, mit USB vertüddelt und der hat sich brav unter Windows gemeldet? Gruß Alex
Hi, bei mir hat das auch auf anhieb funktioniert. Ich benute den snd1 mit einem 20MHz Quarz. Ich habe jedoch den pull up widerstand fuer die D+ Leitung erst nach den 22Ohm serienwiderstaenden angebracht. Solange windows den snd1 ncht als usb geraet erkennt und auch keinen treiber haben will kann es nciht am flip liegen. Gruß Tobias
Hi Alex, für gewöhnlich kommt am ALE ein Rechteck mit einer konstanten Frequenz (man kann es beim SND1 auch abschalten, aber wie es bei ISP-Betrieb aussieht, weiss ich leider nicht). Der Tip mit dem Widerstand von Tobias hört sich auch gut an als Ansatzpunkt. Vielleicht kannst du auf die Art herausfinden, ob blos FLIP nicht will, oder es an etwas anderem liegt. Gruß Ralf
Wenn's an dem Pullup liegen sollte! Kann ja dann nur mir passieren ;-( Ich löte ihn mal raus und probier es mal aus. @Tobi Hast du meinen Schaltplan gesehen? Musst ja, wenn du das mit dem Pullup entdeckt hast. Stimmt der Rest? Der Pullup geht bei mir auf 3,3V. Ist das so richtig oder sollte ich ihn auf 5V ziehen? @Ralf Wußte ich doch, dass da was bestimmtes rauskommen sollte. Im Augenblick messe ich dort allerdings "High".
Hi, ich kann eigendlich auser bei dem usb pullup keine großen schnitzer in deinem schaltplan entdecken. Ich habe aber fuer den usb 28 statt 22 ohm serienwiderstanende benuzt. Das duerfte aber eigendlich kein problem darstellen. Aber villeicht bekommt der controller von deiner rc kombination am reset pin(du solltest da im schaltplan mal das negationszeichen wegnehmen. Das hat mich gerade sehr iritiert) keinen guten reset. schalte mal die spannung an der schaltung mit ausgestecktem usb an, gib dem mc ueber einen kleinen draht zu vdd einen manuellen rest und steck dann mal das usb ein. Gruß Tobias
Guten Morgen, den Pullup habe ich mal rausgelötet. Jetzt habe ich keine Regung von Windows. Nicht einmal, dass ein "USB-Gerät nicht funktioniert". So langsam beschleicht mich das Gefühl, dass der Controller einen Schuß hat. Jedoch warte ich noch auf das Ergebnis von meiner Bezugsquelle ab, was für eine Art Bootloader er findet. @Tobi Kannst du mal schaun, was du am ALE-Pin misst? Habe da konstant 3,3V. Allerdings habe ich an allen Portpins Highlevel. Das heißt aber auch, dass der Controller seinen Resetalgorythmus abgeschlossen haben muss?!? Alex
Hi Alex, nicht unbedingt abgeschlossen, die Ports gehen schon in High-Zustand, sobald der Resetpegel anliegt!!! Möglicherweise hast du einfach am Reseteingang ein Problem. Kann es das vielleicht sein? Gruß Ralf
Bin jetzt auf grad fleißig dran rumzumessen. Jetzt habe ich folgendes festgestellt: 1. am Kondensator messe ich null Spannungsabfall 2. den RST lege ich nun auf Masse (mit einem Stückchen Draht). Dadurch müsste sich der Kondensator richtig aufladen (3,3V - Überbrücken des Rrst = 90kOhm), aber sobald ich mit der Brücke weggehe wieder null Spannungsabfall - sprich von beiden Seiten habe ich gleiches positives Potenzial. 3. ergo: der FET in der internen RST-Beschaltung ist aktiviert und schaltet ihn intern auf 3,3V und zwar immer (S.48 Datenblatt!) Die Aktivierung des internen RST kommt laut Datenblatt vom Watchdog. Das kann doch nicht stimmen?
Am RST habe ich gegen GND 90kOhm (ist richtig) und gegen VDD 187Ohm (hä?).
Also entweder hat er einen Schuss, oder ... HÄ? Vom internen Watchdog kanns nicht kommen, weil der WD ja erst aktiviert werden muss, was ja wiederum nur nach RESET geht. Hat vielleicht dein Reset CAP einen Macken? Oder tatsächlich Chip im Sterbebett? Gruß Ralf
CAP ist in Ordnung. RST ist jetzt nicht beschalten bzw. liegt frei und führt 3,3V. Das stimmt doch nicht! Der FET nach VDD schaltet durch oder/und der IC ist wirklich damaged. Das ist ja prima ;-(
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.