/p> 
 Time10 (*) byte constant (0E0h, 0E7h, 0E1h, 23h, 0E1h, 2Dh, 0E1h, 37H, 0E1h, 073h, 0E1h, 07Dh), (*) byte constant (0E1h, 87h, 0E1h, 0C3h, 0E1h , 0CDh, 0E1h, 0D7H, 0E2h, 0B3h, 0E2h), (*) byte constant (0BDh, 0E2h, 0C7h, 0E3h, 3,0 E3h, 0Dh, 0E3h, 17H, 0E3h, 53h, 0E3h, 5Dh), 
 /* таймінги прийому знака */(*) byte constant (0E3h, 67h, 0E3h, 0А3h, 0E3h), 
  (Davl, VVeter) byte,/* измер тиск і шв вітру */
  (T1, T2) byte,/* вимірювана температура */
  (Zn1, Zn2) bit,/* знак прийнятої температури */
  (thp, tlp) byte, 
  (f1, f2) bit,/* прапори відповіді датчиків температури */
  Chvetr byte,/* лічильник визначення шв вітру */
  ind (32) byte, 
  (i, j, tp, n, p, pt, adrh1, adrh2, adrl1, adrl2, pp) byte, 
  (flTim, flVlagn, flTemometr, FlC, FlI2C) bit,/* прапори визначення режиму роботи */byte,/* номери натиснутоюклавіші */
  (Sek, Min, Chas, TimerChas, Timermin, DanP) byte/* лічильники годин і таймера */
  Dat (6) byte, 
  flViev ;/ * прапор перегляду утримуємо пам'яті */
   V_Vetra: procedure interrupt 0 ;/ * визначення швидкості вітру */ 
   Chvetr = chvetr +1; V_Vetra; _key: procedure interrupt 2;  
  k = (P1 and 000000111b); case k; 
 : do; Chas = Chas +1; if chas = 24 then chas = 0; end; 
				
				
				
				
			 : do; min = min +1; if min = 60 then min = 0; end 
 : do; TimerChas = Chas +1; if Timerchas = 24 then Timerchas = 0; end 
 : do; Timermin = Timermin +1; if Timermin = 60 then Timermin = 0; end 
 : FlVlagn = 1; 
 : FlT = 1; 
 : do; DanP = 10; FlViev = 1; adrl1 = adrl1 +1; if CY then adrh1 = adrh1 +1; pp = 0; end; 
 : do; DanP = 10; FlViev = 1; adrl1 = adrl1 +1; if CY then adrh1 = adrh1 +1; pp = 0; end;; 
   end in_key; _int: procedure interrupt 1;/* переривання t0 */ 
  th0 = 0d8h; tl0 = 0efh; = pt +1; pt = 100 then do; sek = sek +1; per_t0 = 0; sek = 60 then; min = min +1; min = 60 then min = 0 ; = Chas +1; chas = 24 then do; = 0; 
 /* запис інформації в пам'ять */
  flI2C = 1; pp = 0; 
  end;; p30 = 0 then P14 = 1 else p14 = 0; 10 = 0; 
  P14, p13 = 0;/* початковий скидання і перевірка наявності пристрою */
  Do while (th0 <0DAh) and (tl0 <0E3h); end ;/ * пауза скидання 500мкс */
   Do while (th0 <0DBh) and (tl0 <2Fh); end; not (P13) then f1 = 1; not (P14) then f2 = 1;/* при відповіді датчика устанавл прапор готовн до обміну */ 
  Do while (th0 <0DCh) and (tl0 <42h); end ;/ * таймаут для завершення ініціалізації */
 /* цикл передачі команди безадресного обігу - ССh */
  Do n = 0 to 8/* передача таймслота за заздалегідь розрахованим затримок */
  If f1 then P14 = 0; if f2 then P32 = 0;/* передача 0 */while (th0