Sida 3 av 3
Postat: 21 september 2005, 22:56:45
av frejo
Nej den ligger inte med som source file.
hela projektet ligger här:
http://student.itn.liu.se/~frejo242/pic/lab3.zip
ifall du skulle ha tid att ta en titt

Postat: 21 september 2005, 23:40:55
av sodjan
OK.
Nästa fix jag skulle prova, är att ändra ordning på "include" och "define" LAB3.ASM...
Postat: 21 september 2005, 23:48:57
av frejo
ok, då får jag istället:
Error[115]/MYLIB/HD44780_INC.ASM 6 : Duplicate label ("PORTD" or redefining symbol that cannot be redefined)
Error[115]/MYLIB/HD44780_INC.ASM 6 : Duplicate label ("TRISD" or redefining symbol that cannot be redefined)
Error[115]/MYLIB/HD44780_INC.ASM 6 : Duplicate label ("PORTA" or redefining symbol that cannot be redefined)
Error[115]/MYLIB/HD44780_INC.ASM 6 : Duplicate label ("TRISA" or redefining symbol that cannot be redefined)
Du har inget exempelprojekt där du gjort samma sak och fått det att fungera?
Postat: 22 september 2005, 00:04:29
av sodjan
En annan sak jag kom att tänka på...
När man gör "DEFINE par1 par2" så kommer par1 att ersättas av par2 överallt där par1 används.
Alltså om man först gör "#define LCD_DATA PORTD", och sedan "GLOBAL LCD_DATA", så är det samma sak som "GLOBAL PORTD", vilket väll inte är så bra...
DEFINE definierar igentligen inte vanligq symboler, utan sträng-ersättningar (eller vad det nu kallas).
Hur löser vi nu detta... ?
Jag föreslår att du :
- Plockar bort DEFINE's från LAB3.ASM
- Lägger till samma DEFINE's i INC filen.
- Plockar bort GLOBAL från INC filen.
- Lägger in INCLUDE i alla filer där anrop till HD44780.ASM skall göras. (kanske redan OK...)