PICking PICling

PIC, AVR, Arduino, Raspberry Pi, Basic Stamp, PLC mm.
Användarvisningsbild
TomasL
EF Sponsor
Inlägg: 46968
Blev medlem: 23 september 2006, 23:54:55
Ort: Borås
Kontakt:

Re: PICking PICling

Inlägg av TomasL »

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)
Erik M
Inlägg: 1380
Blev medlem: 23 februari 2012, 18:34:39
Ort: Göteborg

Re: PICking PICling

Inlägg av Erik M »

Håller med dig Janne, varför gjorde Thomas det? :vissla:

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
Hur detta ser ut i verkligheten, i HEX-form, känns jobbigt reda ut.
Leta efter "symbolerna" 1283/1303 respektive 1683/1303, kanske?
Användarvisningsbild
TomasL
EF Sponsor
Inlägg: 46968
Blev medlem: 23 september 2006, 23:54:55
Ort: Borås
Kontakt:

Re: PICking PICling

Inlägg av TomasL »

Tja, jag tror nog jannes svar var riktat till dig.
Varför publicerar du inte koden?
Erik M
Inlägg: 1380
Blev medlem: 23 februari 2012, 18:34:39
Ort: Göteborg

Re: PICking PICling

Inlägg av Erik M »

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.
Användarvisningsbild
TomasL
EF Sponsor
Inlägg: 46968
Blev medlem: 23 september 2006, 23:54:55
Ort: Borås
Kontakt:

Re: PICking PICling

Inlägg av TomasL »

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.
Erik M
Inlägg: 1380
Blev medlem: 23 februari 2012, 18:34:39
Ort: Göteborg

Re: PICking PICling

Inlägg av Erik M »

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.
Erik M
Inlägg: 1380
Blev medlem: 23 februari 2012, 18:34:39
Ort: Göteborg

Re: PICking PICling

Inlägg av Erik M »

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å...)
Användarvisningsbild
TomasL
EF Sponsor
Inlägg: 46968
Blev medlem: 23 september 2006, 23:54:55
Ort: Borås
Kontakt:

Re: PICking PICling

Inlägg av TomasL »

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.
Erik M
Inlägg: 1380
Blev medlem: 23 februari 2012, 18:34:39
Ort: Göteborg

Re: PICking PICling

Inlägg av Erik M »

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... :mrgreen:
Senast redigerad av Erik M 3 juli 2015, 19:39:43, redigerad totalt 1 gång.
Användarvisningsbild
TomasL
EF Sponsor
Inlägg: 46968
Blev medlem: 23 september 2006, 23:54:55
Ort: Borås
Kontakt:

Re: PICking PICling

Inlägg av TomasL »

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å...)
Nu vet jag inte vad T0EF är för något, eftersom det inte existerar något sådant i databladet.
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.
Timer0 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.
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 T0IF


Nja, beträffande BANKSEL, eftersom du gör fel, så är det i högsta grad intressant.
Erik M
Inlägg: 1380
Blev medlem: 23 februari 2012, 18:34:39
Ort: Göteborg

Re: PICking PICling

Inlägg av Erik M »

Japp, T0IE blev T0EF.

Ta en paus...
Användarvisningsbild
TomasL
EF Sponsor
Inlägg: 46968
Blev medlem: 23 september 2006, 23:54:55
Ort: Borås
Kontakt:

Re: PICking PICling

Inlägg av TomasL »

det kanske vore bra för dig.
Nåväl är dina undringar om funktionen på T0IF lösta nu?
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Re: PICking PICling

Inlägg av sodjan »

> 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...
Erik M
Inlägg: 1380
Blev medlem: 23 februari 2012, 18:34:39
Ort: Göteborg

Re: PICking PICling

Inlägg av Erik M »

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".
Användarvisningsbild
TomasL
EF Sponsor
Inlägg: 46968
Blev medlem: 23 september 2006, 23:54:55
Ort: Borås
Kontakt:

Re: PICking PICling

Inlägg av TomasL »

Vilket den inte skulle göra om det exempelvis var fel INC-fil - eller fel MC.
Jodå, det kan den visst göra, dock kan det kracha när du minst anar det.
Skriv svar