Там что-то вроде двухстадийного конвейера, поэтому последовательность PORTx=0; PORTx=1; PORTx=0; PORTx=1; вгоняет железяку в ступор. Прореживание нопами (или вставка любой команды) приносит щасте.
Лично я пользую так: if (PORTx.1) PORTx.1 = 0; else PORTx.1 = 1;