Nechápu co jsi vyřešil tím, že místo přerušení od přetečení čítače0 použiješ externí přerušení.
Podívej se do helpu ENABLE jaké jsou názvy přerušení.
Pro přetečení timer0 můžeš použít OVF0,TIMER0, COUNTER0.
Tvůj původní kód má tyto chyby:
Do ' Hlavni cyklus
Portb.1 = 0 ' Blikni zelenu led
Waitms 150
Portb.1 = 0
Waitms 300 ' Konec hlavniho cyklu
Loop
S tímto ledka blikat nebude.
If B > 27500 Then
To odpovídá intervalu asi 900 vteřin, ne 3,5.
Zkus hodnotu 100.
Edit:
A samozřejmě vynechat ELSE v obsluze přerušení.