Код сшивки на ассемблере AVR
Код
; ГО - CH DH DL - Старш. Сред. Младш.
; ТО - CL AH AL - Старш. Сред. Младш.
;-----------------------------"сшивка" кодов точного и грубого каналов
; согласование отсчетов
lsl DL ; сдвиг кода ГО на 5 разрядов
rol DH
rol CH
lsl DL
rol DH
rol CH
lsl DL
rol DH
rol CH
lsl DL
rol DH
rol CH
lsl DL
rol DH
rol CH
mov BH,CH
andi CH,0x07
ldi XH,0
ldi XL,KodTO_Lo
ld AL,X+
ld AH,X+
ld CL,X
andi CL,0x07
ldi BL,0x08
sub CH,CL
brcs sh0
cpi CH,0x04
brcs sh1
add BH,BL ; добавить единицу в код ГО
rjmp sh1
sh0: com CH
cpi CH,0x04
brcs sh1
sub BH,BL ; вычесть единицу из кода ГО
sh1: andi BH,0xf8
or BH,CL