Class: C99::NVMSub
Instance Attribute Summary
Attributes inherited from NVM
Instance Method Summary collapse
-
#add_reg_with_block_format ⇒ Object
Tests that the block format for defining registers works.
- #redefine_data_reg ⇒ Object
Methods inherited from NVM
#add_multi_split_reg, #add_proth_reg, #added_method, #override_method
Instance Method Details
#add_reg_with_block_format ⇒ Object
Tests that the block format for defining registers works
51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 |
# File 'lib/c99/nvm.rb', line 51 def add_reg_with_block_format # ** Data Register 3 ** # This is dreg add_reg :dreg, 0x1000, size: 16 do |reg| # This is dreg bit 15 reg.bit 15, :bit15, reset: 1 # **Bit 14** - This does something cool # # 0 | Coolness is disabled # 1 | Coolness is enabled reg.bits 14, :bit14 # This is dreg bit upper reg.bits 13..8, :upper # This is dreg bit lower # This is dreg bit lower line 2 reg.bit 7..0, :lower, writable: false, reset: 0x55 end # This is dreg2 reg :dreg2, 0x1000, size: 16 do # This is dreg2 bit 15 bit 15, :bit15, reset: 1 # This is dreg2 bit upper bits 14..8, :upper # This is dreg2 bit lower # This is dreg2 bit lower line 2 bit 7..0, :lower, writable: false, reset: 0x55 end # Finally a test that descriptions can be supplied via the API reg :dreg3, 0x1000, size: 16, description: "** Data Register 3 **\nThis is dreg3" do bit 15, :bit15, reset: 1, description: 'This is dreg3 bit 15' bit 14, :bit14, description: "**Bit 14** - This does something cool\n\n0 | Coolness is disabled\n1 | Coolness is enabled" bits 13..8, :upper, description: 'This is dreg3 bit upper' bit 7..0, :lower, writable: false, reset: 0x55, description: "This is dreg3 bit lower\nThis is dreg3 bit lower line 2" end end |
#redefine_data_reg ⇒ Object
46 47 48 |
# File 'lib/c99/nvm.rb', line 46 def redefine_data_reg add_reg :data, 0x40, 16, d: { pos: 0, bits: 16 } end |