-         

Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 12

Thema: Fehler beim compilieren vom Projet mit AVR Studio.

  1. #1
    Benutzer Stammmitglied
    Registriert seit
    18.08.2005
    Beiträge
    86

    Fehler beim compilieren vom Projet mit AVR Studio.

    Anzeige

    Guten Morgen zusammen,

    ich arbeite schon seit Tagen hier an einem Projekt mit AVR-Studio.
    Alles ging gut, bis gestern Abend.

    Ich kann das Projekt nicht mehr compilieren. Es kommt immer die Fehlermeldung:

    GCC plug-in: Error: Object file not found on expected location C:\...Verzeichnise...\test\default\test.elf

    Und da ist auch wirklich die Datei nicht drin, die er sucht.

    Aber ich habe die letzten Tage auch nichts anderes gemacht, wie Taste F7 für "Build" zu drücken und es ging immer.

    Kennt jemand sowas und weiß Rat??

    Danke und Grüße

    popi

  2. #2
    Benutzer Stammmitglied
    Registriert seit
    18.08.2005
    Beiträge
    86
    Ich habe herausgefunden, das es mit dem Zufügen von while(OCR3A <= 0x40) ... zu tun hat.

    Also, folgender Code lässt sich problemlos compilierern, entfernt man die Komentarueichen bei OCR3A... gibts wieder Probleme:

    void main(void)
    {
    DDRB = (1<< DDB4) | (1<< DDB5) | (1<< DDB6) | (1<< DDB7);
    PORTB = (1<< PB4) | (1<< PB5) | (1<< PB6) | (1<< PB7);
    // DDRD = (1<< DDD0);
    // PORTD = (1<< PD0);
    DDRE = (1<< DDE3) | (1<< DDE4) | (1<< DDE5);
    PORTE = (1<< PE3) | (1<< PE4) | (1<< PE5);
    TCCR0 = (1 << WGM00) | (1<< COM01) | (1<< CS00);
    TCCR1A = (1 << WGM10) | (1<< COM1A1) | (1<< COM1B1);
    TCCR1B = (1 << CS10);
    TCCR2 = (1 << WGM20) | (1<< COM21) | (1<< CS20);
    TCCR3A = (1 << WGM30) | (1<< COM3A1) | (1<< COM3B1) | (1<< COM3C1);
    TCCR3B = (1 << CS30);
    //OCR0,OCR2,OCR1A,OCR1B,OCR3A,OCR3B,OCR3C = 0x00;
    OCR3B = 0x02;

    while(x==2)
    {

    while(OCR0 <= 0x60) {for (i=0;i<300;i++) asm volatile("NOP"); OCR0 = OCR0 + 1;}
    while(OCR2 <= 0x40) {for (i=0;i<300;i++) asm volatile("NOP"); OCR2 = OCR2 + 1;}
    while(OCR1A <= 0xAE) {for (i=0;i<100;i++) asm volatile("NOP"); OCR1A = OCR1A + 1;}
    // while(OCR3A <= 0x40) {for (i=0;i<150;i++) asm volatile("NOP"); OCR3A = OCR3A + 1;}
    while(OCR0 >= 0x40) {for (i=0;i<100;i++) asm volatile("NOP"); OCR0 = OCR0 - 1;}
    while(OCR2 >= 0x10) {for (i=0;i<100;i++) asm volatile("NOP"); OCR2 = OCR2 - 1;}
    while(OCR1A >= 0x10) {for (i=0;i<100;i++) asm volatile("NOP"); OCR1A = OCR1A - 1;}
    // while(OCR3A >= 0x01) {for (i=0;i<09;i++) asm volatile("NOP"); OCR3A = OCR3A - 1;}
    }}


    Habt Ihr sowas schon mal gehabt, weiss jemand was man machen soll????

    Danke und Grüße

    popi

  3. #3
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    22.05.2005
    Ort
    12°29´ O, 48°38´ N
    Alter
    48
    Beiträge
    2.731
    Hallo,

    Welche AVR verwendest Du gleich wieder ?

    Kommt weiter oben nicht noch ein anderer Fehler der dann zu diesem führt ?

  4. #4
    Benutzer Stammmitglied
    Registriert seit
    18.08.2005
    Beiträge
    86
    Hallo,

    einen mega64. Aber ich habe den Fehler rausgefuden.
    Misst, man muss genau hinschauen was man tut.

    Grüße

    popi

  5. #5
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    22.05.2005
    Ort
    12°29´ O, 48°38´ N
    Alter
    48
    Beiträge
    2.731
    Düfen wir auch wissen wo's gezwickt hat ?

  6. #6
    Benutzer Stammmitglied
    Registriert seit
    18.08.2005
    Beiträge
    86
    Ihr wollt es nicht wirklich wissen ;o)

    in der auskommetierten Zeile habe ich nicht i<9 sondern i<09 geschrieben und diese Null bedeutete für den Compiler wohl eine Hex-Zahl.

    Wie auch immer, aus...

    // while(OCR3A >= 0x01) {for (i=0;i<09;i++) asm volatile("NOP"); OCR3A = OCR3A - 1;}

    habe ich nun

    // while(OCR3A >= 0x01) {for (i=0;i<9;i++) asm volatile("NOP"); OCR3A = OCR3A - 1;}

    gemacht und es geht...

    Deswegen sagt ich: richtig hinschauen ;o)

    Grüße

    popi

  7. #7
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    21.10.2005
    Ort
    Erde
    Alter
    50
    Beiträge
    1.195
    Diese Null bedeutet für den Compiler eine Oktalzahl und eigentlich sollte der da einen Fehler melden, da die Zahlen nur von 0 bis 7 gehen.

  8. #8
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    22.02.2005
    Beiträge
    385
    Hi,
    ich sehe nicht ganz, wie das Problem mit dem elf-File gelöst wurde. Ich habe momentan das gleiche Problem:

    Code:
    #include <avr/io.h>
    #include "i2cmaster.h"
    
    #define POWER_PORTS_I2C  0x72
    
    int main(void) {
    	i2c_init();                                		// init I2C interface
    	uint8_t ret;
    	ret = i2c_start(POWER_PORTS_I2C + I2C_WRITE);	// set device address and write mode
    	if ( ret ) {
            	i2c_stop();
    	} else {
    		/* issuing start condition ok, device accessible */
    		char value;
    		value = 1;
    		while(1) {
    			i2c_start_wait(POWER_PORTS_I2C + I2C_WRITE); 
    			i2c_write(value);
    			i2c_stop();
    			value = value * 2;
    			if(value > 16) {
    				value = 1;
    			}
    		}
    	}
    	return 1;
    }
    Build -> Compile:
    Code:
    avr-gcc.exe -I"E:\mathias\projects\avr.projects\rnbfra_led\."  -mmcu=atmega32 -Wall -gdwarf-2   -O0 -fsigned-char -MD -MP -MT rnbfra_led.o -MF dep/rnbfra_led.o.d  -c  ../rnbfra_led.c
    Build succeeded with 0 Warnings...
    Build -> Build:
    Code:
    Loaded plugin STK500
    Loaded plugin AVR GCC
    Loaded partfile: C:\Programme\Atmel\AVR Tools\PartDescriptionFiles\ATmega32.xml
    GCC plug-in: Error: Object file not found on expected location E:\mathias\projects\avr.projects\rnbfra_led\default\rnbfra_led.elf
    GCC plug-in: Exported makefile to C:\Dokumente und Einstellungen\mathias\Desktop\Makefile
    GCC plug-in: Error: Object file not found on expected location E:\mathias\projects\avr.projects\rnbfra_led\default\rnbfra_led.elf
    GCC plug-in: Error: Object file not found on expected location E:\mathias\projects\avr.projects\rnbfra_led\default\rnbfra_led.elf
    GCC plug-in: Error: Object file not found on expected location E:\mathias\projects\avr.projects\rnbfra_led\default\rnbfra_led.elf
    GCC plug-in: Error: Object file not found on expected location E:\mathias\projects\avr.projects\rnbfra_led\default\rnbfra_led.elf
    GCC plug-in: Error: Object file not found on expected location E:\mathias\projects\avr.projects\rnbfra_led\default\rnbfra_led.elf
    GCC plug-in: Error: Object file not found on expected location E:\mathias\projects\avr.projects\rnbfra_led\default\rnbfra_led.elf
    GCC plug-in: Error: Object file not found on expected location E:\mathias\projects\avr.projects\rnbfra_led\default\rnbfra_led.elf
    GCC plug-in: Error: Object file not found on expected location E:\mathias\projects\avr.projects\rnbfra_led\default\rnbfra_led.elf

    Unter "Source Files" steht rnbfra.c twimaster.c und i2cmaster.S. Unter "Header Files" nur i2cmaster.h. Ist also alles da was gebraucht wird.

  9. #9
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    07.05.2006
    Beiträge
    183
    Hi ich hab das selbe Problem.

    Gibts ne Lösung?

    mfg c

  10. #10
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    21.10.2005
    Ort
    Erde
    Alter
    50
    Beiträge
    1.195
    Arbeitest Du mit einem externen makefile? Dann musst Du dort die Pfade überprüfen.

Seite 1 von 2 12 LetzteLetzte

Berechtigungen

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