Irrtum vorbehalten:
die fallende Int0 sagt aus, das der Kanal vorher zu ende ist UND der nächste beginnt.
Beim ersten Impuls gibt's keinen Vorgänger, daher schreibt er den Timer0 nach Kanal(0) (= Nirwana)
erst der zweite impuls/flanke definiert die breite des ersten Kanals, und der landet ja dann in Kanal(1)
edit: das programm ist allerdings tricky, denn
kanal(0) ist eigentlich das Byte VOR dem array
wenn da was anderes definiert ist, kann es krachen
Lesezeichen