OK, ich hab die Matrix-Abfrage jetzt noch auf Interrupts umgestellt...
Funktioniert sehr gut, ist sicherlich die sauberere Lösung. Denn auch wenn der AVR nicht anderes als ne Fernbedienung sein soll, kann man so ja später noch prima den Stromspar-Modus zuschalten...

Den Code habe ich modifiziert von hier übernommen:
http://www.mcselec.com/index.php?opt...=175&Itemid=41
(SourceCodes -> EDBexperiment10.bas)

Verwendet wird der PinChange-Interrupt (sehr praktisch, kannte ich noch garnicht )

Dummerweise kommt immer noch 27 - klar, im Prinzip hat sich ja auch nix geändert...
Irgendwelche Ideen?

Code:
$regfile = "attiny2313.dat"                                 ' specify the used micro
$crystal = 8000000                                          ' used crystal frequency
$hwstack = 64
$swstack = 16
$framesize = 21

$baud = 9600

Config Kbd = Portb , Debounce = 100 , Rows = 6 , Row5 = Pind.5 , Row6 = Pind.4

Dim Key_scan As Byte
Dim Togbit As Byte , Address As Byte

Pcmsk = &B00001111                                          'This sets the interrupt mask

On Pcint Matrixinput                                        'On interrupt goto  MATRIXINPUT
Enable Pcint                                                'Enable interrupts
Enable Interrupts

Do
   'HIER DER PROGRAMMCODE
Loop

End


Matrixinput:                                                'If we do not disable the interrupts
   Disable Interrupts                                       'GetKBD would generate interrupts
   Waitms 2                                                 'That we cannot use
   Key_scan = Getkbd()                                      'Look in the help file on how to connect the matrix keyboard
   Waitms 2                                                 'Waitms anti bounce

   If Key_scan <> 24 Then
      Goto Rc5_senden
      Print "Keynr.: " ; Key_scan ; " received"             '24 is no key pressed, so if 24 do nothing
   End If

Return_from_interrupt:
   Enable Interrupts

Return



Wait_for_matrix_24:
'Will wait until no key is pressed before enableing the interrupts
   Key_scan = Getkbd()
   If Key_scan = 24 Then Goto Return_from_interrupt
   Goto Wait_for_matrix_24


Rc5_senden:
   Togbit = 0
   Address = 0
   Config Pinb.3 = Output
   Rc5send Togbit , Address , Key_scan