Gast
#3231313
Hallo, ich möchte gerne bei meinem Pic16 ein Read-modify-write Problem beheben. Es handelt sich um den PortB , bei dem ein paar der Ports als Eingang und die restlichen als Ausgang dienen. Über zwei der Ausgänge werden Led angesteuert. Bsp. bsf portB,2 bsf portB,3 zuerst werden die zwei Led ein geschalten und danach wird eine Warteschleife durchlaufen. Mit bcf PortB2 bcf PortB3. werden sie nun nacheinander wieder abgeschalten. Bei mir kommt es jedoch nun aufgrund der zwei direkt aufeinanderfolgenden bcf Befehlen zu einem read-modify-write Problem. Denn die zweite Led wird nur für einen Taktzyklus aus und schaltet sich dann wieder ein. Ich könnte ja nun ein delay zwischen die beiden befehle packen. Ich wurde aber lieber beide Ports gleichzeitig schalten. Z.b. mit einer Bitmaske ver-unden. Dabei würde es zu keiner Verzögerung kommen und die led schalten gleichzeitig. Nun hängen aber außer den beiden Ausgängen für die led auch noch ein paar Eingänge mit dran. Funktioniert das dann überhaubt oder kann ich den gesamten PortB mit seinen Ein- und Ausgängen nicht ohne Probleme mit einer Bitmaske verunden ?