Hi, ich habe hier einen PIC16F1825 @ 3V und hab ein paar Leds (ca. 2V @ 20mA) dran, mit Charlieplexing. Problem ist nun, dass die Leds zu dunkel sind, sprich zu wenig Strom fließt. Ich messe so um die 7 mA. Interessant dabei ist auch, dass es keine Rolle spielt was für ein Vorwiderstand in der Leitung hängt; ich kann ihn auch weglassen, mehr Strom fließt dadurch aber nicht, Spannung bricht halt auf ca. 2V ein. Ich hab auch mal eine Led gegen GND geschaltet, nichts anders, Spannung bricht am Pin auf 2,2V oder so ein, Strom wieder so bei 7mA. Ich habs auch mal einen entsprechend kleinen Widerstand (100 Ohm, da sollte auf jeden Fall etwas Strom fließen) versucht: fließen so um die 9mA. Im Datenblatt steht was von 25mA (sink/source). Bei 'Sink' komm ich an die 25mA hin, aber 'sourcen' tut der µC nicht mehr als ca. 10mA. Kann mir nun wer sagen woran das liegt? Oder mach ich was falsch? Viele Grüße
Hmmm, warum keine Low-Current Led's? Generell würd ich eher "sink" nutzen. Zu deinem Problem, wenn du einen Portpin nutzt, der auch als Analogeingang nutzbar ist, musst du dies ihm natürlich auch mitteilen. Da schau mal nach den ANSELA, ANSELB und ANSELC Register. Dies wäre auf jedenfall eine Erklärung... Gruss Sascha
Datenblatt Seite 349: Maximum current out of VSS pin, -40°C ≤ TA ≤ +85°C for industrial... 85 mA Maximum current out of VSS pin, -40°C ≤ TA ≤ +125°C for extended... 35 mA Maximum current into VDD pin, -40°C ≤ TA ≤ +85°C for industrial... 800 mA Maximum current into VDD pin, -40°C ≤ TA ≤ +125°C for extended... 30 mA fchk
Sascha Focus schrieb: > Hmmm, > > warum keine Low-Current Led's? Weil ich keine passenden gefunden habe, aber darum geht's hier erstmal nicht. > Generell würd ich eher "sink" nutzen. Ja schon; geht aber fürs Charlieplexing nicht, ein Port muss ja sourcen. > Zu deinem Problem, wenn du einen Portpin nutzt, der auch als > Analogeingang nutzbar ist, musst du dies ihm natürlich auch mitteilen. > Da schau mal nach den ANSELA, ANSELB und ANSELC Register. Dies wäre auf > jedenfall eine Erklärung... Aber das hat doch nichts mit dem Ausgang zu tun. Frank K. schrieb: > Datenblatt Seite 349: > > Maximum current out of VSS pin, -40°C ≤ TA ≤ +85°C for industrial... 85 > mA > Maximum current out of VSS pin, -40°C ≤ TA ≤ +125°C for extended... 35 > mA > Maximum current into VDD pin, -40°C ≤ TA ≤ +85°C for industrial... 800 > mA > Maximum current into VDD pin, -40°C ≤ TA ≤ +125°C for extended... 30 mA Aha, und was sagt mir das für meinen Fall?
>> Zu deinem Problem, wenn du einen Portpin nutzt, der auch als >> Analogeingang nutzbar ist, musst du dies ihm natürlich auch mitteilen. >> Da schau mal nach den ANSELA, ANSELB und ANSELC Register. Dies wäre auf >> jedenfall eine Erklärung... > Aber das hat doch nichts mit dem Ausgang zu tun. Sicherlich, wenn du so einen Pin als digitalen Pin, sei es Eingang oder Ausgang nutzen willst: The ANSELA bits default to the Analog mode after Reset. To use any pins as digital general purpose or peripheral inputs, the corresponding ANSEL bits must be initialized to ‘0’ by user software. Nur so kann es funktionieren. Gruß Sascha
Hmm, ok muss ich nochmal testen, wobei aber die verwendeten Pinds für die Leds im ANSELA auf 0 stehen, auf Grund einer anderen Funktion.
Zeig doch mal die Schaltung und auch den Code. Wie schon gesagt, als Beispiel für den Port A z.B aus dem Datenblatt: ; This code example illustrates ; initializing the PORTA register. The ; other ports are initialized in the same ; manner. BANKSEL PORTA ; CLRF PORTA ;Init PORTA BANKSEL LATA ;Data Latch CLRF LATA ; BANKSEL ANSELA ; CLRF ANSELA ;digital I/O BANKSEL TRISA ; MOVLW B'00111000' ;Set RA<5:3> as inputs MOVWF TRISA ;and set RA<2:0> as ;outputs Gruß Sascha
fraengers schrieb: > Ich messe so um die 7 mA. Bei 3,3V sind es ja auch bis zu 100 Ohm auf der Low-Seite und bis zu 230 Ohm bei High-Pegel. (High -0,7V @ 3mA, low 0,6V @ 6mA) Bei 3V ist halt nicht mehr drin. Gruß Anja
@Sascha Focus Also das mit dem ANSELx stimmt soweit; wenn dort ne 1 steht tut sich am entsprechenden Pin gar nichts beim Ausgang, ist immer low. Aber wie gesagt, bei mir ist das sowieso, mehr oder weniger unwissentlich, alles auf 0 gesetzt. @Anja Aha, blöd... heißt nur bei 5V bekomme ich auch die 25mA als Ausgangsstrom hin oder wie?
Ok habs getestet: 5V: 20mA für Led, kein Problem 3V: 8mA bei Kurzschluss Ist das normal und bei allen µC so? (Habe bis jetzt immer nur mit 5V gearbeitet.) Und wo seh ich das im Datenblatt?
fraengers schrieb: > heißt nur bei 5V bekomme ich auch die 25mA als Die 25mA sind der Strom wo der Pin sich in magischen Rauch auflösen kann. Peter Lankton schrieb: > Ist das normal und bei allen µC so? Ja. Der Treiberinnenwiderstand ist Versorgungsspannungsabhängig. (Bei jedem FET ist der RDS,on abhängig von der Gate-Source Spannung). Peter Lankton schrieb: > Und wo seh ich das im Datenblatt? Parameter D080 und D090 im Datenblatt DS41440B-page 360 Ist leider nur ein preliminary Datasheet. In finalen Datenblättern sind meistens noch zusätzlich Kurven für VOH und VOL in Abhängigkeit von Strom und Versorgungsspannung eingezeichnet aus denen man den typischen Treiberinnenwiderstand bei 25 Grad ausrechnen kann. Gruß Anja
Ok, alles klar, danke Anja. Habe die Kruven im Datenblatt vom PIC16F1827 gesehen, die dürften wahrscheinlich ähnlich sein, zuminest die 8mA bei Kurschluss @3V kommen hin. Kann ich dann eigentlich auf den Vorwiderstand verzichten um soviel Strom wie möglich für die Led zu erhalten?
> Kann ich dann eigentlich auf den Vorwiderstand verzichten > um soviel Strom wie möglich für die Led zu erhalten? Da die Widerstandswerte der Ausgangstransistoren locker um den Faktor 1:2 voneinander abweichen können (und wenn man unterschiedliche Temperatur und Speisespannungsschwankungen noch dazunimmt noch mehr, aber die betreffen alle Pins gleich), erscheinen dann deine LEDs eventuell deutlich unterschiedlich hell.
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.