/// <summary> /// Crates a new EEPROM Handler to enable EEPROM functionality. /// IMPORTANT: call dispose(); when it's no longer needed. /// </summary> /// <param name="_registerFileMap"></param> /// <param name="_eepromMemory"></param> public EEPROMHandler(Register.RegisterFileMap _registerFileMap, Data.EEPROMMemory _eepromMemory) { this.registerFileMap = _registerFileMap; this.eepromMemory = _eepromMemory; this.valueChangeListener = new Data.DataAdapter<byte>.OnDataChanged(onValueChange); registerSelfWithRegisterFileMap(); }
public ProgramCounter(RegisterFileMap _registerFileMap) { this.registerFileMap = _registerFileMap; this.upperBits = new Data.DataAdapter<byte>(); onPclChangeListener = new Data.DataAdapter<byte>.OnDataChanged(onPclChange); registerFileMap.registerDataListener(onPclChangeListener, RegisterConstants.PCL_ADDRESS); initializeValue(); }
public Timer0(Register.RegisterFileMap _registerFileMap, PIC _pic) { tmr0Register = _registerFileMap.getAdapter(Register.RegisterConstants.TMR0_ADDRESS); optionRegister = _registerFileMap.getAdapter(Register.RegisterConstants.OPTION_REG_BANK1_ADDRESS); registerFileMap = _registerFileMap; internalCounter = 0; timerHandler = new Timer0Handler(_registerFileMap, this, _pic); }
internal PortSerialization(Register.RegisterFileMap registerFileMap) { this.portA = registerFileMap.getAdapter(Register.RegisterConstants.PORTA_ADDRESS); this.portB = registerFileMap.getAdapter(Register.RegisterConstants.PORTB_ADDRESS); this.trisA = registerFileMap.getAdapter(Register.RegisterConstants.TRISA_BANK1_ADDRESS); this.trisB = registerFileMap.getAdapter(Register.RegisterConstants.TRISB_BANK1_ADDRESS); comPort.DataReceived += comPort_DataReceived; }
public WDT(PIC _pic) { this.pic = _pic; optionRegister = pic.getRegisterFileMap().getAdapter(Register.RegisterConstants.OPTION_REG_BANK1_ADDRESS); optionRegister.DataChanged += onOptionRegisterChange; wdtTimer = new System.Timers.Timer(); wdtTimer.Interval = calculateWdtInterval(); wdtTimer.Elapsed += onWdtTimerElapsed; wdtTimer.AutoReset = false; }
public InterruptHandler(PIC _pic, Register.RegisterFileMap _registerFileMap) { this.pic = _pic; this.registerFileMap = _registerFileMap; this.oldPortBValue = registerFileMap.Get(Register.RegisterConstants.PORTB_ADDRESS); this.oldIntconValue = registerFileMap.Get(Register.RegisterConstants.INTCON_ADDRESS); this.oldEecon1Value = registerFileMap.Get(Register.RegisterConstants.EECON1_BANK1_ADDRESS); this.valueChangeListener = new Data.DataAdapter<byte>.OnDataChanged(onValueChange); this.portBValueChangeListener = new Data.DataAdapter<byte>.OnDataChanged(onPortBValueChange); registerSelfWithRegisterFileMap(); }
public Timer0Handler(Register.RegisterFileMap _registerFileMap, Timer0.Timer0 _timer0, PIC _pic) { pic = _pic; this.registerFileMap = _registerFileMap; this.timer0 = _timer0; lastPortAValue = _registerFileMap.Get(Register.RegisterConstants.PORTA_ADDRESS); // instance delegates this.portAValueChangeListener = new Data.DataAdapter<byte>.OnDataChanged(onPortAValueChange); this.tmr0RegisterChangeListener = new Data.DataAdapter<byte>.OnDataChanged(onTMR0RegisterChanged); this.cycleEndListener = new PIC.OnCycleEnd(onCycleEnd); registerDelegates(); }