ATtiny mit Arduino als ISP

Gast #3292844
Lesenswert?

Hallo,

Ich versuche momentan einen ATtiny44 über einen Arduino Uno als ISP zu 
programmieren. Das Problem liegt momentan bei Eclipse, weil ich dort 
beim kompilieren immer diese Fehlermeldung bekomme:
1
09:57:27 **** Incremental Build of configuration Debug for project test ****
2
Info: Internal Builder is used for build
3
"C:\\WinAVR\\bin\\avrdude" -pt44 -cavrisp -PCOM3 -b19200 -Uflash:w:test.hex:a 
4

5
avrdude: please define PAGEL and BS2 signals in the configuration file for part ATtiny44
6
avrdude: AVR device initialized and ready to accept instructions
7

8
Reading | ################################################## | 100% 0.07s
9

10
avrdude: Device signature = 0x1e9207
11
avrdude: NOTE: FLASH memory has been specified, an erase cycle will be performed
12
         To disable this feature, specify the -D option.
13
avrdude: erasing chip
14
avrdude: please define PAGEL and BS2 signals in the configuration file for part ATtiny44
15
avrdude: reading input file "test.hex"
16
avrdude: error opening test.hex: No such file or directory
17
avrdude: input file test.hex auto detected as invalid format
18
avrdude: can't open input file test.hex: No such file or directory
19
avrdude: write to file 'test.hex' failed
20

21
avrdude done.  Thank you.
22

23

24
09:57:29 Build Finished (took 1s.553ms)

Ich habe das AVR-Eclipse-Plugin istalliert und so eingestellt, wie 
vorgegeben. Ich probiere nun schon seit Stunden mit Eclipse herum und 
bekomme immer die Fehlermeldung "test.hex not found" in irgend einer 
Form.

Jemand Ideen?

Danke schonmal,

Henrik
Gast #3292926
Lesenswert?

Es ist nicht da, wo es sein sollte bzw. dort, wo AVRdude es sucht. es 
ist aber auch nirgendwo sonst.

So, wie ich das verstanden habe, wird erst eine Datei test.elf erzeugt, 
aus der das ein test.hex gemacht wird. Aber keine von beiden gibt es auf 
meinem System.
Gast #3293325
Lesenswert?

Gute Neuigkeiten: Ich habe das ganze schonmal so zum laufen gebracht, 
dass ich jetzt einen µC so programmieren kann, wie ich mir das 
vorstelle.

Das problem ist jetzt aber, dass alles viel zu viel Platz wegnimmt. Das 
LED- Blink-Programm hat so 3,5 kB: in (.text + .data + .bootloader):
1
 
2
#include <avr/io.h>
3

4
#include <util/delay.h>
5

6
#define PAD_LED  1
7
#define PORT_LED PORTB
8
#define DDR_LED  DDRB
9

10
int main(void){
11
    DDR_LED  |= (1 << PAD_LED);
12
   
13
    while(1){
14
       
15
        PORT_LED |= (1 << PAD_LED);
16
        _delay_ms(250);        // Warte 250ms
17
        PORT_LED &= ~(1 << PAD_LED);
18
        _delay_ms(250);        // Warte 250ms
19
    }
20
 
21

22
return 0;
23
}

Weiß jemand, wie ich das niedriger bekomme?

Henrik
Gast #3294723
Lesenswert?

Also das mit dem Delay war auf jeden Fall schonmal für die enorme Größe 
verantwortlich.

Die Optimierung habe ich auch versucht, die funktioniert wunderbar (also 
was die Größe betrifft), allerdings geht es dannach nicht. AVRdude haut 
das problemlos auf den µC, der macht aber nichts. Das gilt für alle drei 
Optimierungsstufen.

Hab ich da war übersehen?

Henrik

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren