PIC-assember Nybörjarproblem med BSF/BCF [LÖST]
Re: PIC-assember Nybörjarproblem med bsf/bcf
Det är en workaround, inte en lösning. Skall Du använda någon pinne som ingång där det även finns en analog funktion så måste denna stängas av, annars kommer pinnen alltid att läsas som nolla.
Re: PIC-assember Nybörjarproblem med bsf/bcf
Det är sant. Kommer använda A och B-porten som ingångar, så låter som att jag får kolla på detta också. Tillbax till databladet... 

Re: PIC-assember Nybörjarproblem med bsf/bcf
I databladet finns små gråa rutor med viktig information och just detta står i den gråa rutan för PORTE. Det finns även en sammanfattning av vilka register som på något sätt berör porten, eller den modul avsnittet nu handlar om, i slutet av varje avsnitt. Detta är en av de saker som är mycket hjälpsamt och bra i databladen från Microchip.
Re: PIC-assember Nybörjarproblem med bsf/bcf
> Jag pillar med en PIC16F877...
Inte en 877A ? De är lite vanligare. Spelar dock sannolikt ingen roll i just detta fall.
I kapitlet för PORTE finns det flera ledtrådar som alla pekar på ditt problem:
Gör om och gör rätt så fungerar det som du förväntar dig...
Det som kan förklara att man kanske inte ser detta direkt, är att man nog inte
upplever BCF/BSF som instruktioner som *läser* från porten, de ska ju bara
skriva till en bit. Men de instruktionerna *läser* alltså först *hela* porten, ändrar
en bit och skriver sedan tillbaka *hela* porten igen. Där uppstår "felet"...
Inte en 877A ? De är lite vanligare. Spelar dock sannolikt ingen roll i just detta fall.
I kapitlet för PORTE finns det flera ledtrådar som alla pekar på ditt problem:
vilket ju dels är väldigt tydligt och också pekar direkt på din "nybörjartabbe".Also, ensure that ADCON1 is configured for digital I/O. In this mode, the input buffers are TTL.
...
PORTE pins are multiplexed with analog inputs. When selected for analog input, these pins will read as ‘0’s.
...
Note: On a Power-on Reset, these pins are configured as analog inputs and read as ‘0’.
Gör om och gör rätt så fungerar det som du förväntar dig...
Det som kan förklara att man kanske inte ser detta direkt, är att man nog inte
upplever BCF/BSF som instruktioner som *läser* från porten, de ska ju bara
skriva till en bit. Men de instruktionerna *läser* alltså först *hela* porten, ändrar
en bit och skriver sedan tillbaka *hela* porten igen. Där uppstår "felet"...
Re: PIC-assember Nybörjarproblem med bsf/bcf **LÖST*
Anledningen till att det blev en 877 var att jag hade ett helt rör liggande med såna, och det verkade vara en trevlig PIC med en massa I/O, vilket jag behövde 
Förstår hur bcf/bsf fungerar nu när jag studerat det mer i detalj, och tar till mig det ni säger om den multiplexade analogporten. Mycket lärorikt. Tack till alla!

Förstår hur bcf/bsf fungerar nu när jag studerat det mer i detalj, och tar till mig det ni säger om den multiplexade analogporten. Mycket lärorikt. Tack till alla!

Re: PIC-assember Nybörjarproblem med bsf/bcf **LÖST**
Ja, rent generellt gäller att *alla* pinnar som även har en analog
funktion *alltid* är analog efter reset. Gäller alla PIC jag har tittat på.
Orsaken till det är lätt att förstå, man vill inte att en analog källa (som
ju per definition kan ha vilken spänning som helst inom gränserna) inte
ska driva en digital ingång direkt, eftersom digitala ingångar ibland inte
fungerar speciellt bra när man ligger i gråzonen mellan "låg" och "hög".
Det kan uppstå onormala strömförbrukningar m.m.
> och det verkade vara en trevlig PIC med en massa I/O, vilket jag behövde
Absolut, det är historiskt en av de vanligaste modellerna, tillsammans med
877A vilken ganska snabbt ersatte den första 877'an.
*Idag* ger en 887 bättre funktionallitet till halva priset. Man får en
hel den moderna finesser som en bättre internt oscillator m.m.
funktion *alltid* är analog efter reset. Gäller alla PIC jag har tittat på.
Orsaken till det är lätt att förstå, man vill inte att en analog källa (som
ju per definition kan ha vilken spänning som helst inom gränserna) inte
ska driva en digital ingång direkt, eftersom digitala ingångar ibland inte
fungerar speciellt bra när man ligger i gråzonen mellan "låg" och "hög".
Det kan uppstå onormala strömförbrukningar m.m.
> och det verkade vara en trevlig PIC med en massa I/O, vilket jag behövde
Absolut, det är historiskt en av de vanligaste modellerna, tillsammans med
877A vilken ganska snabbt ersatte den första 877'an.
*Idag* ger en 887 bättre funktionallitet till halva priset. Man får en
hel den moderna finesser som en bättre internt oscillator m.m.
Re: PIC-assember Nybörjarproblem med bsf/bcf **LÖST**
Nu har jag gjort klart mitt första PIC-projekt! Gick ju kanon när man fått bort alla analoga ingångar o liknande 
En liten film: (även postad i min Zusie-tråd)

En liten film: (även postad i min Zusie-tråd)