Skip to content

Step 1 of 11

Welcome: polling vs interrupts

Goals for this step

When you finish 10 steps you will have a real ISR blinking an LED without checking flags in a loop.

One step = one concrete action you can mark before continuing.

Do not advance if the step checklist is not done.

We will build one file guia-interrupciones.asm that grows each step.

So far in GPIO you read the button with polling (BTFSS PORTB in a loop). Here hardware notifies the PIC when Timer0 overflows: jump to vector 0x0008 (08H) and run the ISR.

Course order: vectors → RAM variables → Timer0 → enable GIE → write ISR → save context → test in Proteus.

Use the guide tracker (right panel): each step has Follow these steps, Your file so far, and Checklist before you continue.

  1. Read the tracker goal: LED on RB0 blinks via Timer0 interrupt, not polling.
  2. Review theory at Interrupts — event → vector → ISR → RETFIE flow.
  3. Have MPLAB and Proteus ready (you can reuse the LED schematic from the ports guide).
  4. Click Next — step 1 is creating the project, no code yet.
  • I understand polling vs interrupt.
  • I know where the guide tracker is on screen.
  • I know the high-priority vector is 0x0008 (08H).