ASM för svårt för mig...
Kolla om du har markat "Ingnore Case" i projekt inställningarna.
Jag har inte MPLAB igång just nu, men det är i menyn "Projekt" -> "Settings" -> "Projekt settings" -> "MPASM-fliken" eller något i den stilen. Kolla lite själv så hittar du det nog.
*Min* rekomendation är att *alltid* ha "Ingnore Case" markerat !
Det finns absolut ingen anledning att köra "case sensitive" i MPLAB...
Betydligt enklare än att hålla reda på om saker och ting skall skrivas med versaler eller gemener....
Jag har inte MPLAB igång just nu, men det är i menyn "Projekt" -> "Settings" -> "Projekt settings" -> "MPASM-fliken" eller något i den stilen. Kolla lite själv så hittar du det nog.
*Min* rekomendation är att *alltid* ha "Ingnore Case" markerat !
Det finns absolut ingen anledning att köra "case sensitive" i MPLAB...
Betydligt enklare än att hålla reda på om saker och ting skall skrivas med versaler eller gemener....
Japp det hjälpte med STORA bokstäver, nu bara ett fel kvar rad 7...
main code
main code
Kod: Markera allt
Make: The target "C:\PIC\Kod\3321.o" is out of date.
Executing: "C:\Program\Microchip\MPASM Suite\MPAsmWin.exe" /q /p16F877A "3321.asm" /l"3321.lst" /e"3321.err" /c-
Error[149] C:\PIC\KOD\3321.ASM 7 : Directive only allowed when generating an object file
Message[302] C:\PIC\KOD\3321.ASM 11 : Register in operand not in bank 0. Ensure that bank bits are correct.
Halting build on first failure as requested.
BUILD FAILED: Sat Aug 27 23:02:01 2005
> "Japp det hjälpte med STORA bokstäver, "
Markera "Ignore Case" istället, mycket enklare...
> "Error[149] C:\PIC\KOD\3321.ASM 7 : Directive only allowed when generating an object file"
Har du lagt till ett "Linker Script" till ditt projekt ? Ursäkta om jag missade att nämna det !!!
Du skall lägga till P16F877A.LNK (filnamnet taget ur minnet, så kolla upp det) under "Linker Script" i projektfönstret. LNK filerna ligger i LNK (surprice
) katalogen i MPLAB installationen. Då kommer MPLAB automatiskt att ändra switcharna till MPASM så att en OBJ (objekt) fil skapas och att sedan MPLINK ("länkaren") anropas för att "länka" den färdiga HEX filen.
EDIT: Se för övrigt http://www.jescab.se/Info_MPLAB.html för lite mer info kring MPLAB. Alla mina kodexempel förutsätter att man konfgurerar sina projekt efter den sida. Det är igentligen inte mycket, ett "Linker Script" valt och "Ingnore Case" markerat...
Markera "Ignore Case" istället, mycket enklare...
> "Error[149] C:\PIC\KOD\3321.ASM 7 : Directive only allowed when generating an object file"
Har du lagt till ett "Linker Script" till ditt projekt ? Ursäkta om jag missade att nämna det !!!
Du skall lägga till P16F877A.LNK (filnamnet taget ur minnet, så kolla upp det) under "Linker Script" i projektfönstret. LNK filerna ligger i LNK (surprice

EDIT: Se för övrigt http://www.jescab.se/Info_MPLAB.html för lite mer info kring MPLAB. Alla mina kodexempel förutsätter att man konfgurerar sina projekt efter den sida. Det är igentligen inte mycket, ett "Linker Script" valt och "Ingnore Case" markerat...
Senast redigerad av sodjan 27 augusti 2005, 23:23:55, redigerad totalt 1 gång.
> "Har du något om timer så man kan få den att blikna? "
Man kan få den att blinka på (i princip) två (eller tre) sätt :
- Med loopar i koden som tar "en viss tid".
- Med hjälp av en timer i processorn (med eller utan interrupt).
Jag har planer på att skriva ett antal kodexempel (med bl.a ovanstående "blink-a-led"), men det blir väll inte av förren jag tar mig kragen och slutar skriva i forumet...

Man kan få den att blinka på (i princip) två (eller tre) sätt :
- Med loopar i koden som tar "en viss tid".
- Med hjälp av en timer i processorn (med eller utan interrupt).
Jag har planer på att skriva ett antal kodexempel (med bl.a ovanstående "blink-a-led"), men det blir väll inte av förren jag tar mig kragen och slutar skriva i forumet...


- bengt-re
- EF Sponsor
- Inlägg: 4829
- Blev medlem: 4 april 2005, 16:18:59
- Skype: bengt-re
- Ort: Söder om söder
- Kontakt:
Lite offtopic kanske, men att det är trist och tidsödande att skriva assambler är ju helt sant. Jag har en lite halvfuskmetod som jag har använt till ett flertal projekt nu. Nämnligen att skriva det som går i högnivåspråk och bara använda assambler där man behöver den mht till snabbhet och då anropa assamblerrutinerna. Kanske inte är det snyggaste sättet att göra programvaran på, MEN, det går fortare att få igång projektet och man bibehåller ändå snabbheten och den exakta kontrollen vid tidskritiska delar. Oki oki, man måste lik förbenat lära sig sin processor och lära sig assambler och dessutom lära sig begripa hur sitt högnivåspråk allokerar register, men när man väl är där så blir det roligt! Går fort att skriva koden och koden går fort !!