Anfängerin -> Erster Programmversuch funktioniert nicht

Gast #1147527
Hallo Experten!

Habe gerade mein erstes Programm mit einem MEGA32L zu Testzwecken 
geschrieben. Leider funktioniert es nicht! An Port A.0 liegt an 
PWM-Signal an. Dieses soll zu Port A.7 "Durchgeschliffen" werden.
Hier der Programmausschnitt(COdeVisionAVR):
1
// Input/Output Ports initialization
2
// Port A initialization
3
// Func7=Out Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In 
4
// State7=0 State6=T State5=T State4=T State3=T State2=T State1=T State0=P 
5
PORTA=0x01;
6
DDRA=0x80;
7

8
...
9

10
while (1)
11
      {
12
      // Place your code here  
13
      if(PORTA.0==0){ 
14
        PORTA.7=1; }
15
      else {
16
        PORTA.7=1;
17
        }  
18
...

Port A.7 gibt aber hat aber dauerhaft das den Zustand high. An A.0 liegt 
ein PWM-Signal mit 200Hz.

Jemand eine Idee warum das nicht funktioniert?

Grüßle
Koennte es sein, dass die Schleife einfach zu langsam ist? Ich hab' 
keinen AVR-Compiler (arbeite immer mit Microchip-uCs), aber ich denke 
die Schleife sind so ca. 20 Assemblerbefehle. Bei 4 MHz Taktrate 
(welcher Taktrate verwendest Du wirklich?) und 1 Befehl pro Takt ist die 
Schleifenfrequenz so 200 kHz. Kann also sein, dass der uC immer gerade 
dann den Zustand des Eingangspins ueberprueft, wenn er "high" ist.

Zum Testen am besten einfach einmal ein statisches Signal von einem 
Schalter an den Eingang anlegen (1 bzw. 0), oder mit einem an den 
Eingang angschlossenen Draht abwechselnd GND und VCC beruehren und 
sschauen, ob der Ausgang folgt. Wenn das geht, dann mal ein langsameres 
PWM-Signal einschleifen (z.B. 1 kHz).

Wolfgang

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.