Правда, это многоканальный(16) длинный счоччег. Но смысл групповухи должен быть понятен.
main_cy:
ldi minus_1_container,low(-1) ;1
in current_port_l,pinc ;1
in current_port_h,pinb ;1
movw temporary_l,current_port_l ;1
eor temporary_l,old_port_l ;1
eor temporary_h,old_port_h ;1
movw old_port_l,current_port_l ;1
and temporary_l,current_port_l ;1
and temporary_h,current_port_h ;1
sbrs temporary_l,0 ;2
rjmp other_L_channel_analyse
lds current_port_l,channel_0_counter ;2
lds current_port_h,channel_0_counter+1 ;2
lds _3_byte_counter,channel_0_counter+2 ;2
sub current_port_l,minus_1_container ;1
sbc current_port_h,minus_1_container ;1
sbc _3_byte_counter,minus_1_container ;1
sbc _4_byte_ch_0_counter,minus_1_container ;1
sts channel_0_counter,current_port_l ;2
sts channel_0_counter+1,current_port_h ;2
sts channel_0_counter+2,_3_byte_counter ;2
;*8
other_L_channel_analyse: