RcvData; так як процедура читання сама збільшує адресу на 1, то сама сформує адресу із запитом на чтеніеR0A, # 01hA, @ R0; приберемо з старшого байта старші 4 біти @ R1, A; запишемо старший байт елемента масиву N5R0; адресу молодшого байта з АЦПR1; адресу наступного байта масиву N5A, @ R0; молодший байт з АЦП @ R1, A ; молодший байт елемента масиву N5R1; адреса наступного елемента масиву N5R7, AINPUT_CYCLE_N6DPTR, # 8002h; вибір каналу мультіплексораA, # 00h @ DPTR, A; виставимо номер каналу; подождемCONVST; включення АЦП; очікування переходу АЦП із сплячого в нормальний режімCONVST; захоплення сигналу і запуск конвертації на АЦПSlvAdr, # ADC_ADDR; завантажимо адресу із запитом запису - останній біт "0" R0, # RcvDat; ByteCnt, # 2; RcvData; так як процедура читання сама збільшує адресу на 1, то сама сформує адресу із запитом на чтеніеR0A , # 01hA, @ R0; приберемо з старшого байта старші 4 бітаR1, # N7; адресу N7 @ R1, A; запишемо старший байт N7R0R1A, @ R0; молодший байт з АЦП @ R1, A; запишемо молодший байт N7
;////////////////////////////////////// _Q2: R7, # N; записуємо лічильник елементів у масиві Q2R0, # N5; початковий адреса масиву N5R1, # N6; початковий адреса масиву N6sum +2, # 00h; Обнуляємо старший байт суми QiQ2 +2, # 00h; Обнуляємо старший байт суми масиву Q2_Q2_cycle: sum, # 00h; обнуління буфера проміжних суммsum +1, # 00h; sum +2, # 00h; A, @ R0; отримання старшого байтаA; зрушення вправо старшого байта елемента масиву N5R5, A; запис старшого байта елемента масиву N5 у R1R0; збільшення адреси для доступу до молодшому байту масиву N5A, @ R0; отримання молодшого байта елемента масиву N5A; зрушення вправо молодшого байта масиву N5, в результаті імеемR4, A; поділений на 2 елемент масиву N5C; R0; збільшення індексу для доступу до слід. елементам массіваA, @ R1; отримання старшого байта елемента масиву N6R3, A; запис старшого байта елемента масиву N6 у R3R1; збільшення адреси для доступу до молодшого байту масиву N6A, @ R1; отримання молодшого байта елемента масиву N6R2, A; запис молодшого байта елемента масиву N6 у R2R1; збільшення індексу для доступу до слід. елементам масиву
; подсуммірованіем кa, R4; молодший байт N5/2A, # K; подсуммірованіем КR4, A; A, R5; старший байт N5/2A, # 0; облік переполненіяR5, A; A, R4; молодший байт N5/2A , R2; додавання з молодшим байтом N6sum, A; запис молодшого байта проміжної суммиA, R5; старший байт N5/2A, R3; додавання зі старшим байтом N6sum +1, A; запис середнього байта проміжної суммиCALC_Q2_m11; sum +2; облік переполненія_Q2_m11: ; A, R0ACCA, R1ACC
; додавання Q і поточної суми елементовR0, # Q2; адресу Q2R1, # sum; адресу sumR3, # 3; кількість байтів Q2C; _Q2_addm:; A, @ R0; запис байта Q2A, @ R1; додавання з байтом sum @ R0, A; запам'ятовування Байт суммиR0; адресу наступного байта Q2R1; адресу наступного байта sumR3, CALC_Q2_addm; рахунок кількості байтовACCR1, ACCACCR0, ACCR7, CALC_Q2_cycle; рахунок кількості елементів масиву
; поділ суми Q2 на...