Atmel Ausgang zerschossen?

Gast #5916068
Lesenswert?

Wenn man einen Ausgang killt (Überspannung), sollten die internen 
Schutzdioden mit Sicherheit hops gegangen sein. Das kann man meist 
messen.

Mit Kurzschluss (gegen VCC oder GND) habe ich beim AVR noch keinen 
Ausgang kaputt bekommen... da scheint der Innenwiderstand groß genug zu 
sein.
Gast #5916114
Lesenswert?

Donny schrieb:
> ohne eigens ein Programm dafür schreiben zu müssen?

Kindergarten, Schuhe zubinden kannst Du schon?

Da schreibt man sich ein Progrämmchen, was die Ausgänge wackeln lässt in 
der Art Lauflicht und gut - das geht schneller als hier im Forum zu 
kaspern.
Gast #5916418
Lesenswert?

ich habe mit AVR32 noch kaum Erfahrung, darum wollte ich es vermeiden, 
ein Programm zu schreiben. Hab mich aber nun doch damit 
auseinandergesetzt und habe bislang folgendes (der Pin um den es sich 
handelt ist PB01):


#include <avr32/io.h>

int main(void)
{
  int i ;
  AVR32_GPIO.port[1].gper = 1 <<1;
  AVR32_GPIO.port[1].oder = 1 <<1;

  while (1)
  {
    AVR32_GPIO.port[1].ovrs = 1 <<1;
    for (i=0;i<100000;i++);
  }
}



Hab es noch nicht geflasht, wollte zuerst eure Meinung dazu...
Gast #5917905
Lesenswert?

Donny schrieb:
> for (i=0;i<100000;i++);

Eventuell entfernt der Optimizer die ganze Zeile, weil sie "nichts" 
bewirkt. Du kannst den Optimizer mit der Compileroption -O0 
deaktivieren, oder in der Schleife einen Nop Befehl ausführen:

for (i=0;i<100000;i++) { __NOP(); }

Der bewirkt zwar auch nichts, ist aber als volatile gekennzeichnet, was 
dem Optimizer verbietet, ihn weg zu optimieren.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren