Cái này áp dụng với một số lệnh dạng read-modifier-write thì phải.
Chẳng hạn ban đầu portb = 0x00, sau đó có lệnh portb = ~ portb, đáng lý ra portb sau đó phải bằng 0xff, nhưng nếu trong quá trình thực thi lệnh mà portb bị ngoại vi thay đổi giá trị thành 0x01 chẳng hạn thì kết quả của lệnh portb = ~ portb sẽ là portb = 0xfe.Thay PORTB bằng LATB sẽ giả quyết vấn đề này.
|