Hallo, ich habe mir das Tutorial von euch mal angeschaut, weil ich noch Anfänger bin was das avr-gcc und Mikrocontroller angeht. C mache ich zwar schon ne ganze Weile, aber das hilft nicht wirklich. Ich habe auch die Vermutung, mir fehlt einfach die techn. Grundlage... Ich habe an meinem Mikrocontroller (at90s8535) an Port A 5 Tasten und einen Poti angeschlossen (das Poti hängt also an Pin 0, 1 und 2, 3-7 ist reserviert für die Tasten). Jetzt habe ich sowohl in der Doku vom Controller als auch im Tutorial 3 Informationen erhalten: Ich brauche in meinem Fall das DRR Register von Port A und muss da um werte vom Poti zu erhalten doch die ersten 3 Bits auf 0 für Eingang stellen oder? Soweit, sogut. Was ist mit den anderen beiden gibt ja noch PORTA und PINA, wobei ich in der Dokumentation gelesen habe, dass PINx gar kein Register sein soll, als initialwert steht da auch N/A.... Und zu PORTx haben ich die Information erhalten, dass dies Pullup-Widerstände aktiviert oder deaktiviert. Aber was heisst das auf deutsch? Ich weiss nicht einmal, ob das hier das richtige forum dazu ist meine Frage ist eher hardwarespezifisch oder? Kann vielleicht irgendein Mod die Frage wenn sie falsch ist verschieben? Gruß Sebastian
wie willst du eine Spannung messen, wenn du alle 3 anschluesse vom POTI auf eingang setzt?? wenn kannst du ein PIN auf Masse, ein PIN auf Vcc und den schleifer auf den Port setzen, wo die AD Wandler liegen schau mal auf http://mc-project.de/
Erstens: für den größten Teil deiner Fragen (besonders zur Logik der PINx, PORTx und DDRx-Register) liest du am besten das Datenblatt gründlich. Das ist gut dokumentiert, sowohl verbal als auch mit einem Pseudo-Schaltbild. Zweitens: warum willst du ein Poti an drei Anschlüsse des Controllers klemmen bzw. was erwartest du davon? Vergegenwärtige dir bitte nochmal die Grundlagen der E-Technik, Kapitel Spannungsteiler. Das Poti braucht zwei feste Bezugswerte an den Außenklemmen (sinnvoll: AVcc und GND, wobei AVcc und Aref für diesen einfachen Fall gekoppelt werden) -- die musst du auch nicht wieder einlesen. Du brauchst also genau einen Eingang mit AD-Wandler. Außerdem nochmal siehe Datenblatt: wenn man den AD-Wandler benutzt, sollte man die restlichen Pins von Port A nach Möglichkeit nicht für digitale EA belegen, da das die Genauigkeit der Wandlung beeinflussen kann. Ist vielleicht im Falle deiner Taster nicht sehr wesentlich, aber wenn man's vermeiden kann, nimm lieber dafür gleich einen anderen Port.
Naja, mit der Dokumentation meinte ich eigentlich das Datenblatt des µC.... Den Controller habe ich mir nicht selber gelötet, das hat jemand für mich erledigt. Ich muss zugeben, dass ich von sowas so gut wie keine Ahnung habe und das alleine auch gar nicht hinkriegen würde. Ich habe allerdings den Plan so wie er zusammengelötet ist, beigelegt. Das Poti ist zwar nicht eingezeichnet, liegt aber bei Analog Digital. Gruß Sebastian
Mach mal den C4 am Regler zu 1uF. 2x 100n machen es dort auch nicht. Am Ausgang des Reglers die 1uF und den 100er an das IC. "liegt aber bei Analog Digital. " WO? - liegt das Poti`?
Moin, das Schaltbild zeigt doch die richtige Beschaltung am Analog Eingang S21! GND - PA0 - Vcc ...so wie man es gewoehnt ist. Ich nehme mal an, Dein "Loetkumpel" hat sich verguckt und S21 an die daneben gezeichneten Eingaenge PA1 und PA2 gehauen. Ich hoffe, dass klaert Einiges?! Gruss Karl @Juergen, ich stimme Dir voll zu, die Wahl der C's ist mehr als ungluecklich... ;-)
und an den ADC gehoeren keine PULL UP / PULL DOWN Widerstaende
Naja, ich hatte mich vertan. Es war ne Fehlinformation, das Poti liegt wirklich nur an Pin A0. Aber mit dem Zeugs was ihr da erzählt kann ich überhaupt nix anfangen... Könnt ihr das vielleicht mal so formulieren, dass man es ohne E-Studium versteht?
Das kann man ohne Studium verstehen, wenn man sich die Mühe gemacht hat, sich mit der Materie (insbesondere deren Grundlagen!) auseinander zu setzen. Für den Anfänger geeignet ist elektronik-kompendium.de und ein gutes Grundlagenbuch zum Thema elektrische Schaltungstechnik. Falls du nicht weist, was ein Widerstand ist, dann fang mit einem Grundlagen Elektrotechnik Buch an. Anders wird das meiner Meinung nach nichts, es sei denn, du heißt kein Problem damit, mit Halbwissen zu leben. Gruß, Alex
Hallo, ich weiss durchaus, was ein Widerstand ist. Ich kann auch durchaus elektrische Schaltungen durchschauen, allerdings nur simple. Ich habe vor 3 Jahren meinen Physik LK im Abitur abgeschlossen, dort lernt man eigentlich die Grundlagen. Das meinste, was auf der Seite steht, die du mir nanntest, ist mir recht klar. Ich komme auch durchaus mit Halbleiterelementen wie Dioden und Transistoren zurecht, allerdings habe ich noch nie so Sachen wie Relais oder Mikrocontroller gemacht. Ich denke einfach, das war ein wenig provuvierend gemeint, verstehe ich jetzt auch mal so. Ich bemühe mich in letzter Zeit mich da durchzuackern. Vielleicht ein paar Statements: Zitit: ================================================================= Autor: Jens123 Datum: 28.01.2005 14:19 und an den ADC gehoeren keine PULL UP / PULL DOWN Widerstaende ================================================================= In meinem Datenblatt und im Tutorial vom avr-gcc steht, dass wenn der Wert im DDRx register für den entsprechenden Pin an diesem Port auf Eingang steht (0) entscheidet das Bit im PORTx Register darüber, ob der Pullupwiderstand aktiviert wird oder nicht (ich nehme an, es gibt dort einen Internen im µC). Ich hatte nicht vor, einen PullupWiderstand daran anzuschliessen.
Natürlich war das provozierend gemeint. Stell dir einen AD-Eingang einfach wie die Messspitze eines Messgerätes vor (sehr hochohmig). Diesen kannst du direkt dort anschließen, wo du die Spannung messen möchtest (so diese denn im erforderlichen Bereich liegt). Ist der Spannung hochfrequentes unerwünschtes Rauschen überlagert, kann man noch einen Tiefpaß davor schalten. Solcherlei Schaltungsvorschläge findet man in jedem besseren Datenblatt. Eine gute Erklärung, was Pull-Ups sind findest du über den erwähnten Link sowie die angegebene Literatur.
> ich weiss durchaus, was ein Widerstand ist. Ich kann auch durchaus > elektrische Schaltungen durchschauen, allerdings nur simple. Dann tu das mal bei deinem eigenen Schaltplan und du wirst die Pulldowns finden. Falls nicht: Dein Poti (P1) liegt zwischen VCC und GND mit dem Schleifer auf PA0. Durch den Pulldown (RN2) wird der Spannungsteiler belastet und die Ausgangspannung an PA0 ändert sich. Bei deinem Poti ist das noch relativ egal. Wenn du aber eine analoge Spannung von einem Messgeber aufnehmen musst wird so dein Messergebnis verfälscht. VCC + | | .-. | | P1*x | | (x ist die Schleiferstellung 0<x<1) '-' | +----+----- PA0 | | .-. .-. | | | | P1*(1-x) | | | |100k '-' '-' | | | | === === GND GND
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.