Hallo,

wenn Du den Teiler auf 1024 hast, wird der Timer alle 16MHz/1024 um eins hochgezählt. Er läuft dann über, wenn er bei 255 um eins hochzählen will, also noch mal durch 256 teilen, was dann mehr als 10ms ergibt.
Wenn du 10ms erreichen willst, muss Du den Timer mit 100 vorladen, nicht mit 0, denn das macht der selber wenn er übergelaufen ist.
Und bis 156 brauchst Du dann auch nicht zählen, einfach bei jedem IRQ die LED umschalten, und den Timer setzen.
Der Timer zählt dann von 100 bis 255 läuft danach über und ruft die ISR auf. Hier sind dann auch wieder deine 156 die Du errechnet hast.