- LiFePO4 Speicher Test         
Seite 4 von 4 ErsteErste ... 234
Ergebnis 31 bis 36 von 36

Thema: Timer und Register

  1. #31
    Neuer Benutzer Öfters hier
    Registriert seit
    05.05.2013
    Beiträge
    22
    Anzeige

    Praxistest und DIY Projekte
    Es sollte nur Sound_On noch vorhanden sein. Sound_Off sollte dementsprechend von der CTC Routine abgenommen werden und zwar in jedem Compare Interrupt

  2. #32
    Erfahrener Benutzer Robotik Einstein Avatar von Searcher
    Registriert seit
    07.06.2009
    Ort
    NRW
    Beiträge
    1.703
    Blog-Einträge
    133
    Zitat Zitat von Saturas077 Beitrag anzeigen
    Code:
    Sound_On:
        ldi temp, (1<<PD6)
        out PORTD, temp
        ldi timer0, 0x00        ; setze Timer zurück
    
        reti
    Das "out PORTD, temp" kann keine Wirkung auf PD6 haben, da OC0A aktiviert ist (nach Datenblatt "15.6 Compare Match Output Unit"). Ich frag mich immer noch, wie PD6 auf high kommt?
    Hoffentlich liegt das Ziel auch am Weg
    ..................................................................Der Weg zu einigen meiner Konstruktionen

  3. #33
    Neuer Benutzer Öfters hier
    Registriert seit
    05.05.2013
    Beiträge
    22
    Deine Aussage finde ich sehr Interessant, da dass das einzige war, was funktioniert hat.
    Also, ohne:
    Code:
    Sound_Off:
    	sbis PORTD, 6
    	reti
    	ldi temp, (0<<PD6)
    	out PORTD, temp
    	ldi timer0, 0x00
    
    	reti
    Ist der Pegel immer High auf dem Oszi. (In der Simulation in 6.2 ebenfalls)
    Erst durch den Absatz wird es ein Toggeln. Es spielt keine Rolle wie ich COMxy einstelle.

    Zu deiner exakten Frage wie der pegel High wird. Du hast den Übeltäter selbst gepostet:
    Code:
    Sound_On:
    	ldi temp, (1<<PD6)
    	out PORTD, temp
    	ldi timer0, 0x00		; setze Timer zurück
    
    	reti
    Ich hoffe wir finden den Fehler, ansonsten muss ich die CTC Funktion erstmal ohne das zurücksetzen akzeptieren.
    Viele Grüße

  4. #34
    Erfahrener Benutzer Robotik Einstein Avatar von Searcher
    Registriert seit
    07.06.2009
    Ort
    NRW
    Beiträge
    1.703
    Blog-Einträge
    133
    Ich blick jetzt nich mehr durch und muß erstmal in mich gehen
    Bin mir ziemlich sicher, daß wenn OC0A aktiviert ist, der PD6 nicht mehr auf Ausgaben ins PORTD.6 reagiert. Allerdings habe ich keinen Mega328p kann das aber später mal mit Mega88A ausprobieren. *Rätsel*

    Gruß
    Searcher
    Hoffentlich liegt das Ziel auch am Weg
    ..................................................................Der Weg zu einigen meiner Konstruktionen

  5. #35
    Erfahrener Benutzer Robotik Einstein Avatar von Searcher
    Registriert seit
    07.06.2009
    Ort
    NRW
    Beiträge
    1.703
    Blog-Einträge
    133
    Also ich habe es nicht geschafft PD6 über PORTD.6 anzusprechen, wenn OC0A über die COM0Ax Bits aktiviert war.
    Überhaupt hat nur das Setzen des COM0A0 Bits zum toggeln bei Comparematch Änderungen an PD6 hervorgerufen; eben ein toggeln. Die anderen Bitkombinationen nach Datenblatt haben OC0A entweder konstant auf low oder high gelegt. Keine Ahnung welchen Sinn die beiden anderen Bitkombinationen im CTC Modus haben.

    Zitat Zitat von Saturas077 Beitrag anzeigen
    Code:
        ldi temp, 0x11110011 ; Die Interrupt sollen als Eingang bleiben
        out DDRD, temp
    Wie wird DDRD hiermit überhaupt konfiguriert? Es müßte doch "ldi temp , 0xF3" heißen!

    Was ist den die Aufgabe des Timer0? Alle 10ms einen Puls (high oder low, wie lang?) auf PD6 generieren?

    Eventuell müßte eine andere Lösung als CTC finden.

    Gruß
    Searcher
    Hoffentlich liegt das Ziel auch am Weg
    ..................................................................Der Weg zu einigen meiner Konstruktionen

  6. #36
    Neuer Benutzer Öfters hier
    Registriert seit
    05.05.2013
    Beiträge
    22
    Danke für eure mühen. Ich habe es jetzt erstmal manuel gelöst.

Seite 4 von 4 ErsteErste ... 234

Ähnliche Themen

  1. gleiche register bei atmega32 und 16
    Von avrrobot im Forum C - Programmierung (GCC u.a.)
    Antworten: 1
    Letzter Beitrag: 20.02.2011, 10:19
  2. Timer-Register mögen Befüllung durch Funktion nicht
    Von stefan_Z im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 1
    Letzter Beitrag: 06.08.2007, 19:25
  3. Asuro und OSCCAL Register Taktfrequenz
    Von Winne im Forum Asuro
    Antworten: 3
    Letzter Beitrag: 11.09.2005, 09:49
  4. Interne Register und Register in SRAM
    Von FoCus im Forum AVR Hardwarethemen
    Antworten: 9
    Letzter Beitrag: 27.07.2005, 13:06
  5. ADC und USART über Register?!
    Von BASTIUniversal im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 1
    Letzter Beitrag: 29.04.2005, 14:28

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

12V Akku bauen