Hallo Leute Habe mir gerade das Datenblatt des PIC18F2550 reingezogen. Gibt es eine Möglichkeit nur AN1 auf Analog zu setzen und alle anderen ANX auf digital? mfg Drigo
>Gibt es eine Möglichkeit nur AN1 auf Analog zu setzen und alle >anderen ANX auf digital? Nein, geht laut Tabelle im Datenblatt nicht. Nimm doch einfach AN0 statt AN1.
Das Problem ist, das ich mich beim Design verhaut habe. Jetzt sind 1000 Platinen fertig. ---> Shit
Ganz schön fahrlässig, ohne fundierte Kenntnisse des verwendeten µCs direkt so ein großes Los fertigen zu lassen. Zu knauserig um in einen Prototypen zu investieren? Dann musst Du jetzt wohl mit einem 1-Bit-A/D-Wandler an AN1 auskommen...
Wird mir wohl nix anderes übrigbleiben. Habe seit langem nur mit externen ADC's gearbeitet, und war fix in der Annahme, das jeder ADC getrennt (ADCON1) als I/O oder ADC Eingang zu schalten ist. -> Mein Fehler
Drigo schrieb: > Habe mir gerade das Datenblatt des PIC18F2550 reingezogen. Das sollte man eigentlich machen, bevor der Schaltplan erstellt wird. Allerdings hätte ich vom AVR ausgehend auch als selbstverständlich vorausgestzt, daß sich sämtliche IOs unabhängig voneinander konfigurieren lassen. Der PIC ist halt immer gerne mal für ne Überraschung gut. Daher sollte man besonders gründlich ins Datenblatt schauen. Peter
Falls Du nicht auf USB angewiesen bist könntest Du schauen, ob Du einen (größtenteils) pinkompatiblen PIC24 findest. Dort sind die A/D-Eingänge getrennt wählbar. Anderer Vorschlag: Was hängt an dem AN0-Pin? Ist es für die Anwendung schlimm, wenn Du AN0 zum Messen immer mal kurz auch auf Analog umschaltest?
moin, IMHO hat der PIC18 25K20 das Problem nicht mehr. Alternativ: wenn AN0 ein Eingang ist: Einfach den Pegel einlesen ;-). Gruß H
Ich kann keinen 24er Pic finden, der nur 28pins + USB hat. PIC18F25K20 hat wieder nur einen 10bit ADC :-(( Der AN2 und AN0 sollen analoge Ausgänge sein, die bei einer Messung angesteuert werden, und mir eine Versorgungsspannung für die Messschaltung bereitstellen. Daher ist das so ein Mist.
> Ich kann keinen 24er Pic finden, der nur 28pins + USB hat. Ja ach nee... Vielleicht habe ich ja deshalb Folgendes geschrieben: > Falls Du nicht auf USB angewiesen bist könntest Du schauen, ob Du einen > (größtenteils) pinkompatiblen PIC24 findest. Dort sind die A/D-Eingänge > getrennt wählbar. > Der AN2 und AN0 sollen analoge Ausgänge sein, die bei einer Messung > angesteuert werden, und mir eine Versorgungsspannung für die > Messschaltung bereitstellen. Ich glaube Du hast da etwas grundlegend noch nicht verstanden... (ADC != DAC)
zzzzz... In anlehnung an einen bekannten Schlager: "Tausend mal bestellt, tausend wird nicht passieren..."
Da habe ich mich verschrieben. Tschuldigen. Ich brauche Digitale Ausgänge (RAX) die eben nur als analoge Eingänge mitkonfiguriert werden können. AN0 -> RA.0 -> Digital 5V out AN1 -> RA.1 -> Analog IN AN2 -> RA.2 -> Digital 0V out Platinen haben pro Stk. 32 Cent (Europlatinen Größe) gekostet. Aber Made in China. Wie gesagt habe keinen 28 Piner mit USB gefunden , der in der PIC24 Liga mitspielt :-(
Der 2550er nicht. Wollte aber den 18F2553 einsetzen (ausser dem ADC mit mehr Auflösung) komplett gleich wie PIC18F2550. Habe jetzt aber etwas für mich gefunden: PIC18F26J50 Muss ich halt oversamplen.
Darum sollte der Mann auch einen PIC18F14k50 hernehmen. Dann kann er wieder 1000te Platinen bauen, bevor ein neuer Fehler auftritt. ("Habe gerade 1000 Platinen bekommen. Gibt es wirklich keine Möglichkeit den Mikrokontroller zwischen zwei Phasen zu betreiben? Helfen da Vorwiderstände?")
Weis nicht, ob ich mit einem PIC18F14k50 arbeiten möchte. Das Ding erscheint mir brandneu. Wie sieht es da mit den Errata aus?
Habe mir jetzt mal eine Liste erstellt. Leider scheiden sämtliche Prozessoren aus :-(( 18F2455 -> ADC nicht wählbar -> 5 Volt Prozessor 18F2550 -> ADC nicht wählbar -> 5 Volt Prozessor 18F2553 -> ADC nicht wählbar -> 5 Volt Prozessor 18F2458 -> ADC nicht wählbar -> 5 Volt Prozessor 18F2450 -> ADC nicht wählbar -> 5 Volt Prozessor 18F24J50 -> ADC WÄHLBAR -> 3,3 Volt Prozessor 18F25J50 -> ADC WÄHLBAR -> 3,3 Volt Prozessor 18F26J50 -> ADC WÄHLBAR -> 3,3 Volt Prozessor
> AN0 -> RA.0 -> Digital 5V out > AN1 -> RA.1 -> Analog IN > AN2 -> RA.2 -> Digital 0V out scheint so, als ob du diese pin RA.0 und RA.2 ständig auf den entsprechenden volt levels haben willst. richtig? falls dem so ist: gibt's die möglichkeit, dass du den pin RA.0 vom PIC abschneidest und die leitung auf dem PCB via einem jumper oder so auf 5V ziehst? edit: reiner neugier: welcher berufsgruppe gehörst du an? BWLer?
Nein kein BWLer. Aber vieleicht du, weil du nicht gefragt hast, ob sich die Pegel auch abwechseln. (Vielleicht ist ja RA.2 ein CS Signal???) AN0 / RA.0 Ändert ständig seinen Pegel zwischen Digital und Analog AN1 / RA.1 Ändert ständig seinen Pegel zwischen Digital und Analog AN2 / RA.2 Bleibt eigentlich immer Digital Wie du siehst liegt das Problem darin, das wenn ich AN0 / AN2 von vorne herein getauscht hätte, wäre das Problem nicht entstanden.
Kannst du eine Totzeit für die AD-Wandlung (auf AN0) vertragen? Wenn ja, dann könntest du ja nur für die Wandlungszeit AN1 (und AN0) auf Analog stellen und danach wieder alles auf Digital IO. Nur mal so als Idee.
wow, das gibt ja echt nen mix aus input, output, analog und digital... > weil du nicht gefragt hast, ob sich die Pegel auch abwechseln stimmt, ich ging davon aus, dass du keine relevanten eigenschaften uns vorenthälst - sorry, da habe ich wohl falsch gedacht ;-) anyway, wenn ich also die neue information (dein letztes posting) in den aktuellen informationsstatus einfliessen lasse, so egibt sich: > AN0 -> RA.0 -> Digital 5V out > RA.0 Ändert ständig seinen Pegel zwischen Digital und Analog somit wechselt RA.0 zwischen analog input und digital output > AN1 -> RA.1 -> Analog IN > RA.1 Ändert ständig seinen Pegel zwischen Digital und Analog somit wechselt RA.1 zwischen analog input und digital (digital input oder output?) > RA.2 -> Digital 0V out > RA.2 Bleibt eigentlich immer Digital somit is RA.2 eigentlich digital output wobei, wenn RA.0 digital output ist, du an RA.1 einen analog wert messen willst. richtig?
Als Workaround evtl. auf Analogeingang umschalten wenn gemessen werden soll.
moin, hast du schon mal ausprobiert was geht und was nicht geht? Datasheet PIC18F2420/2520... S.226 (19.3): "Each port pin associated with the A/D Converter can be configured as an analog input, or as a digital I/O." S.230 (19.5): "The port pins needed as analog inputs must have their corresponding TRIS bits set (input). If the TRIS bit is cleared (output), the digital output level (VOH or VOL) will be converted." Nur, ein DAC hat er dann immer noch nicht. Gruß H
> hast du schon mal ausprobiert was geht und was nicht geht?
ich gehe davon aus, dass der test (RA.O = digital output und RA.1 = AN
input) bereits erfolgte, sonst gäbe es dieser thread ja nicht ;-) ps:
ich hätte eigentlich auch angenommen, dass dies gehen sollte - offenbar
nicht.
Bin auch davon ausgegangen. Darum habe ich jetzt die KAcke am dampfen. Wenn Analog ,dann nur ADC. Kein DAC. Sonst hätte ich den DAC voll ausgesteuert, und meine Probleme wären verschwunden. RA.1 ändert zwischen Analog IN und Digital Out.
uns wenn du da ne schottische idiode davor baumelst. und vor der idiode halt auf nen anderen adc goen. wenn man ordentlich arbeitet sieht es sogar gut aus. oder halt nen anderen prozie obwohl ich pic`s so schlecht nicht finde oder neue platinen
>Bin auch davon ausgegangen. Darum habe ich jetzt die KAcke am dampfen. Lass dich jetzt nicht ärgern, ich selbst bin auf dieses PIC18-Verhalten im Vorfeld einer Entwicklung gestossen und habe mich dann für einen PIC16 entschieden. Die haben ein ANSEL-Register, das für jeden AN einzeln die Dx/AI Umschaltung ermöglicht. Einen Ersatztypen findest du eher dort als bei den PIC24.
so ein blödsinn, das ANSEL haben nicht DIE pic16 sondern EINIGE pic16
>so ein blödsinn, das ANSEL haben nicht DIE pic16 sondern EINIGE pic16 Reiss dich mal zusammen, Mann! Nenn mir doch einen einzigen PIC aus den 18er, 24er Familien die ein solches Register aufweisen. Bevor du weiter Haare spaltest werd dir mal bewusst dass der TE seinen PIC noch immer selbst auswählen muss. Es sei denn du möchtest auch da einen hilfreichen Rat geben?
Jetzt macht mal langsam, nicht gleich in die Wolle kriegen. Es ging um die Aussage "*die* (im Sinn von alle) PIC 16 haben ein ANSEL Register" was aber scheinbar unzutreffend ist (ich hab's nicht nachgeprüft). Bei PIC24H heisst das entsprechende Register ADxPCFGx Aus Datenblatt PIC24HJ64GP202 bit 12-0 PCFG<12:0>: ADC Port Configuration Control bits 1 = Port pin in Digital mode, port read input enabled, ADC input multiplexer connected to AVSS 0 = Port pin in Analog mode, port read input disabled, ADC samples pin voltage
>Es ging um die Aussage "*die* (im Sinn von alle) PIC 16 haben ein ANSEL >Register" was aber scheinbar unzutreffend ist (ich hab's nicht >nachgeprüft). Ist mir schon klar, worum es ging. Wie pedantisch muss man eigentlich sein, dass man darauf herumreiten muss? Natürlich haben nicht ALLE PIC16 dieses Register, seid ihr jetzt zufrieden? Nachdem aber kein PIC18, kein PIC24 dieses Register besitzt ist die Aussage, die PIC16 haben es, eben nicht falsch. Und da lass ich mich nicht schwach anreden wie von morph1.
Was hat das mit pedantisch zu tun? Bei den PIC24 HEISST es anders, es existiert aber dennoch. Bei den PIC16 haben es nur sehr wenige, gerade die Klassiker haben das gleiche System wie die älteren PIC18, ob da wohl ein Zusammenhang besteht? ;) Und wie der TE schon erklärt hat, einige PIC18 haben dieses, oder ein vergleichbares mit anderem Namen, Register sehr wohl, also ist auch dein letzter Beitrag nicht korrekt. Wenn du dich mit derartigen Aussagen profilieren kannst, tu das. Mein Hinweis galt dem TE, damit dieser nicht Gefahr läuft einen weiteren Unsinn anzustellen.
>Wenn du dich mit derartigen Aussagen profilieren kannst, tu das. Das Kompliment kann ich nur zurückgeben. Was du zum wiederholten Male schreibst ist mir bekannt. Ich habe von einem Register namens ANSEL gesprochen, nicht von vergleichbaren Registern mit anderem Namen. >Mein Hinweis galt dem TE, damit dieser nicht Gefahr läuft einen weiteren >Unsinn anzustellen. Das ehrt dich ja, warum behauptest du aber mein Beitrag wäre "Blödsinn"? Für mich war das einfach nur provokant, du akzeptierst offenbar keine Meinung neben deiner eigenen. >oder ein vergleichbares mit anderem Namen, Register sehr wohl, also ist >auch dein letzter Beitrag nicht korrekt. Das wird durch Wiederholungen auch nicht richtiger. Ich habe nur einen Tipp gegeben, sich mal bei PIC16 statt PIC24 umzuschauen. Verstehe nicht was dir da nicht passt, ich werde hier nicht für den TE Datenblätter vergleichen! >Bei den PIC16 haben es nur sehr wenige, gerade die Klassiker haben das >gleiche System wie die älteren PIC18, ob da wohl ein Zusammenhang >besteht? ;) Dann müsstest du ja verstanden haben, dass die PIC16 mit ANSEL-Register eine Besonderheit darstellen. Daher sollte man sich die mal genauer anschauen, wenn man AN-Pins zur Laufzeit umkonfigurieren muss.
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.