- 3D-Druck Einstieg und Tipps    Werbung      
Ergebnis 1 bis 10 von 17

Thema: Atmega32 mit dem AVR-GCC in Assembler programmieren

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Moderator Robotik Visionär Avatar von radbruch
    Registriert seit
    27.12.2006
    Ort
    Stuttgart
    Alter
    63
    Beiträge
    5.799
    Hallo

    Ich find das voll clever wie du das anpackst.

    /* Port D */
    #define PIND _SFR_IO8(0x10)
    #define DDRD _SFR_IO8(0x11)
    #define PORTD _SFR_IO8(0x12)

    Das findet man in der Datei iom32.h die von io.h eingebunden wird. Find ich eh ziemlich "unsportlich":

    #include <avr/io.h>

    Gruß

    mic
    Bild  
    Atmel’s products are not intended, authorized, or warranted for use
    as components in applications intended to support or sustain life!

  2. #2
    Erfahrener Benutzer Roboter-Spezialist Avatar von -schumi-
    Registriert seit
    30.12.2009
    Ort
    Wasserburg am Inn / Bayern
    Alter
    32
    Beiträge
    449
    Ich find das voll clever wie du das anpackst.
    Vielen Dank! :-D

    /* Port D */
    #define PIND _SFR_IO8(0x10)
    #define DDRD _SFR_IO8(0x11)
    #define PORTD _SFR_IO8(0x12)

    Das findet man in der Datei iom32.h die von io.h eingebunden wird. Find ich eh ziemlich "unsportlich":

    #include <avr/io.h>
    Du meinst also, ich sollte am Anfang meiner main.S anstatt #include <avr/io.h> die defines du du eben genannt hast verwenden?

    Ich müsste das dann aber für alle Register machen, also für alle Ports und was halt noch so zusammenkommt... Da nutze ich lieber die Vorteile die der AVR-GCC bietet und schummle ein bischen :-D

    (Hab auch schon versucht die delay.h für Wartezeiten zu benutzen, aber der schmeisst schon beim #include <avr/delay.h> Fehler ohne Ende^^)

  3. #3
    Moderator Robotik Einstein Avatar von Kampi
    Registriert seit
    21.11.2009
    Ort
    Monheim, Nordrhein-Westfalen, Germany
    Alter
    36
    Beiträge
    3.501
    Ach komm stell dich nicht so an Bild  
    Timer in ASM sind doch leicht. Musst nur 1x die richtigen Bits in die Register schieben und das war es schon. Das einziger schwere ist wieder die ISR wegen Registerinhalte retten usw. aber das ist bei jeder ISR so.

  4. #4
    Erfahrener Benutzer Roboter-Spezialist Avatar von -schumi-
    Registriert seit
    30.12.2009
    Ort
    Wasserburg am Inn / Bayern
    Alter
    32
    Beiträge
    449
    Ich hab jetzt ein Programm geschrieben, das folgendes macht: Normal leuchtet LED1 und solang man Taster1 drückt leuchtet LED2

    Code:
    Code:
    #define PIND    0x10
    #define DDRD    0x11
    #define PORTD   0x12
    
    
    #define PINB    0x16
    #define DDRB    0x17
    #define PORTB   0x18
                                
    .text
    .global main
    main:
        
        LDI r24, 255
        OUT DDRD, r24
        
        LDI r24, 0
        OUT DDRB, r24
            
        Hauptschleife:
            SBIC PINB, 1
            LDI r24, 0b00100000
            SBIS PINB, 1
            LDI r24, 0b01000000
            OUT PORTD, r24
            rjmp Hauptschleife
    Und funzt auch... :-D

  5. #5
    Neuer Benutzer Öfters hier
    Registriert seit
    13.11.2011
    Beiträge
    29
    Ich habe mal eine abweichende Frage dazu und zwar ist es mit dem GCC auch möglich die AT&T Syntax zu benutzen?

Ähnliche Themen

  1. Frage zum Programmieren im Assembler
    Von Toni224 im Forum PIC Controller
    Antworten: 11
    Letzter Beitrag: 12.02.2010, 18:13
  2. IRQ Programmieren in Assembler
    Von cmc im Forum Assembler-Programmierung
    Antworten: 6
    Letzter Beitrag: 08.03.2007, 11:12
  3. ASURO in Assembler programmieren!
    Von Ronny10 im Forum Asuro
    Antworten: 0
    Letzter Beitrag: 06.01.2007, 13:30
  4. Wie in Assembler programmieren?
    Von Jens im Forum Controller- und Roboterboards von Conrad.de
    Antworten: 5
    Letzter Beitrag: 22.04.2006, 16:34
  5. Voyage 200 in Assembler programmieren?
    Von Murus im Forum Microcontroller allgemeine Fragen/Andere Microcontroller
    Antworten: 11
    Letzter Beitrag: 04.10.2005, 19:10

Berechtigungen

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

    Werbung      LiFePO4 Speicher Test