class AVR::RegisterWithBitNumber

Attributes

bit_mask[R]
bit_number[R]
register[R]

Public Class Methods

new(register, bit_number) click to toggle source
Calls superclass method
# File lib/avr/register_with_bit_number.rb, line 18
def initialize(register, bit_number)
  @register = register
  @bit_number = bit_number
  @bit_mask = T.let(1<<bit_number, Integer)
  super()
end

Public Instance Methods

name() click to toggle source
# File lib/avr/register_with_bit_number.rb, line 36
def name
  "#{register.name}.#{bit_number}"
end
value() click to toggle source
# File lib/avr/register_with_bit_number.rb, line 26
def value
  (register.value & bit_mask) >> bit_number
end
value=(new_value) click to toggle source
# File lib/avr/register_with_bit_number.rb, line 31
def value=(new_value)
  register.value |= (new_value << bit_number) & bit_mask
end