示例#1
0
        private static void CheckIfRBOInterrupt(byte altOptionRegister)
        {
            byte   neuOptionRegister         = getRegisterWert(0x81); //neuer OptionRegisterWert wird ausgelesen um INTEDG auf Veränderung zu prüfen
            string altOptionRegisterAsString = Convert.ToString(altOptionRegister);
            string neuOptionRegisterAsString = Convert.ToString(neuOptionRegister);

            try
            {
                string altINTEDG = altOptionRegisterAsString.Substring(1, 1);
                string neuINTEDG = neuOptionRegisterAsString.Substring(1, 1);
                if (altINTEDG != neuINTEDG)
                {
                    byte tempPortB = getRegisterWert(PORTB);
                    WriteToBank(PORTB, (byte)(tempPortB | 0x01));
                    CopyBanks();
                    Interrupt.CallRB0Interrupt();
                }
            }
            catch (Exception)
            {
            }
        }