- MultiPlus Wechselrichter Insel und Nulleinspeisung Conrad         
Seite 10 von 11 ErsteErste ... 891011 LetzteLetzte
Ergebnis 91 bis 100 von 104

Thema: ASURO ... ein kleiner Wettbewerb

  1. #91
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    05.09.2007
    Beiträge
    168
    Anzeige

    Powerstation Test
    Zitat Zitat von izaseba
    Hallo stochri,
    Ich habe einfach alles über die Odometrie gemacht,
    Geradefahren tut mein Asuro schon so, da habe ich gottseidank nichts machen brauchen
    (hatte auch nicht viel Zeit um das auch noch zu programmieren)
    und die Winkel, ich habe gezählt wieviele schwarz-weiß Übergänge bei 90 grad stattfinden (ich habe die scheiben mit 4 weißen und 4 schwarzen Feldern drauf) und das waren genau 50.
    Na ja dann kamen noch 75 für 135 grad und Fertig.
    Für die Strecke habe ich 100 Übergänge genommen und für die diagonale und das Dach habe ich den Herrn Pytagoras befragt, stimmte zwar nicht ganz genau, wegen dem Schlupf (Theorie und Praxis) also noch etwas angepasst und fertig.
    Anbei mein Programm, da ich ein Purist bin und C an meinem Rechner schon immer benutze, habe ich das Programm im Assembler geschrieben.
    Ist zwar nicht ganz perfekt, aber wie Du schon sagtest, schönes Wetter, noch Kirmes im Dorf, die Bruderschaft hat gerufen, naja nicht viel Zeit gehabt.

    Code:
    ;Version 1.0
    ;Odometrie nach dem Beispiel von Rechteck.c
    .include "m8def.inc"
    .equ fwd = PB5		;vor
    .equ rwd = PB4		;zurück
    .equ encodertrue = 7 	;Bit 7 von tooglereg für Odometrie an/aus
    .equ kolisionflag = 6   ;Bit 6 von tooglereg für Kolisionerkennung
    .equ toogleflagL = 2	;Hat eine Änderung am Rad Links stattgefunden ?
    .equ toogleflagR = 1	;Hat eine Änderung am Rad Rechts stattgefunden?
    .equ toogle = 0		;Bit 0 von tooglereg für Rad R "0" und Rad L "1" umzuschalten
    .equ geschwindigkeit = 0xA0
    .equ encoderon = 0x80
    .equ encoderoff = 0x7F 
    .equ rechterwinkel = 53 ; 90 grad rechts sind genau 53 schritte
    .equ rechterwinkel2 = 54 ; 90 grad links sind genau 54 schritte
    .equ halbrechterwinkel = 80 ;135 grad rechts
    .equ weg = 100		;soll 300 schritte fahren
    .equ weglang = 150      ;Langer Weg diagonal
    .equ wegkurz = 50	;Kurzer Weg für das Dach
    .def encoder_leftL = R1
    .def encoder_leftH = R2
    .def encoder_rightL = R3
    .def encoder_rightH = R4
    .def vergleicherL = R5
    .def vergleicherH = R6
    .def tmp = R16 	; Multipurose
    .def tmpi = R17 ; Multipurose für Interrupts
    .def tmpi2 = R19 ;Multipurose 2 für 16 Bit rechnen
    .def tmp2 = R20  ;Multipurose für 16 Bit rechnen
    .def geschlinks = R21	;geschwindigkeit linkes Rad
    .def geschrechts = R22	;geschwindigkeit rechtes Rad
    .def tooglereg = R18	;Toogle Register
    .org 0x00
    	rjmp reset	;ResetVector
    
    .org ADCCaddr
    	rjmp ADCcomplete	; ADC Interrupt Vector Address
    
    reset:
    	;Stack einrichten
    	ldi tmp,HIGH(RAMEND)
    	out SPH,tmp
    	ldi tmp,LOW(RAMEND)
    	out SPL,tmp
    	;Stack fertig
    
    	ldi tooglereg,0x00
    	ori tooglereg,encoderon
    	;PWM einstellen
    	ldi tmp,(1<<WGM10) | (1<<COM1A1) | (1<<COM1B1)
    	out TCCR1A,tmp
    	ldi tmp,(1<<CS11)
    	out TCCR1B,tmp
    	;DDR für Tastenabfrage		
    	
    
    	;A/D Conversion
    	ldi tmp,(1<< ADEN) | (1<<ADFR) | (1<<ADIE) | (1<<ADSC) | (1<<ADPS0) | (1<<ADPS1) | (1<<ADPS2)
    	out ADCSRA,tmp
    	ldi tmp,(1<<REFS0) | (1<<ADLAR) | (1<<MUX0)
    	out ADMUX,tmp 
    	; DDR für Motor Rechts und Statusled green
    	ldi tmp,(1<<PB0) |(1<<PB1) | (1<<PB2) | (1<<PB5) | (1<<PB4)
    	out DDRB,tmp
    	;DDR für Motor Links,Statusled red, LED für Linienverfolgung und LEDs
    	;Odometrie und Backleds
    	ldi tmp,(1<<PD2) | (1<<PD4) | (1<<PD5) | (1<<PD6) | (1<<PD7)
    	out DDRD,tmp
    	cbi DDRD,PD3
    	cbi DDRC,PC0	;schalte PC0 als eingang
    	cbi DDRC,PC1	;schalte PC0 als eingang
    	sbi PORTD,PD7 ;schalte Odometrie LEDs ein
    	cbi PORTB,PB0	;Status LED aus
    	cbi PORTD,PD2	;Dito
    			;ldi tmp,LOW(weg)
    			;mov vergleicherL,tmp
    			;ldi tmp,HIGH(weg)
    			;mov vergleicherH,tmp
    			;sbi PORTD,PD6
    	ldi geschrechts,geschwindigkeit
    	ldi geschlinks,geschwindigkeit	
    	sei
    main:
    	rcall motorengesch
    	
    	rcall ladeweg
    	rcall fahre
    	rcall drehe
    	rcall ladeweg
    	rcall fahre
    	rcall drehe
    	rcall ladeweg
    	rcall fahre
    	rcall drehe
    	rcall ladeweg
    	rcall fahre
    	rcall drehehalb
    	rcall ladeweglang
    	rcall fahre
    	rcall drehelinks
    	rcall ladewegkurz
    	rcall fahre
    	rcall drehelinks
    	rcall ladewegkurz
    	rcall fahre
    	rcall drehelinks
    	rcall ladeweglang
    	rcall fahre
    	rcall motorenloeschen
    stop:
    	rjmp stop
    
    ladeweg:
    	cli
    	ldi tmp,LOW(weg)
    	mov vergleicherL,tmp
    	ldi tmp,HIGH(weg)
    	mov vergleicherH,tmp
    	sei
    	rcall odozaehlernull
    	sbi PORTB,fwd
    	sbi PORTD,fwd
    	ret
    
    ladeweglang:
    	cli
    	ldi tmp,LOW(weglang)
    	mov vergleicherL,tmp
    	ldi tmp,HIGH(weglang)
    	mov vergleicherH,tmp
    	sei
    	rcall odozaehlernull
    	sbi PORTB,fwd
    	sbi PORTD,fwd
    	ret
    
    ladewegkurz:
    	cli
    	ldi tmp,LOW(wegkurz)
    	mov vergleicherL,tmp
    	ldi tmp,HIGH(wegkurz)
    	mov vergleicherH,tmp
    	sei
    	rcall odozaehlernull
    	sbi PORTB,fwd
    	sbi PORTD,fwd
    	ret
    
    
    drehe:	
    	rcall motorenloeschen	;motoren STOP
    	ldi tmp,rechterwinkel	;Lade  90 grad Drehung 
    	mov vergleicherL,tmp
    	ldi tmp,0x00
    	mov vergleicherH,tmp
    	rcall odozaehlernull	;Wegezähler löschen
    	sbi PORTD,fwd		;Jetzt Drehen wir uns was
    	rcall fahre	;Jetzt warten bis wir uns um 90 grad gedreht haben
    	rcall motorenloeschen	;motoren STOP
    	ret
    
    drehelinks:	
    	rcall motorenloeschen	;motoren STOP
    	ldi tmp,rechterwinkel2	;Lade 30 schritte für die 90 grad Drehung 
    	mov vergleicherL,tmp
    	ldi tmp,0x00
    	mov vergleicherH,tmp
    	rcall odozaehlernull	;Wegezähler löschen
    	sbi PORTB,fwd		;Jetzt Drehen wir uns was
    	rcall fahrelinks	;Jetzt warten bis wir uns um 90 grad gedreht haben
    	rcall motorenloeschen	;motoren STOP
    	ret
    
    
    drehehalb:	
    	rcall motorenloeschen	;motoren STOP
    	ldi tmp,halbrechterwinkel	;135 grad Drehung 
    	mov vergleicherL,tmp
    	ldi tmp,0x00
    	mov vergleicherH,tmp
    	rcall odozaehlernull	;Wegezähler löschen
    	sbi PORTD,fwd		;Jetzt Drehen wir uns was
    	rcall fahre	
    	rcall motorenloeschen	;motoren STOP
    	ret
    
    fahre:
    	cli
    
    	mov tmp,encoder_rightL
    	mov tmp2,encoder_rightH
    	cp vergleicherL,tmp	;Vergleiche gefahrenen Weg
    	cpc vergleicherH,tmp2
    	sei
    	in tmp,SREG
    	sbrs tmp,0
    	rjmp fahre
    	ret
    fahrelinks:
    	cli
    	mov tmp,encoder_leftL
    	mov tmp2,encoder_leftH
    	cp vergleicherL,tmp	;Vergleiche gefahrenen Weg
    	cpc vergleicherH,tmp2
    	sei
    	in tmp,SREG
    	sbrs tmp,0
    	rjmp fahrelinks
    	ret
    	 
    .include "motoren.asm"
    .include "LED.asm"
    
    ADCcomplete:
    	in tmpi,SREG
    	push tmpi
    	ldi tmpi2,0x00
    	in tmpi,ADCL
    	in tmpi,ADCH
    	sbrs tooglereg,toogle		;Wenn Bit toogle = 1 Weiter bei Rechtem Rad
    	rjmp radlinks
    	;Rad Rechts
    	sbrs tooglereg,toogleflagR
    	rjmp flagRfalse
    	;flagRtrue
    	cpi tmpi,0x8C
    	brsh ausR
    	ldi tmpi,0x01
    	add encoder_rightL,tmpi
    	adc encoder_rightH,tmpi2
    			;debug
    	cbi PORTD,PD2
    	sbi PORTB,PB0
    			;ende debug
    	andi tooglereg,0xFD
    	rjmp ausR
    flagRfalse:
    	cpi tmpi,0xA0
    	brlo ausR
    	ldi tmpi,0x01
    	add encoder_rightL,tmpi
    	adc encoder_rightH,tmpi2
    			;debug
    	cbi PORTD,PD2
    	sbi PORTB,PB0
    			;ende debug
    	ori tooglereg,(1<<toogleflagR)
    ausR:
    	sbi ADMUX,MUX0
    	andi tooglereg,0xFE
    	rjmp rausadc	
    radlinks:
    	sbrs tooglereg,toogleflagL	;ist toogleflagL gesetzt? wenn ja springe zu flagtrue
    	rjmp flagLfalse			;wenn nicht springe zu flagLfalse
    	;flagLtrue
    	cpi tmpi,0x8C			;vergleiche mit 0xA0
    	brsh ausL			;wenn größer oder gleich springe zu ausL
    	ldi tmpi,0x01
    	add encoder_leftL,tmpi		;encoder_left++
    	adc encoder_leftH,tmpi2
    			;Debug
    	sbi PORTD,PD2
    	cbi PORTB,PB0
    			;Ende Debug
    	andi tooglereg,0xFB		;Lösche flagL
    	rjmp ausL
    flagLfalse:
    	cpi tmpi,0xA0
    	brlo ausL
    	ldi tmpi,0x01
    	add encoder_leftL,tmpi
    	adc encoder_leftH,tmpi2
    			;Debug
    	sbi PORTD,PD2
    	cbi PORTB,PB0
    			;ende debug
    	ori tooglereg,(1<<toogleflagL)
    ausL:	
    	cbi ADMUX,MUX0
    	ori tooglereg,(1<<toogle)
    	rjmp rausadc
    	
    rausadc:
    	pop tmpi
    	out SREG,tmpi
    	reti
    Könntest du bitte die Dateien motoren.asm und LED.asm posten?

    Danke!

  2. #92
    Benutzer Stammmitglied
    Registriert seit
    16.06.2005
    Beiträge
    42
    Ich Suche eine bessere Stifthalterung. Möglichst eine solche die automatisch vom Controller abgesenkt und angehoben werden kann. Dadurch würde sich mehr zeichnen lassen. Hat jemand Ideen?

  3. #93
    Benutzer Stammmitglied
    Registriert seit
    29.12.2008
    Ort
    Landshut
    Beiträge
    31
    Vielleicht mit einem Servo als Stifthalterung, wie auf diesem Video: http://www.youtube.com/watch?v=6E_e8AHvhNg

  4. #94
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    30.12.2008
    Beiträge
    1.427
    gilt der wettkampf noch als aktuell? wenn ja probier ich mich auch mal
    was gibt es noch zu sagen

  5. #95
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    08.01.2009
    Ort
    NRW
    Beiträge
    562
    Hallo

    Man könnte ja eine neue runde starten finden sich bestimmt viele interessenten :P

    Gruß Thund3r

  6. #96
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    29.05.2005
    Beiträge
    1.018
    Ja, Runde 2.

    Ich bin mal gespannt, was dann noch alles kommt.
    Ich selbst hatte ja meine Lösung erst 'etwas' später geliefert, und einiges hier aus dem Forum dazu erlesen.
    Nun ist im Forum noch viel mehr Material vorhanden um daraus vielleicht eine Version zu bauen, die komplett ohne ODO-Probleme losmalen kann.
    Z.B. automatische Helligkeitsanpassung; Mittelwertbildung der Messdaten, u.s.w.

    Nur zu und viel Spaß dabei.

    Gruß Sternthaler
    Lieber Asuro programieren als arbeiten gehen.

  7. #97
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    08.01.2009
    Ort
    NRW
    Beiträge
    562
    Hallo

    Ja nun müssten die zeichnungen viel besser werden
    Man kann ja auch den stift an einen servo anschließen der hebt und senkt hab ich in einem video auf youtube zu dem thema gesehen^^

    Gruß Thund3r

  8. #98

    Seite 2 Programm von Sternthaler

    wenn ich die datein benutzen will fom sternthaler kommt beim kompeilerdiese fehlermeldung:

    Code:
    Asuro Flash (Alias Eierlegendewollmilchsau)	 V1.4.6.56 (c) O.O. Müller 2008
    User has admin rights.
    Processor branding AMD Athlon(tm) 64 X2 Dual Core Processor 4800+,  OS WINXP
    Hello Besitzer on HENRY, have fun :)
    
    >Session Environment Variables:
    AF_AVRDIR=D:\WinAVR
    AF_PROJECT=Project1
    AF_SOURCE_FILES=
    AF_ASM_SRC_FILES=
    AF_PRGDIR=D:\Programme\AsuroFlash
    AF_PRJDIR=C:\Dokumente und Einstellungen\All Users\Anwendungsdaten\AsuroFlash
    AF_ASURO_LIB_PATH=%AllUsersProfile%\asuro_lib\lib
    >Ready.
    File test.c saved.
    >Session Environment Variables:
    AF_AVRDIR=D:\WinAVR
    AF_PROJECT=AsuroTest
    AF_SOURCE_FILES=test.c asuro.c
    AF_ASM_SRC_FILES=
    AF_PRGDIR=D:\Programme\AsuroFlash
    AF_PRJDIR=C:\Dokumente und Einstellungen\All Users\Anwendungsdaten\AsuroFlash\Projects\TestAsuroProjekt
    AF_ASURO_LIB_PATH=%AllUsersProfile%\asuro_lib\lib
    File test.c saved.
    File asuro.c saved.
    File asuro.h saved.
    >Default make_all.cmd file created.
    >Default makefile created.
    Make
    C:\Dokumente und Einstellungen\All Users\Anwendungsdaten\AsuroFlash\Projects\TestAsuroProjekt>D:\WinAVR\utils\bin\make.exe all 
    set -e; avr-gcc -MM -mmcu=atmega8 -I. -g -Os -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-ahlms=asuro.lst -ID:\Programme\AsuroFlash\include asuro.c \
    	| sed 's,\(.*\)\.o[ :]*,\1.o \1.d : ,g' > asuro.d; \
    	[ -s asuro.d ] || rm -f asuro.d
    set -e; avr-gcc -MM -mmcu=atmega8 -I. -g -Os -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-ahlms=test.lst -ID:\Programme\AsuroFlash\include test.c \
    	| sed 's,\(.*\)\.o[ :]*,\1.o \1.d : ,g' > test.d; \
    	[ -s test.d ] || rm -f test.d
    -------- begin --------
    avr-gcc --version
    avr-gcc (WinAVR 20100110) 4.3.3
    Copyright (C) 2008 Free Software Foundation, Inc.
    This is free software; see the source for copying conditions.  There is NO
    warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
    
    avr-gcc -c -mmcu=atmega8 -I. -g -Os -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-ahlms=test.lst -ID:\Programme\AsuroFlash\include test.c -o test.o
    test.c:35: warning: function declaration isn't a prototype
    test.c: In function 'straightcalib':
    test.c:36: warning: implicit declaration of function 'Encoder_Set'
    test.c:41: warning: implicit declaration of function 'Msleep'
    test.c:53: warning: implicit declaration of function 'PrintInt'
    test.c: At top level:
    test.c:75: warning: function declaration isn't a prototype
    test.c: In function 'main':
    test.c:168: warning: implicit declaration of function 'Encoder_Init'
    avr-gcc -c -mmcu=atmega8 -I. -g -Os -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-ahlms=asuro.lst -ID:\Programme\AsuroFlash\include asuro.c -o asuro.o
    avr-gcc -mmcu=atmega8 -I. -g -Os -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-ahlms=test.o -ID:\Programme\AsuroFlash\include test.o asuro.o  --output AsuroTest.elf -Wl,-Map=AsuroTest.map,--cref -ID:\Programme\AsuroFlash\lib -lm
    test.o: In function `go':
    C:\Dokumente und Einstellungen\All Users\Anwendungsdaten\AsuroFlash\Projects\TestAsuroProjekt/test.c:125: undefined reference to `Encoder_Set'
    C:\Dokumente und Einstellungen\All Users\Anwendungsdaten\AsuroFlash\Projects\TestAsuroProjekt/test.c:129: undefined reference to `Msleep'
    test.o: In function `turn':
    C:\Dokumente und Einstellungen\All Users\Anwendungsdaten\AsuroFlash\Projects\TestAsuroProjekt/test.c:109: undefined reference to `Encoder_Set'
    C:\Dokumente und Einstellungen\All Users\Anwendungsdaten\AsuroFlash\Projects\TestAsuroProjekt/test.c:113: undefined reference to `Msleep'
    test.o: In function `nikolaus':
    C:\Dokumente und Einstellungen\All Users\Anwendungsdaten\AsuroFlash\Projects\TestAsuroProjekt/test.c:142: undefined reference to `Msleep'
    C:\Dokumente und Einstellungen\All Users\Anwendungsdaten\AsuroFlash\Projects\TestAsuroProjekt/test.c:142: undefined reference to `Msleep'
    C:\Dokumente und Einstellungen\All Users\Anwendungsdaten\AsuroFlash\Projects\TestAsuroProjekt/test.c:144: undefined reference to `Msleep'
    C:\Dokumente und Einstellungen\All Users\Anwendungsdaten\AsuroFlash\Projects\TestAsuroProjekt/test.c:145: undefined reference to `Msleep'
    test.o:C:\Dokumente und Einstellungen\All Users\Anwendungsdaten\AsuroFlash\Projects\TestAsuroProjekt/test.c:146: more undefined references to `Msleep' follow
    test.o: In function `turncalib':
    C:\Dokumente und Einstellungen\All Users\Anwendungsdaten\AsuroFlash\Projects\TestAsuroProjekt/test.c:76: undefined reference to `Encoder_Set'
    C:\Dokumente und Einstellungen\All Users\Anwendungsdaten\AsuroFlash\Projects\TestAsuroProjekt/test.c:82: undefined reference to `Msleep'
    C:\Dokumente und Einstellungen\All Users\Anwendungsdaten\AsuroFlash\Projects\TestAsuroProjekt/test.c:95: undefined reference to `Msleep'
    test.o: In function `straightcalib':
    C:\Dokumente und Einstellungen\All Users\Anwendungsdaten\AsuroFlash\Projects\TestAsuroProjekt/test.c:36: undefined reference to `Encoder_Set'
    C:\Dokumente und Einstellungen\All Users\Anwendungsdaten\AsuroFlash\Projects\TestAsuroProjekt/test.c:41: undefined reference to `Msleep'
    C:\Dokumente und Einstellungen\All Users\Anwendungsdaten\AsuroFlash\Projects\TestAsuroProjekt/test.c:44: undefined reference to `Msleep'
    C:\Dokumente und Einstellungen\All Users\Anwendungsdaten\AsuroFlash\Projects\TestAsuroProjekt/test.c:48: undefined reference to `Msleep'
    C:\Dokumente und Einstellungen\All Users\Anwendungsdaten\AsuroFlash\Projects\TestAsuroProjekt/test.c:61: undefined reference to `Msleep'
    test.o: In function `main':
    C:\Dokumente und Einstellungen\All Users\Anwendungsdaten\AsuroFlash\Projects\TestAsuroProjekt/test.c:168: undefined reference to `Encoder_Init'
    C:\Dokumente und Einstellungen\All Users\Anwendungsdaten\AsuroFlash\Projects\TestAsuroProjekt/test.c:177: undefined reference to `Msleep'
    C:\Dokumente und Einstellungen\All Users\Anwendungsdaten\AsuroFlash\Projects\TestAsuroProjekt/test.c:183: undefined reference to `Msleep'
    C:\Dokumente und Einstellungen\All Users\Anwendungsdaten\AsuroFlash\Projects\TestAsuroProjekt/test.c:189: undefined reference to `Msleep'
    C:\Dokumente und Einstellungen\All Users\Anwendungsdaten\AsuroFlash\Projects\TestAsuroProjekt/test.c:193: undefined reference to `Msleep'
    C:\Dokumente und Einstellungen\All Users\Anwendungsdaten\AsuroFlash\Projects\TestAsuroProjekt/test.c:195: undefined reference to `Msleep'
    make: *** [AsuroTest.elf] Error 1
    
    ExitCode 2
    >Ready.
    File test.c saved.
    >Session Environment Variables:
    AF_AVRDIR=D:\WinAVR
    AF_PROJECT=AsuroTest
    AF_SOURCE_FILES=test.c asuro.c D:\Downloads\V10\test.c D:\Downloads\V10\asuro_st.c
    AF_ASM_SRC_FILES=
    AF_PRGDIR=D:\Programme\AsuroFlash
    AF_PRJDIR=C:\Dokumente und Einstellungen\All Users\Anwendungsdaten\AsuroFlash\Projects\TestAsuroProjekt
    AF_ASURO_LIB_PATH=%AllUsersProfile%\asuro_lib\lib
    >Default make_all.cmd file created.
    >Default makefile created.
    Make
    C:\Dokumente und Einstellungen\All Users\Anwendungsdaten\AsuroFlash\Projects\TestAsuroProjekt>D:\WinAVR\utils\bin\make.exe all 
    set -e; avr-gcc -MM -mmcu=atmega8 -I. -g -Os -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-ahlms=D:\Downloads\V10\asuro_st.lst -ID:\Programme\AsuroFlash\include D:\Downloads\V10\asuro_st.c \
    	| sed 's,\(.*\)\.o[ :]*,\1.o \1.d : ,g' > D:\Downloads\V10\asuro_st.d; \
    	[ -s D:\Downloads\V10\asuro_st.d ] || rm -f D:\Downloads\V10\asuro_st.d
    avr-gcc.exe: D:DownloadsV10asuro_st.c: No such file or directory
    avr-gcc.exe: no input files
    set -e; avr-gcc -MM -mmcu=atmega8 -I. -g -Os -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-ahlms=D:\Downloads\V10\test.lst -ID:\Programme\AsuroFlash\include D:\Downloads\V10\test.c \
    	| sed 's,\(.*\)\.o[ :]*,\1.o \1.d : ,g' > D:\Downloads\V10\test.d; \
    	[ -s D:\Downloads\V10\test.d ] || rm -f D:\Downloads\V10\test.d
    avr-gcc.exe: D:DownloadsV10test.c: No such file or directory
    avr-gcc.exe: no input files
    -------- begin --------
    avr-gcc --version
    avr-gcc (WinAVR 20100110) 4.3.3
    Copyright (C) 2008 Free Software Foundation, Inc.
    This is free software; see the source for copying conditions.  There is NO
    warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
    
    avr-gcc -c -mmcu=atmega8 -I. -g -Os -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-ahlms=D:\Downloads\V10\test.lst -ID:\Programme\AsuroFlash\include D:\Downloads\V10\test.c -o D:\Downloads\V10\test.o
    In file included from D:\Downloads\V10\/asuro_st.h:30,
                     from D:\Downloads\V10\test.c:41:
    d:/winavr/lib/gcc/../../avr/include/avr/signal.h:36:2: warning: #warning "This header file is obsolete.  Use <avr/interrupt.h>."
    D:\Downloads\V10\test.c: In function 'menue':
    D:\Downloads\V10\test.c:293: warning: pointer targets in passing argument 1 of 'SerWrite' differ in signedness
    D:\Downloads\V10\test.c:294: warning: pointer targets in passing argument 1 of 'SerWrite' differ in signedness
    D:\Downloads\V10\test.c:295: warning: pointer targets in passing argument 1 of 'SerWrite' differ in signedness
    D:\Downloads\V10\test.c:296: warning: pointer targets in passing argument 1 of 'SerWrite' differ in signedness
    D:\Downloads\V10\test.c:297: warning: pointer targets in passing argument 1 of 'SerWrite' differ in signedness
    D:\Downloads\V10\test.c:298: warning: pointer targets in passing argument 1 of 'SerWrite' differ in signedness
    D:\Downloads\V10\test.c:299: warning: pointer targets in passing argument 1 of 'SerWrite' differ in signedness
    D:\Downloads\V10\test.c:300: warning: pointer targets in passing argument 1 of 'SerWrite' differ in signedness
    D:\Downloads\V10\test.c:325: warning: pointer targets in passing argument 1 of 'SerWrite' differ in signedness
    D:\Downloads\V10\test.c:326: warning: pointer targets in passing argument 1 of 'SerWrite' differ in signedness
    D:\Downloads\V10\test.c:327: warning: pointer targets in passing argument 1 of 'SerWrite' differ in signedness
    D:\Downloads\V10\test.c:328: warning: pointer targets in passing argument 1 of 'SerWrite' differ in signedness
    D:\Downloads\V10\test.c:329: warning: pointer targets in passing argument 1 of 'SerWrite' differ in signedness
    D:\Downloads\V10\test.c:330: warning: pointer targets in passing argument 1 of 'SerWrite' differ in signedness
    D:\Downloads\V10\test.c:352: warning: pointer targets in passing argument 1 of 'SerWrite' differ in signedness
    D:\Downloads\V10\test.c:353: warning: pointer targets in passing argument 1 of 'SerWrite' differ in signedness
    D:\Downloads\V10\test.c:383: warning: pointer targets in passing argument 1 of 'SerWrite' differ in signedness
    D:\Downloads\V10\test.c:384: warning: pointer targets in passing argument 1 of 'SerWrite' differ in signedness
    D:\Downloads\V10\test.c:386: warning: pointer targets in passing argument 1 of 'SerWrite' differ in signedness
    avr-gcc -c -mmcu=atmega8 -I. -g -Os -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-ahlms=D:\Downloads\V10\asuro_st.lst -ID:\Programme\AsuroFlash\include D:\Downloads\V10\asuro_st.c -o D:\Downloads\V10\asuro_st.o
    In file included from D:\Downloads\V10\/asuro_st.h:30,
                     from D:\Downloads\V10\asuro_st.c:27:
    d:/winavr/lib/gcc/../../avr/include/avr/signal.h:36:2: warning: #warning "This header file is obsolete.  Use <avr/interrupt.h>."
    D:\Downloads\V10\asuro_st.c: In function 'PrintInt':
    D:\Downloads\V10\asuro_st.c:975: warning: pointer targets in passing argument 1 of 'SerWrite' differ in signedness
    avr-gcc -mmcu=atmega8 -I. -g -Os -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-ahlms=test.o -ID:\Programme\AsuroFlash\include test.o asuro.o D:\Downloads\V10\test.o D:\Downloads\V10\asuro_st.o  --output AsuroTest.elf -Wl,-Map=AsuroTest.map,--cref -ID:\Programme\AsuroFlash\lib -lm
    D:\Downloads\V10\test.o: In function `main':
    D:\Downloads\V10/test.c:58: multiple definition of `main'
    test.o:C:\Dokumente und Einstellungen\All Users\Anwendungsdaten\AsuroFlash\Projects\TestAsuroProjekt/test.c:167: first defined here
    D:\Downloads\V10\asuro_st.o: In function `__vector_2':
    D:\Downloads\V10/asuro_st.c:163: multiple definition of `__vector_2'
    asuro.o:C:\Dokumente und Einstellungen\All Users\Anwendungsdaten\AsuroFlash\Projects\TestAsuroProjekt/asuro.c:37: first defined here
    D:\Downloads\V10\asuro_st.o: In function `__vector_4':
    D:\Downloads\V10/asuro_st.c:195: multiple definition of `__vector_4'
    asuro.o:C:\Dokumente und Einstellungen\All Users\Anwendungsdaten\AsuroFlash\Projects\TestAsuroProjekt/asuro.c:25: first defined here
    D:\Downloads\V10\asuro_st.o: In function `__vector_14':
    D:\Downloads\V10/asuro_st.c:476: multiple definition of `__vector_14'
    asuro.o:C:\Dokumente und Einstellungen\All Users\Anwendungsdaten\AsuroFlash\Projects\TestAsuroProjekt/asuro.c:46: first defined here
    D:\Downloads\V10\asuro_st.o: In function `Init':
    D:\Downloads\V10/asuro_st.c:621: multiple definition of `Init'
    asuro.o:C:\Dokumente und Einstellungen\All Users\Anwendungsdaten\AsuroFlash\Projects\TestAsuroProjekt/asuro.c:104: first defined here
    D:\Downloads\V10\asuro_st.o: In function `BackLED':
    D:\Downloads\V10/asuro_st.c:712: multiple definition of `BackLED'
    asuro.o:C:\Dokumente und Einstellungen\All Users\Anwendungsdaten\AsuroFlash\Projects\TestAsuroProjekt/asuro.c:210: first defined here
    D:\Downloads\V10\asuro_st.o: In function `MotorSpeed':
    D:\Downloads\V10/asuro_st.c:726: multiple definition of `MotorSpeed'
    asuro.o:C:\Dokumente und Einstellungen\All Users\Anwendungsdaten\AsuroFlash\Projects\TestAsuroProjekt/asuro.c:144: first defined here
    D:\Downloads\V10\asuro_st.o: In function `SerWrite':
    D:\Downloads\V10/asuro_st.c:767: multiple definition of `SerWrite'
    asuro.o:C:\Dokumente und Einstellungen\All Users\Anwendungsdaten\AsuroFlash\Projects\TestAsuroProjekt/asuro.c:283: first defined here
    D:\Downloads\V10\asuro_st.o: In function `SerRead':
    D:\Downloads\V10/asuro_st.c:839: multiple definition of `SerRead'
    asuro.o:C:\Dokumente und Einstellungen\All Users\Anwendungsdaten\AsuroFlash\Projects\TestAsuroProjekt/asuro.c:296: first defined here
    D:\Downloads\V10\asuro_st.o: In function `LineData':
    D:\Downloads\V10/asuro_st.c:881: multiple definition of `LineData'
    asuro.o:C:\Dokumente und Einstellungen\All Users\Anwendungsdaten\AsuroFlash\Projects\TestAsuroProjekt/asuro.c:238: first defined here
    D:\Downloads\V10\asuro_st.o: In function `PollSwitch':
    D:\Downloads\V10/asuro_st.c:909: multiple definition of `PollSwitch'
    asuro.o:C:\Dokumente und Einstellungen\All Users\Anwendungsdaten\AsuroFlash\Projects\TestAsuroProjekt/asuro.c:323: first defined here
    D:\Downloads\V10\asuro_st.o: In function `Sleep':
    D:\Downloads\V10/asuro_st.c:933: multiple definition of `Sleep'
    asuro.o:C:\Dokumente und Einstellungen\All Users\Anwendungsdaten\AsuroFlash\Projects\TestAsuroProjekt/asuro.c:366: first defined here
    D:\Downloads\V10\asuro_st.o: In function `Gettime':
    D:\Downloads\V10/asuro_st.c:961: multiple definition of `Gettime'
    asuro.o:C:\Dokumente und Einstellungen\All Users\Anwendungsdaten\AsuroFlash\Projects\TestAsuroProjekt/asuro.c:93: first defined here
    D:\Downloads\V10\asuro_st.o: In function `PrintInt':
    D:\Downloads\V10/asuro_st.c:971: multiple definition of `PrintInt'
    asuro.o:C:\Dokumente und Einstellungen\All Users\Anwendungsdaten\AsuroFlash\Projects\TestAsuroProjekt/asuro.c:67: first defined here
    d:/winavr/bin/../lib/gcc/avr/4.3.3/../../../../avr/bin/ld.exe: AsuroTest.elf section .text will not fit in region text
    d:/winavr/bin/../lib/gcc/avr/4.3.3/../../../../avr/bin/ld.exe: region text overflowed by 1494 bytes
    test.o: In function `turn':
    C:\Dokumente und Einstellungen\All Users\Anwendungsdaten\AsuroFlash\Projects\TestAsuroProjekt/test.c:113: undefined reference to `Encoder_Set'
    test.o: In function `nikolaus':
    C:\Dokumente und Einstellungen\All Users\Anwendungsdaten\AsuroFlash\Projects\TestAsuroProjekt/test.c:147: undefined reference to `Encoder_Set'
    test.o: In function `turncalib':
    C:\Dokumente und Einstellungen\All Users\Anwendungsdaten\AsuroFlash\Projects\TestAsuroProjekt/test.c:98: undefined reference to `Encoder_Set'
    test.o: In function `straightcalib':
    C:\Dokumente und Einstellungen\All Users\Anwendungsdaten\AsuroFlash\Projects\TestAsuroProjekt/test.c:64: undefined reference to `Encoder_Set'
    test.o: In function `main':
    C:\Dokumente und Einstellungen\All Users\Anwendungsdaten\AsuroFlash\Projects\TestAsuroProjekt/test.c:194: undefined reference to `Encoder_Init'
    make: *** [AsuroTest.elf] Error 1
    
    
    ExitCode 2
    >Ready.
    Was Hat das zu bedeuten??

    Bitte Um Hilfe.
    mfg asuro_besitzer

  9. #99
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    29.05.2005
    Beiträge
    1.018
    Hallo asuro_besitz,

    erst einmal ein 'Willkommen im Forum'.

    Ich bin mir sicher, dass du in dem von dir angegeben Output 2 Compilerläufe hast.

    Du hat zwei mal "-------- begin --------" und "ExitCode" darin enthalten.
    OK, das ist erst mal nicht so tragisch.

    Im ersten Durchlauf finde ich so ca. 8 Zeilen unterhalb vom ersten "-------- begin --------" die Zeile:
    --->> test.c: In function 'straightcalib': <<---
    Die Funktion 'straightcalib' ist definitiv nicht aus dem Code von mir. Die kommt aus dem Code von stochri hier an dieser Stelle.

    Die 4 folgenden Zeilen mit:
    --->> test.c:--: warning: implicit declaration of function <<<---
    sind nicht schön, aber erzeugen (in diesem Fall) keinen Fehler.
    Auch die beiden Warnmeldungen:
    --->> test.c:--: warning: function declaration isn't a prototype <<--
    sind hier nicht relevant.

    Und jetzt zum einzigen Fehler im Compilerlauf 1.
    Du hast eine Menge Meldungen folgender Art:
    --->> C:\Dokumente und Einst.. ..\TestAsuroProjekt/test.c:---: undefined reference to <<---
    Davor steht ab und zu ein "test.o: In function "
    Alles was hinter dem "reference to" steht wird in dem was hinter "In function " steht benutzt, kann aber leider nicht gefunden werden um es in dein Programm 'einzubauen' (zu linken).
    Alle Funktionsnamen hinter "reference to" sind Funktionen aus der erweiterten Asuro-LIB und sind nicht in der Datei/LIB (asuro.c) von der Asuro-CD vorhanden.

    Und wenn mal mal hinsieht, sind das nur die drei Funktionen Encoder_Init(), Encoder_Set() und Msleep().

    FAZIT Compilerlauf 1:
    Dir fehlt die erweitere Asuro-LIB bzw. die 'Eierlegendewollmilchsau' weiss nicht wo sie zu finden ist. Wie man das dort ändert weiss ich nicht.


    Jetzt der 2-te Lauf.
    Die Zeilen:
    --->> :/winavr/lib/gcc/../../avr/include/avr/signal.h:36:2: warning: #warning "This header file is obsolete. .... <<---
    sind hier nicht schlimm. Es sagt mir jetzt nur, dass du eine neue Compilerversion benutzt. Die gab es zu der Zeit als ich das Programm geschrieben hatte nicht auf meinem PC.

    Dann kommen viele Zeilen mit:
    --->> D:\Downloads\V10\test.c:---: warning: pointer targets in passing argument 1 of 'SerWrite' differ in signedness <<---
    Auch hier steht davor ein "In function ". Also wie oben ein Problem mit der Funktion SerWrite(), die in der Funktion menue() bzw. PrintInt() aufgerufen wird.
    Jetzt haben wir aber nicht das Problem, dass SerWrite() nicht gefunden wird (erweiterte LIB oder CD-LIB/Datei), sondern das es nur einen nicht so richtig passenden Parameter in die Funktion SerWrite() gibt.
    Auch hier meckert dein neuerer Compiler. Meiner hatte nicht gemeckert und auch diese Warnung ist hier nicht wirklich wichtig.

    Und nun hier zum Fehler:
    Jede Zeile
    --->> D:\Downloads\V10/test.c:58: multiple definition of <<---
    sagt mir nun, dass du in dem Verzeichnis, in dem du die Dateien von mir (Sternthaler) übersetzten möchtest auch die Datei asuro.c übersetzt hast und die soll nun auch in das zu machende Programm 'eingebaut' (gelinkt) werden.

    FAZIT Compilerlauf 2:
    Hier ist die Datei asuro.c zuviel.
    Achtung: Es könnte an der Umgebung der 'Eierlegendewollmilchsau' liegen, dass die asuro.c immer dazu genommen wird. Egal wo die auf deiner Platte liegt. Wie man das abstellen könnte weiss ich nicht.


    Ich würde nun Vorschlagen, dass du im Verzeichnis mit den Sternthaler-Dateien erst einmal nachsiehst, ob dort asuro.??????-Dateien liegen. (asuro.c oder asuro.o, oder andere asuro. Dinger) Die löschst du alle aus dem Verzeichnis.
    Dann prüfst du in der 'Eierlegendewollmilchsau', ob dort noch irgendwo etwas mit asuro.c steht. (Im Projekt, falls das dort so heißt?) auch das muss weg.
    Ich schlage dies vor, da es erst einmal leichter ist als die erweiterte Asuro-LIB zu installieren.


    Ich hoffe, dass du nicht eingeschlafen bist bei meinem langweiligen Roman und drücke die Daumen für deinen ersten Nikolaus. Zur Not ist es ja noch etwas Zeit bis der fertig sein muss. Ist ja erst April .

    Gruß Sternthaler
    Lieber Asuro programieren als arbeiten gehen.

  10. #100
    Erstmal VIELEN DANK Sternthaler

    Ich habe mich nicht gelangweilt
    Ich freue mich dass du mir sagemn konntest was es sein könte.
    =D> Ich kann leider nicht immer direkt nachschauen wann geantwortet wurde , da ich nach der schule noch Hausaufgaben machen muss
    Ich habe alles auser text.c und die Makefile gelöscht, doch ich habe noch die frage wo es die erweiterte Asuro lib gibt und wo bekomme ich asuro.h und .c wieder her? die sind weg.
    Leider werde ich nächste woche vom montag bis sontag nicht antworten können.

    PS: Welchen kompeiler benutzt du? Der von der CD geht bei mir nicht. Nur das programm wo ich den fehler her hab habe ich mal gefunden und erstellt alle datein irgendwie. z.B. Makefile, asuro.map asuro.o asuro.elf asuro.u test.elf test.o test.list asuro.list ...
    mit den datein kann ich nichts anfangen und ich komme mit dem prog auch nicht klar.

    Ich habe selbst die neusten Versionen von Programmers Notepad versucht und auf meine PC laufen die nicht. Achso Ich benutze Win XP Professional. Mein pc hat auch genügen leistung.

Seite 10 von 11 ErsteErste ... 891011 LetzteLetzte

Berechtigungen

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

fchao-Sinus-Wechselrichter AliExpress