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

Thema: XC8 inline Assembler

Baum-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #11
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    05.11.2007
    Beiträge
    1.076
    Hallo zusammen,
    ich wollte "mal wieder" etwas Assembler in meinen XC8 Code bringen,
    dafür wollte ich aber keinen neuen Thread öffnen, daher führe ich das mal hier weiter:

    Der XC8 inline Assembler scheint irgendwie überhaupt nicht mit dem XC8-Compiler zu harmonieren.
    Ich kann weder auf Variablen noch auf Konstanten zugreifen, es gibt ständig nur Fehlermeldungen.

    Hier mal ein Auschnitt des Screenshoots: ich hab mal den Fehlermeldungen daneben geschrieben

    Klicke auf die Grafik für eine größere Ansicht

Name:	xc8_inline_2.jpg
Hits:	8
Größe:	60,8 KB
ID:	33294

    Hier ein Ausschnitt des inline Codes:
    Code:
    #define LED_COUNT 24
    unsigned char LedArray[LED_COUNT];
    unsigned char byteCount;
    unsigned char bitCount;
    
    void LedShiftOut(void)
    {
      asm("BANKSEL LedArray");
      asm("LFSR FSR0,LedArray");
    
      asm("BANKSELECT byteCount");
      asm("movlw LED_COUNT");
      asm("movwf byteCount");
    
    asm("ByteLoop:");
      asm("movlw 8");
      asm("movwf bitCount");
      asm("movwi fsr0++");
    
    asm("BitLoop:");
      asm("RRF WREG,F");
      asm("btfss STATUS,Z");
      asm("goto isOne");
    
    asm("isZero:");
      asm("bcf LATA,5"); 
      asm("NOP");
      asm("NOP");  
      asm("goto BitLoop");
      
    asm("isOne:");
      asm("bsf LATA,5");
      asm("NOP");
      asm("NOP");  
      
      asm("decfsz bitCount,F");
      asm("goto BitLoop");
      
      asm("decfsz byteCount,F");
      asm("goto ByteLoop");
      
      // 50us Pause
      
    }
    was mache ich denn falsch ?, das kann doch nicht so kompliziert sein.....

    Es wird mir wieder Mal nix anderes übrig bleiben als den gesamten Code in Assembler zu programmieren.

    [edit]
    auf dei Variablen kann ich evtl. zugreifen wenn ich einen Unterstrich benutze, zumindest meckert der Compiler dann nicht.
    Es bleiben aber noch genug Probleme übrig...
    Geändert von Siro (22.02.2018 um 22:55 Uhr)

Ähnliche Themen

  1. Bascom Inline-Assembler
    Von Che Guevara im Forum Assembler-Programmierung
    Antworten: 64
    Letzter Beitrag: 07.02.2012, 19:00
  2. Inline Assembler
    Von Che Guevara im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 16
    Letzter Beitrag: 01.02.2010, 19:25
  3. AVR GCC inline Assembler
    Von chientech im Forum Assembler-Programmierung
    Antworten: 1
    Letzter Beitrag: 26.09.2009, 16:39
  4. Inline Assembler für Anfänger
    Von 1udo1 im Forum C - Programmierung (GCC u.a.)
    Antworten: 3
    Letzter Beitrag: 25.10.2007, 19:53
  5. Parameterübergabe bei Inline-Assembler
    Von ogni42 im Forum C - Programmierung (GCC u.a.)
    Antworten: 21
    Letzter Beitrag: 30.03.2006, 13:32

Berechtigungen

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

12V Akku bauen