Бит-банг через адреса пинов, прописанные в таблице:
168 for (uint8_t i = 0; i < sizeof(Pca9555emul_Io)/sizeof(Pca9555emul_Io[0]); i++, mask<<=1) \ 00000078 0x2100 MOVS R1,#+0 169 { 170 if (regs.output & mask) \ ??Cmd_12: \ 0000007A 0xEB08 0x02C1 ADD R2,R8,R1, LSL #+3 \ 0000007E 0x4238 TST R0,R7 \ 00000080 0xBF14 ITE NE \ 00000082 0x2301 MOVNE R3,#+1 \ 00000084 0xF44F 0x3380 MOVEQ R3,#+65536 171 { 172 PinSet(&Pca9555emul_Io[i]); 173 } 174 else // ыюу. 0 175 { 176 PinClr(&Pca9555emul_Io[i]); \ 00000088 0x6856 LDR R6,[R2, #+4] \ 0000008A 0x40B3 LSLS R3,R3,R6 \ 0000008C 0x6812 LDR R2,[R2, #+0] \ 0000008E 0x6113 STR R3,[R2, #+16] 177 } 178 } \ 00000090 0x1C49 ADDS R1,R1,#+1 \ 00000092 0x007F LSLS R7,R7,#+1 \ 00000094 0x2910 CMP R1,#+16 \ 00000096 0xD3F0 BCC.N ??Cmd_12