Рабочая секция

; текст основной программы

ORG 0 ; точка входа – вектор сброса

; инициализация МК

movlw 0xFF

tris PORTA ; настройка порта А на ввод

movlw b'11111110'

tris PORTB ; настройка RB0 на вывод

movlw b'00111000'

option ; настройка таймера

; основная программа

main

bcf INTCON, T0IF ; сброс флага переполнения таймера

movlw -K1 ; количество импульсов до переполнения

movwf TMR0 ; инициализация значения таймера

m1

btfss INTCON, T0IF

goto m1 ; ожидание переполнения таймера

movlw 1

xorwf PORTB, F ; формирование выходного сигнала

bcf INTCON, T0IF ; сброс флага переполнения таймера

movlw -K2 ; количество импульсов до переполнения

movwf TMR0 ; инициализация значения таймера

m2

btfss INTCON, T0IF

goto m2 ; ожидание переполнения таймера

movlw 1

xorwf PORTB, F ; формирование выходного сигнала

goto main ; продолжение программы