Har precis börjat med att programmera en pic 16F628A och har problem/fattar inte hur man undviker read-modify-write- problemet.
Ska man använda shadow registers i både läs och skriv och hur gör man i de båda fallen i C?
Programmerar i MPLAB och CC5X.
Tex så här:
TRISA = 0b11111111;
TRISB = 0b00000000;
mask= 0b0000.1111;
while (1)
{
W = PORTA & mask;
PORTB = W; // Dioderna på PORTB ska lysa motsvarande ingången
// på PORTA. (Funkar inte alls. Noll hela tiden.)
delay10(25);
PORTB = 0b0000.1111; // PORTB lyser (4dioder) Funkar som det ska.
delay10(25);
PORTB=0b0000.0000; // PORTB släckt (4dioder) Funkar som det ska.
delay10(25);
}
Jättetacksam om någon skulle vara så snäll o modifiera snutten ovan så att det skulle funka så jag kommer igång...

Det som är inkopplat till PORTA är en annan krets som ger en siffra mellan 0 och 16. Så pinnarna flyter inte.
Tack i förhand!
Netz