Hallo, eine kleine Frage zum Atmel ATTINY2313. Muß ich bei diesem Controller die Pins, welche nicht in meinem Projekt benutzt werden, auf High oder Low Potential setzen oder kann man diese einfach unbeschaltet lassen? Vielen Dank für eure Mithilfe, C.Preuß
Kannst unbeschaltetr lassen. Und dann am besten den internen Pullup einschalten. Fertig.
Weiss nicht genau wie das bei Atmel ist, aber ich hatte vor 5 Jahren ein MC16 Projekt bei der die Platine immer 60 mA gezogen hat , was entschieden zu viel ist.Nachdem wir alle IO Leitungen auf Input geschaltet haben lagen wir unter 10 mA. Kann mich aber nicht genau erinnern was das eigentliche Problem war. Vielleicht hatte es auch mit der Beschaltung zu tun. Freudi
@Freudi >MC16 Projekt bei der die Platine immer 60 mA gezogen hat , was >entschieden zu viel ist.Nachdem wir alle IO Leitungen auf Input >geschaltet haben lagen wir unter 10 mA. Kann mich aber nicht genau Für das Problem gibt es mehrere saubere Lösungen. 1.) Pin auf Ausgang schalten, HIGH oder LOW 2.) Pin als Eingang schalten und interen oder exteren Pull-up/downs verwenden Was man NICHT tun sollte ist 3.) Pins als Eingang schalten (was nach enem Reset meist automatisch der Fall ist) und keine Pull-up/downs verwenden (die internen sind beim AVR nach dem Reset ausgeschalten). Das gibt floatende Eingänge die ggf. ordentlich Strom ziehen. MfG Falk
Danke Falk. Nach Durchsicht der alten tlowinit.c habe ich das jetzt nochmal nachvollzogen. Die Ports waren auf Eingang ohne Pullup geschaltet. Wir haben dann den Pullup eingeschaltet. Output ging irgendwie nicht weil da so ein supergeheimer (damals ) Baustein drauf war. Da gab es irgendwie Schwierigkeiten wenn der ein definiertes LOW oder HIGH bekommen hat. Weil ich finde das das Thema immer mal interessant ist, bin ich doch echt dankbar für den Thread. ( der ja garnicht von mir kam :-) Freudi
@Falk: Zu 3) Dies gilt aber nicht, wenn der Pin unbeschaltet (n.c.) ist, oder?
@Thorsten
>Zu 3) Dies gilt aber nicht, wenn der Pin unbeschaltet (n.c.) ist, oder?
GERADE da gilt es ja!
Jeder digitale Pin braucht einen definierten digitalen Pegel.
MFG
Falk
Ja stimmt... mein Denkfehler. Ich habe das auch nochmal mit dem Atmel Datenblatt abgeglichen. Ich habe dies allerdings in meinen bisherigen Projekten nicht beachtet und (zum Glück) noch keine Probleme gehabt.
Vielen Dank für die vielen Antworten, ich benutze nur 3 Pins als Ausgänge, und den RXD Pin. Alle anderen sind momentan n.c.! Bis natürlich auf die notwendigen Vcc,Gnd und Reset! D.h. ich definiere im Programm die anderen Pins als Ausgänge und diese sind damit hochohmig. Oder soll ich diese auf ein bestimmtes Potential ziehen, z.B. GND? Gruß Carsten
@C.Preuß >D.h. ich definiere im Programm die anderen Pins als Ausgänge und diese >sind damit hochohmig. ??? Bitte nochmal den Satz lesen und drüber nachdenken. Danach nochmal meine Posts lesen. MFG Falk
Sorry, so hatte ich den Satz in Datenblatt verstanden: "Ports with internal pull-up resistors" Wat soll ich denn nun machen, die Pins beschalten oder frei lassen? gruß Carsten
>Wat soll ich denn nun machen, die Pins beschalten oder frei lassen?
Pins als Eingänge schalten und die Pullups an:
DDRx = 0;
PORTx = 0xFF;
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.