Transistor und Atmega88

Gast #2065840
Lesenswert?
• ▲
▼
Hi
Danke für euere schnelle Antwort

ich habe jetzt mein Program geändert, leider tut sich nicht viel.

Ich habe ein Overflow programmiert die mir jede Sekunde  3 anlaoge 
Spannungen misst.die dritte Spannungen wird nachdem einschalten eins 
Transistors gemessen. nun habe ich das Problem, dass die Spannung 
abwechslend richtig oder falsch messe.
Beispiel:
erste Messung richtig--> nächste Rotiene---> Messung falsch---> nächste 
Rotiene--> Messung Richtig und so weiter.
Ich bin mir sicher das liegt an der Steuerung des Transistors aber ich 
weiss nicht was falsch ist, vielleicht wirft jemand einen Blick auf 
meinen Programm, mit der Hoffung ein Fehler zu finden

PS: Ich verwende ein Atmega88
MfG
Aron
Angehängte Dateien:
#2066112
Lesenswert?
• ▲
▼
Oha, da sehe ich böse Fallen!

1.) Variablen Deklaration

unsigned int adc=0.0 ....

bringt nichts... ein unsigned int ist immer ganzzahlig.

2.) Der Interrupt

Du rufst in deiner Interrupt Routine eine externe Routine auf: Macht man 
nicht, und sollte eigentlich auch nicht gehen.

Du hast keine Variablen Volatile Deklariert (z.b. adc0.. etc...)

Du sendest aus deiner Interrupt Routine an die UART... böse Falle...

Deine Interruptroutine sollte wenn möglich nur einen Läufer setzen, in 
deiner Hauptschleife in Main sollte dieses dann alles berechnet werden.

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

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.