- LiFePO4 Speicher Test         
Ergebnis 1 bis 10 von 36

Thema: Timer und Register

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Erfahrener Benutzer Fleißiges Mitglied Avatar von derNeue
    Registriert seit
    01.01.2011
    Ort
    Bierstadt Radeberg
    Alter
    38
    Beiträge
    101
    Zitat Zitat von Searcher Beitrag anzeigen
    Auf einem ATMega8 geht das ADIW.
    Das funktioniert aber nur bei den Registern R32 bis R24, und auch jeweils nur bei den Pärchen, soweit ich mich noch erinnere, oder verwechsle ich gerade die Befehle?


    Dennis
    Ich studiere die Wirkung der Sonnenstrahlen auf das Liebesleben der Pflastersteine

  2. #2
    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 derNeue Beitrag anzeigen
    Bild hier   Zitat von Searcher Bild hier  
    Auf einem ATMega8 geht das ADIW.
    Das funktioniert aber nur bei den Registern R32 bis R24, und auch jeweils nur bei den Pärchen, soweit ich mich noch erinnere, oder verwechsle ich gerade die Befehle?
    Nein, stimmt schon. ADIW geht nur bei den oberen Registerpärchen. Besteht da irgendwo ein Widerspruch oder warum fragst Du nach? Ist doch eine kurze Methode um etwas zu einem 16Bit Wert zu addieren

    Zitat Zitat von Saturas077 Beitrag anzeigen
    Ich möchte aber gerne zwei Register von r16-r32 nutzen. Wobei die Pointer Register ja wegfallen.
    Warum fallen die Pointerregister weg? r24/r25 sind auch keine der Pointer X, Y, Z.

    Gruß
    Searcher
    Geändert von Searcher (29.04.2014 um 07:46 Uhr) Grund: Ergänzung
    Hoffentlich liegt das Ziel auch am Weg
    ..................................................................Der Weg zu einigen meiner Konstruktionen

  3. #3
    Erfahrener Benutzer Fleißiges Mitglied Avatar von derNeue
    Registriert seit
    01.01.2011
    Ort
    Bierstadt Radeberg
    Alter
    38
    Beiträge
    101
    Zitat Zitat von Searcher Beitrag anzeigen
    Nein, stimmt schon. ADIW geht nur bei den oberen Registerpärchen. Besteht da irgendwo ein Widerspruch oder warum fragst Du nach? Ist doch eine kurze Methode um etwas zu einem 16Bit Wert zu addieren
    Es besteht kein Widerspruch und mit deinem Post erinnerte ich mich auch wieder an diesen Befehl. Ich wollte einfach nur ergänzen, dass dieser Befehl eben nur bei bestimmten Registern funktioniert. Nicht das der TO sich dann wundert, warum es wieder nicht klappt, nur weil er die "falschen" Register nimmt.

    Also ansich hattest du den besseren Vorschlag, ich wollte ihn nur ergänzen, war mir aber nicht mehr 100% sicher, ob ich da nicht etwas verwechsle, deswegen mein nachfragen


    Dennis
    Ich studiere die Wirkung der Sonnenstrahlen auf das Liebesleben der Pflastersteine

  4. #4
    Neuer Benutzer Öfters hier
    Registriert seit
    05.05.2013
    Beiträge
    22
    Danke für all Eure Antworten.
    Ich wollte vorerst mir die Begriffe im Handbuch und per Suche bei Google durchlesen bevor ich mich melde.
    Die Idee mit dem ICP finde ich super, aber durch das lesen über diese Methode ist mir erstmal bewusst geworden, das der Timer 1 die gleiche Genauigkeit hat wie Timer 0.
    @avr_racer deine Ausführung mit dem Pulsen per CTC finde ich klingt auch sehr Interessant, allerdings kann ich noch nicht folgen wie das Funktioniert.
    Im Handbuch steht dazu folgendes:
    C-2|C-1|C|C+1|C+1
    Wenn ich das richtig verstanden habe Toggelt er bei jedem Übergang von C-1|C den Eingang.
    Das würde aber doch bedeutet, das der Eingang 500ms an und auch aus wäre, außer ich würde C nachdem Pegel ändern. Sehe ich das falsch?

    Ich laß die Frage was das für ein Projekt ist.
    Das Projekt ist eine Positionsbestimmung per Töne. Es wurde vor einigen Monaten per Arduino gemacht. Funktionieren tut es, allerdings sind die Offsetzeiten zu hoch.

    Eigentlich ist das Projekt abgeschlossen, ich benutze es als vorbild zum lernen von Assembler und den Umgang von AVR.

  5. #5
    Erfahrener Benutzer Fleißiges Mitglied Avatar von derNeue
    Registriert seit
    01.01.2011
    Ort
    Bierstadt Radeberg
    Alter
    38
    Beiträge
    101
    http://www.mikrocontroller.net/articles/FAQ#Timer

    Sehr gut die üblichen Timer-Modi beschrieben


    Dennis
    Ich studiere die Wirkung der Sonnenstrahlen auf das Liebesleben der Pflastersteine

  6. #6
    Erfahrener Benutzer Fleißiges Mitglied Avatar von avr_racer
    Registriert seit
    01.04.2014
    Ort
    MecklenburgVorpommern
    Beiträge
    174
    Hallo,

    > Das würde aber doch bedeutet, das der Eingang 500ms an und auch aus wäre,
    Das ist korrekt. Deshalb ja die Anspielung auf den PWM-Mode da kannst du die ON/OFF-Zeit variabel gestalten soll heißen bei z.B.:10Khz = 100µs = 20/100µs Off __ und 80/100µs high
    ----------.

    > außer ich würde C nachdem Pegel ändern.

    Was ist C ? Du meinst den Timer ?


    > Im Handbuch steht dazu folgendes:

    Ich gehe davon aus das du Arduino nutzt, mit diesen hab ich bisher nichts zu tun gehabt. Nutze das Datenblatt des entsprechenden µC weil

    > ich benutze es als vorbild zum lernen von Assembler und den Umgang von AVR.

    nur das Datenblatt ist das Handbuch für den Controller dort bekommt man vielleicht die ein oder andere Info mehr.

  7. #7
    Neuer Benutzer Öfters hier
    Registriert seit
    05.05.2013
    Beiträge
    22
    Nein, das hast du falsch verstanden. Ich rede über das ATMEL_Atmega328P-PU Dokument von der Hauptseite. Angesprochene seite ist die 130. Dort wird es OCRnx statt C genannt.

  8. #8
    Erfahrener Benutzer Fleißiges Mitglied Avatar von avr_racer
    Registriert seit
    01.04.2014
    Ort
    MecklenburgVorpommern
    Beiträge
    174
    ick find dit irgendwie net auf Seite 130 sind Diagramme und die Rede von OCR-1, OCR+1 usw

    hier der Link
    http://www.atmel.com/Images/Atmel-82..._datasheet.pdf

    Achtung wenn du die Includedatei des µC öffnest dann siehst du das dort an einigen Stellen MOMERY MAPPED steht diese Adressen sind nur mit LDS/STS zu erreichen.

    aber vielleicht hilft der Code ein wenig weiter

    Code:
        
            rcall        mode2_T0_init
            rcall        prescaler_T0_on
    
    start:
    
            rjmp        start
    
    mode2_T0_init:;CTC_MODE  OCRx update sofort oder im INT
            sbi            ddrd,6            ;output aktivieren wenn Toggeln am PIND6=OCR0A erwünscht
            ldi            temp0,$80        ;Toggeln oder Clr/Set aktiv muss OCR0A-Register beachtet werden um
            out            OCR0A,temp0        ;____--- oder _------ zu erreichen
        ;mit OCRyx wird die Frequenz festgelegt des Rechtecksignales
            lds            temp0,TIMSK0
            ori            temp0,(0<<OCIE0B||0<<OCIE0A|0<<TOIE0)    ;INTs aktivieren
            sts            TIMSK0,temp0
            
            ldi            temp0,(0<<COM0B1|0<<COM0B0|0<<COM0A1|1<<COM0A0|1<<WGM01|0<<WGM00)    ;zum Toggeln COMyx Einstellungen beachten!!!!!!!!!
            out            TCCR0A,temp0                                    ;
            
            ldi            temp0,(0<<FOC0A|0<<FOC0B|0<<WGM02) 
            out            TCCR0B,temp0
            ret
    
    prescaler_T0_on:
            in            temp0,TCCR0B
            ori            temp0,(0<<CS02|0<<CS01|1<<CS00) ;schmeißt den counter 
            out            TCCR0B,temp0
            sei
            ret
    
    OC0A_int:
            in            temp0,OCR0A
            out            OCR0A,temp0
            reti

Ä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, 09: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, 18:25
  3. Asuro und OSCCAL Register Taktfrequenz
    Von Winne im Forum Asuro
    Antworten: 3
    Letzter Beitrag: 11.09.2005, 08:49
  4. Interne Register und Register in SRAM
    Von FoCus im Forum AVR Hardwarethemen
    Antworten: 9
    Letzter Beitrag: 27.07.2005, 12:06
  5. ADC und USART über Register?!
    Von BASTIUniversal im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 1
    Letzter Beitrag: 29.04.2005, 13:28

Berechtigungen

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

LiFePO4 Speicher Test