PICking PICling
Re: PICking PICling
Du får faktiskt inkludera hela källkoden från första raden samt vilken device du valt i inställningarna.
Samt även den genererade koden.
Ärligt talat tror jag (är rätt övertygad om att du har fel processor i inställningarna)
Samt även den genererade koden.
Ärligt talat tror jag (är rätt övertygad om att du har fel processor i inställningarna)
Re: PICking PICling
Håller med dig Janne, varför gjorde Thomas det?
Från MP~ prog mem:
Hur detta ser ut i verkligheten, i HEX-form, känns jobbigt reda ut.
Leta efter "symbolerna" 1283/1303 respektive 1683/1303, kanske?

Från MP~ prog mem:
Kod: Markera allt
Line Address Opcode Disassembly
120 077 1283 BCF 0x3, 0x5
121 078 1303 BCF 0x3, 0x6
122 079 0185 CLRF 0x5
123 07A 1683 BSF 0x3, 0x5
124 07B 1303 BCF 0x3, 0x6
125 07C 3050 MOVLW 0x50
126 07D 0081 MOVWF 0x1
127 07E 1283 BCF 0x3, 0x5
128 07F 1303 BCF 0x3, 0x6
129 080 168B BSF 0xb, 0x5
130 081 1683 BSF 0x3, 0x5
131 082 1303 BCF 0x3, 0x6
132 083 3061 MOVLW 0x61
133 084 008F MOVWF 0xf
134 085 1683 BSF 0x3, 0x5
135 086 1303 BCF 0x3, 0x6
136 087 0085 MOVWF 0x5
137 088 1683 BSF 0x3, 0x5
138 089 1303 BCF 0x3, 0x6
139 08A 019F CLRF 0x1f
Leta efter "symbolerna" 1283/1303 respektive 1683/1303, kanske?
Re: PICking PICling
Tja, jag tror nog jannes svar var riktat till dig.
Varför publicerar du inte koden?
Varför publicerar du inte koden?
Re: PICking PICling
Koden som sådan har inget med hur BANKSEL fungerar, eller inte fungerar, att göra.
BANKSEL är, och då som den är. Eller inte är.
Och BANKSEL är det enda som är satt ifråga.
Varken jag eller koden har med BANKSEL's uppförande att göra.
BANKSEL är, och då som den är. Eller inte är.
Och BANKSEL är det enda som är satt ifråga.
Varken jag eller koden har med BANKSEL's uppförande att göra.
Re: PICking PICling
Naturligtvis har det det, eftersom du gör fel någonstans, det troligaste är att du valt en processor med 4 banker, då blir det så.
Det felet du påstår, existerar helt enkelt inte, förutom skit bakom tangentbordet, typ.
Just därför är det viktigt att du dels postar din kod samt hur du har konfigurerat MPLAB, dvs "Configure/Device" ett skärmklipp av den dialogrutan vore bra.
Som du ser i det jag postade så genereras det helt korrekta instuktioner.
Det felet du påstår, existerar helt enkelt inte, förutom skit bakom tangentbordet, typ.
Just därför är det viktigt att du dels postar din kod samt hur du har konfigurerat MPLAB, dvs "Configure/Device" ett skärmklipp av den dialogrutan vore bra.
Som du ser i det jag postade så genereras det helt korrekta instuktioner.
Re: PICking PICling
Tomas, du har inte rätt just här och nu.
Koden går till HEX och HEX'en går genom PICkit2'an och ut i MC'n och fungerar som den ska.
Sedan antar jag att du missade urklippet från "view program memory" jag just la upp.
Vill någon fortsätta diskutera hur BANKSEL gör vad föreslås att det görs i separat tråd,
inte i denna tråd som hanterar frågeställningar som är relevanta.
Nog om BANKSEL. Det var inte av vikt från början och inte av vikt nu.
Koden går till HEX och HEX'en går genom PICkit2'an och ut i MC'n och fungerar som den ska.
Sedan antar jag att du missade urklippet från "view program memory" jag just la upp.
Vill någon fortsätta diskutera hur BANKSEL gör vad föreslås att det görs i separat tråd,
inte i denna tråd som hanterar frågeställningar som är relevanta.
Nog om BANKSEL. Det var inte av vikt från början och inte av vikt nu.
Re: PICking PICling
Vad som är intressant är om T0IF genereras även utan T0EF.
(Och detta utan att gå in på varför ex T0EF, som är unik åt alla håll, inte bara heter just T0EF, utan måste ha specificerat både byrå och byrålåda. Trots att det endast finns ett fack som heter så...)
(Och detta utan att gå in på varför ex T0EF, som är unik åt alla håll, inte bara heter just T0EF, utan måste ha specificerat både byrå och byrålåda. Trots att det endast finns ett fack som heter så...)
Re: PICking PICling
SNÄLLA NÅN, fattar du ingenting??
Eftersom Macrot BANKSEL genererar två assemblerrader hos dig, så har du valt fel processor.
Ditt urklipp är av PROGMEN är faktiskt fullständigt ointressant, det är bara resultatet av de fel du gör tidigare.
Det var du som reste frågan om just BANKSEL, och då var det uppenbarligen relevant, enligt din egen åsikt.
Att det fungerar, tja det beror förmodligen på att alla PIC-prosessorer inom samma familj är rätt lika, dock är det inte säkert att det fungerar i alla lägen.
ENligt data bladet så skall man inte röra de två högre bitarna i statusregistret, sannolikt kan det få konstiga konsekvenser i din processor, och ditt problem är, iom att du gör fel någonstans, så kan ditt program i vissa lägen totalt balla ur.
Gör Om, Gör Rätt, RTFM.
Eftersom Macrot BANKSEL genererar två assemblerrader hos dig, så har du valt fel processor.
Ditt urklipp är av PROGMEN är faktiskt fullständigt ointressant, det är bara resultatet av de fel du gör tidigare.
Det var du som reste frågan om just BANKSEL, och då var det uppenbarligen relevant, enligt din egen åsikt.
Att det fungerar, tja det beror förmodligen på att alla PIC-prosessorer inom samma familj är rätt lika, dock är det inte säkert att det fungerar i alla lägen.
ENligt data bladet så skall man inte röra de två högre bitarna i statusregistret, sannolikt kan det få konstiga konsekvenser i din processor, och ditt problem är, iom att du gör fel någonstans, så kan ditt program i vissa lägen totalt balla ur.
Gör Om, Gör Rätt, RTFM.
Re: PICking PICling
Thomas, vänligen flytta diskussion om BANKSEL annorstädes.
Det är en varken relevant eller intressant fråga hur MC satt ihop BANKSEL.
Jag nämnde det endast som kuriosa, ledsen om kuriosa inte fungerar för dig.
Och du har fel - jag har korrekt inställning.
Vidare - om manualen ... Nej, det vore för enkelt...
Det är en varken relevant eller intressant fråga hur MC satt ihop BANKSEL.
Jag nämnde det endast som kuriosa, ledsen om kuriosa inte fungerar för dig.
Och du har fel - jag har korrekt inställning.
Vidare - om manualen ... Nej, det vore för enkelt...

Senast redigerad av Erik M 3 juli 2015, 19:39:43, redigerad totalt 1 gång.
Re: PICking PICling
Nu vet jag inte vad T0EF är för något, eftersom det inte existerar något sådant i databladet.Erik M skrev:Vad som är intressant är om T0IF genereras även utan T0EF.
(Och detta utan att gå in på varför ex T0EF, som är unik åt alla håll, inte bara heter just T0EF, utan måste ha specificerat både byrå och byrålåda. Trots att det endast finns ett fack som heter så...)
Kanske en felskrivning från din sida, så vad menar du.
Men du kanske menar T0IE i stället, och i så fall står det rakt och tydligt, svart på vitt i databladet hur det fungerar.
På ren Svenska betyder det att T0IF sätts varje gång räknaren rullar runt, interrupt genereras bara om T0IE flaggan är satt, samt att du själv måste nollställa T0IFTimer0 will generate an interrupt when the TMR0
register overflows from FFh to 00h. The T0IF interrupt
flag bit of the INTCON register is set every time the
TMR0 register overflows, regardless of whether or not
the Timer0 interrupt is enabled. The T0IF bit must be
cleared in software. The Timer0 interrupt enable is the
T0IE bit of the INTCON register.
Nja, beträffande BANKSEL, eftersom du gör fel, så är det i högsta grad intressant.
Re: PICking PICling
det kanske vore bra för dig.
Nåväl är dina undringar om funktionen på T0IF lösta nu?
Nåväl är dina undringar om funktionen på T0IF lösta nu?
Re: PICking PICling
> Thomas, vänligen flytta diskussion om BANKSEL annorstädes.
Varför det? Det var *du* som påstod att BANKSEL generarar dubble BxF instruktioner.
Både Tomas och jag har visat att BANKSEL genererar *en* BxF för processorer
med två banker och *två* BxF för processorer med fyra banker. Du har inte lyckats
visa ett enda exempel där detta inte stämmer!
Om det nu är så att du ändå får två BxF så är det ju väldigt intressant
eftersom det skulle kunna peka på att du t.ex har fel INC fil i koden och
det skulle kunna ge diverse andra konstiga fel...
Jag fattar ärligt talat inte vad du håller på med! Varför i jösse namn inte
visa *käll* koden som du påstår genererar dubla BxF !?
> Och du har fel - jag har korrekt inställning.
Ja, men för hel... *visa* att du har rätt i så fall !!
Barnsligt...
Varför det? Det var *du* som påstod att BANKSEL generarar dubble BxF instruktioner.
Både Tomas och jag har visat att BANKSEL genererar *en* BxF för processorer
med två banker och *två* BxF för processorer med fyra banker. Du har inte lyckats
visa ett enda exempel där detta inte stämmer!
Om det nu är så att du ändå får två BxF så är det ju väldigt intressant
eftersom det skulle kunna peka på att du t.ex har fel INC fil i koden och
det skulle kunna ge diverse andra konstiga fel...
Jag fattar ärligt talat inte vad du håller på med! Varför i jösse namn inte
visa *käll* koden som du påstår genererar dubla BxF !?
> Och du har fel - jag har korrekt inställning.
Ja, men för hel... *visa* att du har rätt i så fall !!
Barnsligt...
Re: PICking PICling
Det är absolut barnsligt att envist fortsätta med ett ämne som inte är relevant.
Huruvida det har stringens har ingen betydelse då relevans saknas.
Dvs - att blå blåbär är blå innehar stringens, men har föga (egentligen ingen, men det kan ju gälla när man ska köra över blå blåbär som är blå...) relevans i frågan om lämpligt däckstryck.
Frågan om jag har fel inställningar hamnar på samma ställe - eftersom koden går ut och gör det jobb den ska.
Vilket den inte skulle göra om det exempelvis var fel INC-fil - eller fel MC.
Och nog med hopp på person, vilket dessutom mest bara tyder på osäkerhet om den egna förmågan.
Det säger ingenting om den påhoppades förmåga eller kunskap.
Korrekt svar på frågan om T0IF och T0IE är, enligt din text, att TMR0 rullar alltid och sätter T0IF varje gång den rullar över - oavsett allt annat.
För att kunna fånga, dvs generera ett interupt call, när T0IF sätts så måste T0IE vara satt.
RTFM, någon...?
Följdfrågan är vad GIE egentligen gör - dvs vad som menas med "unmasked interupts".
Huruvida det har stringens har ingen betydelse då relevans saknas.
Dvs - att blå blåbär är blå innehar stringens, men har föga (egentligen ingen, men det kan ju gälla när man ska köra över blå blåbär som är blå...) relevans i frågan om lämpligt däckstryck.
Frågan om jag har fel inställningar hamnar på samma ställe - eftersom koden går ut och gör det jobb den ska.
Vilket den inte skulle göra om det exempelvis var fel INC-fil - eller fel MC.
Och nog med hopp på person, vilket dessutom mest bara tyder på osäkerhet om den egna förmågan.
Det säger ingenting om den påhoppades förmåga eller kunskap.
Korrekt svar på frågan om T0IF och T0IE är, enligt din text, att TMR0 rullar alltid och sätter T0IF varje gång den rullar över - oavsett allt annat.
För att kunna fånga, dvs generera ett interupt call, när T0IF sätts så måste T0IE vara satt.
RTFM, någon...?
Följdfrågan är vad GIE egentligen gör - dvs vad som menas med "unmasked interupts".
Re: PICking PICling
Jodå, det kan den visst göra, dock kan det kracha när du minst anar det.Vilket den inte skulle göra om det exempelvis var fel INC-fil - eller fel MC.