Kompilera AVR assambler under unix eller osx *MED LÖSNING*

PIC, AVR, Arduino, Raspberry Pi, Basic Stamp, PLC mm.
thepirateboy
EF Sponsor
Inlägg: 2109
Blev medlem: 27 augusti 2005, 20:57:58
Ort: Borlänge

Inlägg av thepirateboy »

Blir en del fel vid kompilering

C:\Documents and Settings\Jon\Skrivbord\UV-LED Timer 2.0\LCD-Timer.asm(855): error: Invalid register

( sbrc Steuer_Port, leuchtpult )
Användarvisningsbild
jonnorberg
Inlägg: 851
Blev medlem: 19 mars 2008, 17:45:40
Ort: Årsta

Inlägg av jonnorberg »

Rackarns det var ju där jag försökte att få till så man kunde gå ur menyn. Då måste jag sätta en variabel man kan sätta i registret. Kan du se hur man ska göra?... jag har skrivit kommentarer på svenska där jag ändrat.

3st totalt.
Senast redigerad av jonnorberg 21 juni 2008, 19:15:56, redigerad totalt 1 gång.
Användarvisningsbild
jonnorberg
Inlägg: 851
Blev medlem: 19 mars 2008, 17:45:40
Ort: Årsta

Inlägg av jonnorberg »

Räcker det att lägga till följande?
.def layer = r24

och ändra den felaktiga raden till:

sbrc layer, Steuer_Port, leuchpult

Eller är jag ute och cyklar då?
thepirateboy
EF Sponsor
Inlägg: 2109
Blev medlem: 27 augusti 2005, 20:57:58
Ort: Borlänge

Inlägg av thepirateboy »

Ja, jag ska kolla på det när det lugnat ner sig här hemma.

Har dock glömt bort det mesta av assembler så jag måste fräscha upp minnet lite.
Senast redigerad av thepirateboy 21 juni 2008, 19:17:04, redigerad totalt 1 gång.
Användarvisningsbild
jonnorberg
Inlägg: 851
Blev medlem: 19 mars 2008, 17:45:40
Ort: Årsta

Inlägg av jonnorberg »

Grymt att man kan debugga via forum =)
Ett gäng vänliga själar är vad ni är.
thepirateboy
EF Sponsor
Inlägg: 2109
Blev medlem: 27 augusti 2005, 20:57:58
Ort: Borlänge

Inlägg av thepirateboy »

Ändrade till sbic (Skip if Bit in I/O Register Cleared), då funka det. Är det så du vill ha det?

(sbic Steuer_Port, leuchtpult)


Sen blev det en massa annat jox, men det är bara varningar.

Kod: Markera allt

AVRASM: AVR macro assembler 2.1.17 (build 435 Apr 10 2008 09:27:55)
Copyright (C) 1995-2008 ATMEL Corporation

C:\Documents and Settings\Jon\Skrivbord\UV-LED Timer 2.0\LCD-Timer.asm(44): Including file 'C:\Program\Atmel\AVR Tools\AvrAssembler2\Appnotes\m8def.inc'
C:\Documents and Settings\Jon\Skrivbord\UV-LED Timer 2.0\LCD-Timer.asm(1034): Including file 'C:\Documents and Settings\Jon\Skrivbord\UV-LED Timer 2.0\LCD-Routine.asm'
C:\Documents and Settings\Jon\Skrivbord\UV-LED Timer 2.0\LCD-Timer.asm(1035): Including file 'C:\Documents and Settings\Jon\Skrivbord\UV-LED Timer 2.0\LCD-Texte.asm'
C:\Documents and Settings\Jon\Skrivbord\UV-LED Timer 2.0\LCD-Texte.asm(2): warning: .cseg .db misalignment - padding zero byte
C:\Documents and Settings\Jon\Skrivbord\UV-LED Timer 2.0\LCD-Timer.asm(1035): info: 'C:\Documents and Settings\Jon\Skrivbord\UV-LED Timer 2.0\LCD-Texte.asm' included from here
C:\Documents and Settings\Jon\Skrivbord\UV-LED Timer 2.0\LCD-Texte.asm(5): warning: .cseg .db misalignment - padding zero byte
C:\Documents and Settings\Jon\Skrivbord\UV-LED Timer 2.0\LCD-Timer.asm(1035): info: 'C:\Documents and Settings\Jon\Skrivbord\UV-LED Timer 2.0\LCD-Texte.asm' included from here
C:\Documents and Settings\Jon\Skrivbord\UV-LED Timer 2.0\LCD-Texte.asm(8): warning: .cseg .db misalignment - padding zero byte
C:\Documents and Settings\Jon\Skrivbord\UV-LED Timer 2.0\LCD-Timer.asm(1035): info: 'C:\Documents and Settings\Jon\Skrivbord\UV-LED Timer 2.0\LCD-Texte.asm' included from here
C:\Documents and Settings\Jon\Skrivbord\UV-LED Timer 2.0\LCD-Texte.asm(14): warning: .cseg .db misalignment - padding zero byte
C:\Documents and Settings\Jon\Skrivbord\UV-LED Timer 2.0\LCD-Timer.asm(1035): info: 'C:\Documents and Settings\Jon\Skrivbord\UV-LED Timer 2.0\LCD-Texte.asm' included from here
C:\Documents and Settings\Jon\Skrivbord\UV-LED Timer 2.0\LCD-Texte.asm(17): warning: .cseg .db misalignment - padding zero byte
C:\Documents and Settings\Jon\Skrivbord\UV-LED Timer 2.0\LCD-Timer.asm(1035): info: 'C:\Documents and Settings\Jon\Skrivbord\UV-LED Timer 2.0\LCD-Texte.asm' included from here
C:\Documents and Settings\Jon\Skrivbord\UV-LED Timer 2.0\LCD-Texte.asm(20): warning: .cseg .db misalignment - padding zero byte
C:\Documents and Settings\Jon\Skrivbord\UV-LED Timer 2.0\LCD-Timer.asm(1035): info: 'C:\Documents and Settings\Jon\Skrivbord\UV-LED Timer 2.0\LCD-Texte.asm' included from here
C:\Documents and Settings\Jon\Skrivbord\UV-LED Timer 2.0\LCD-Texte.asm(23): warning: .cseg .db misalignment - padding zero byte
C:\Documents and Settings\Jon\Skrivbord\UV-LED Timer 2.0\LCD-Timer.asm(1035): info: 'C:\Documents and Settings\Jon\Skrivbord\UV-LED Timer 2.0\LCD-Texte.asm' included from here
C:\Documents and Settings\Jon\Skrivbord\UV-LED Timer 2.0\LCD-Texte.asm(26): warning: .cseg .db misalignment - padding zero byte
C:\Documents and Settings\Jon\Skrivbord\UV-LED Timer 2.0\LCD-Timer.asm(1035): info: 'C:\Documents and Settings\Jon\Skrivbord\UV-LED Timer 2.0\LCD-Texte.asm' included from here
C:\Documents and Settings\Jon\Skrivbord\UV-LED Timer 2.0\LCD-Texte.asm(38): warning: .cseg .db misalignment - padding zero byte
C:\Documents and Settings\Jon\Skrivbord\UV-LED Timer 2.0\LCD-Timer.asm(1035): info: 'C:\Documents and Settings\Jon\Skrivbord\UV-LED Timer 2.0\LCD-Texte.asm' included from here
C:\Documents and Settings\Jon\Skrivbord\UV-LED Timer 2.0\LCD-Texte.asm(41): warning: .cseg .db misalignment - padding zero byte
C:\Documents and Settings\Jon\Skrivbord\UV-LED Timer 2.0\LCD-Timer.asm(1035): info: 'C:\Documents and Settings\Jon\Skrivbord\UV-LED Timer 2.0\LCD-Texte.asm' included from here
C:\Documents and Settings\Jon\Skrivbord\UV-LED Timer 2.0\LCD-Timer.asm(1036): No EEPROM data, deleting C:\Documents and Settings\Jon\Skrivbord\UV-LED Timer 2.0\Jon.eep

ATmega8 memory use summary [bytes]:
Segment   Begin    End      Code   Data   Used    Size   Use%
---------------------------------------------------------------
[.cseg] 0x000000 0x00064e   1464    150   1614    8192  19.7%
[.dseg] 0x000060 0x000064      0      4      4    1024   0.4%
[.eseg] 0x000000 0x000000      0      0      0     512   0.0%

Assembly complete, 0 errors. 10 warnings
[/size]
Användarvisningsbild
jonnorberg
Inlägg: 851
Blev medlem: 19 mars 2008, 17:45:40
Ort: Årsta

Inlägg av jonnorberg »

Jag kan ju testa ifall den fungerar. Har allt uppkopplat här bredvid mig.
Jag gör en login för forumet.
http://soundsgood.mine.nu/Login
User: forum
Pass: murof
Användarvisningsbild
BEEP
EF Sponsor
Inlägg: 1593
Blev medlem: 21 januari 2006, 16:57:56
Ort: Mölndal

Inlägg av BEEP »

Att ändra ifrån sbrs till sbrc ska inte ge några error så det måste vara något annat strul.

En sak som jag ser är att den tyska texten har fått vissa bokstäver utbyta och troligtvis
så finns det andra dolda tecken som kanske kan ge problem vid kompileringen i AVR Studio :?:
Användarvisningsbild
jonnorberg
Inlägg: 851
Blev medlem: 19 mars 2008, 17:45:40
Ort: Årsta

Inlägg av jonnorberg »

Nix fungerar inte som det skall. Fastnar i menyn som i originalet. Sen måste jag lägga till blanksteg eller cleara LCD:n för vissa symboler fastnar.
Tack för all hjälp änsålänge.

ay från texten "One Layer" fastnar kvar efter tiden när man går ur menyn.
Och t:et från "Start" hänger kvar fast det löser jag med ett blanksteg efter "Time"
Användarvisningsbild
jonnorberg
Inlägg: 851
Blev medlem: 19 mars 2008, 17:45:40
Ort: Årsta

Inlägg av jonnorberg »

Det finns ju ingen register adress för den raden jag lade till. Så det måste vara som BEEP säger. Jag kanske måste lägga till det där:
.def layer = r24

och ändra den felaktiga raden till:

sbrc layer, Steuer_Port, leuchpult
thepirateboy
EF Sponsor
Inlägg: 2109
Blev medlem: 27 augusti 2005, 20:57:58
Ort: Borlänge

Inlägg av thepirateboy »

Hänger inte med riktigt vad som ska hända.

SBRC jobbar mot ett register (Skip if Bit in Register Cleared)

SBIC jobbar mot I/O (Skip if Bit in I/O Register Cleared)

SBRC layer, Steuer_Port, leuchpult funkar inte eftersom du har 3 operander, SBRC kan bara ta 2
Användarvisningsbild
jonnorberg
Inlägg: 851
Blev medlem: 19 mars 2008, 17:45:40
Ort: Årsta

Inlägg av jonnorberg »

Hm om jag berättar vad jag vill ska hända då så kanske ni förstår bättre =)
I den första leuchpult loopen så går man in och sätter en pinne hög. Sedan hamnar man i den andra loopen och sätter den låg. Sedan hoppar man ur menyn. Jag vill att man skall hoppa ur menyn redan i första loopen och sedan hamna i rätt meny när man går tillbaka dit beroende på hur pinnen är satt för att byta värde och gå tillbaka.
Tillräcklig beskrivning?

Jag vet föresten inte vad den där sista , leuchpult gör för nåt.
Användarvisningsbild
BEEP
EF Sponsor
Inlägg: 1593
Blev medlem: 21 januari 2006, 16:57:56
Ort: Mölndal

Inlägg av BEEP »

Okej, det var lite mer än bara sbrc som var ändrat.

Kod: Markera allt

leuchtpult_loop:									; Menü Leuchtpult
	sbrs	r_flag, dg_tast							; Taster gedrückt?
	ret												; nein --> zurück

Kod: Markera allt

leuchtpult_loop:									; Menü Leuchtpult
	sbrc	Steuer_Port, leuchpult					; om cleared (0) bortse hopp till nästa loop
	rjmp	leuchpult_loop_						; annars gå till nästa loop

Jag har inte kollat så noga vad koden gör men ska inte leuchpult vara leuchtpult?

Edit:
Såg att thepirateboy hade ändrat detta i sitt inlägg.
Senast redigerad av BEEP 21 juni 2008, 20:55:20, redigerad totalt 1 gång.
Användarvisningsbild
jonnorberg
Inlägg: 851
Blev medlem: 19 mars 2008, 17:45:40
Ort: Årsta

Inlägg av jonnorberg »

Japp helt rätt...jag har stavat fel. Fan jag måste få till asm på min dator =)
Jag har även gjort om texten nu så jag inte får de där fula symbolerna som hänger kvar. Jag lägger upp en ny textfil för dem.
thepirateboy
EF Sponsor
Inlägg: 2109
Blev medlem: 27 augusti 2005, 20:57:58
Ort: Borlänge

Inlägg av thepirateboy »

Leuchpult stavfelet har jag redan ändrat, det andra är jag lite för trött för att förstå.
Skriv svar