Xmega: Interne PullUps aktivieren

Gast #1374912
Hi, ich sitze gerade an einem ATxmega32A4 und versuche verzweifelt, die 
internen PullUp Widerstände zu aktivieren. Ich habe einen Taster gegen 
Masse angeschlossen und will eine LED schalten. Das funktioniert soweit 
auch, aber der Eingang "floated", wenn der Taster nicht betätigt ist. 
Die LED geht also willkürlich an, bis ich dem Eingang ein Potential 
gebe.

Ich habe dazu das Port Example aus den AppNotes etwas modifiziert und 
ich nutze die mitgelieferte port_driver.c
1
void Example1( void )
2
{
3
  /* Configure data direction for PORTC and PORTD. */
4
  //PORTC.DIRCLR=0XFF;
5
  PORT_ConfigurePins( &PORTC,
6
                      0xFF,
7
                      false,
8
                      false,
9
                      PORT_OPC_WIREDANDPULL_gc,
10
                      PORT_ISC_BOTHEDGES_gc );
11
  PORT_SetPinsAsInput( &PORTC, 0xFF );
12
  PORT_SetPinsAsOutput( &PORTD, 0xFF );
13

14
  /* Continously copy the value from PORTC to PORTD. */
15
  do {
16
    uint8_t temp = PORT_GetPortValue( &PORTC );
17
    PORT_SetOutputValue( &PORTD, temp );
18
  } while (true);
19
}

PORTC soll komplett als Eingang dienen, PORTD als Ausgang. Ich hab im 
Prinzip verstanden, was ich zu tun hab, aber entweder hab ich noch nicht 
verstanden, WIE ich es tun muss oder irgendwas ist faul.

Ich nutze eine relativ aktuelle Version von WinAVR (20090313, soweit ich 
sehe die letzte)
Gast #1375007
Idiot... toll da liest man ersten Post, und dann so ein Müll!!

Erstmal denken.. und dann posten.

Im Moment habe ich den Eindruck jetzt Idiot macht erstmal einen Thread 
auf, bevor er nur einmal richtig über das Problem nachgedacht hat - man 
kann ja auch andere denken lassen, oder einfach die Glaskugel fragen.
Persönliche Seite #1375011
omg schrieb:
> Idiot... toll da liest man ersten Post, und dann so ein Müll!!
>
> Erstmal denken.. und dann posten.
>
> Im Moment habe ich den Eindruck jetzt Idiot macht erstmal einen Thread
> auf, bevor er nur einmal richtig über das Problem nachgedacht hat - man
> kann ja auch andere denken lassen, oder einfach die Glaskugel fragen.

Kann ja mal vorkommen...
(Firma: Embedit Mikrocontrollertechnik) #1378034
Nein, das Problem war, dass ich vorher das Projekt normal mit dem GCC 
Compiliert hatte, ohne AVR Studio. Die Hex Datei lag im Projektordner 
und hatte den gleichen Namen wie die C Datei. AVR Studio legt die HEX 
Datei aber in einem Unterverzeichnis ab.

Das Dumme war halt, dass es eine HEX Datei von den gleichen Sourcen war 
und dementsprechend die gleiche Funktion hatte.

Deshalb muss man keinen als Idiot bezeichnen, vor allem, wenn man sich 
hinter einem anonymen Gast versteckt

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 17 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.