simulavr  1.1.0
AvrFuses Class Reference

Support for fuse bits. More...

#include <flashprog.h>

Public Types

enum  { FB_CKDIV8 = 7 }
 

Public Member Functions

 AvrFuses (void)
 
void SetFuseConfiguration (int size, unsigned long defvalue)
 Configure fuses. More...
 
bool LoadFuses (const unsigned char *buffer, int size)
 Initialize fuses from elf, checks proper size. More...
 
unsigned char GetFuseByte (int index)
 Get fuse byte by index. More...
 
bool GetFuseBit (int index)
 Get fuse bit by bit index, starts with 0 on lfuse bit 0, bit = 0 means true! More...
 
int GetFuseByteSize (void)
 Get count of fuse bytes available. More...
 
void SetBootloaderConfig (unsigned addr, int size, int bPosBOOTSZ, int bPosBOOTRST)
 Set bootloader support configuration. More...
 
unsigned int GetBLSStart (void)
 Get start address of bootloader section. More...
 
unsigned int GetResetAddr (void)
 Get reset address. More...
 

Private Attributes

int fuseBitsSize
 count of bits in fuses More...
 
unsigned long fuseBits
 fuse data More...
 
unsigned int nrwwAddr
 start address NRWW section More...
 
unsigned int nrwwSize
 size of NRWW section in byte More...
 
int bitPosBOOTSZ
 bit position BOOTSZ fuses (2 Bit) in fuseBits More...
 
int bitPosBOOTRST
 bit position BOOTRST fuses (1 Bit) in fuseBits More...
 
bool flagBOOTRST
 value of BOOTRST fuse bit More...
 
int valueBOOTSZ
 value of BOOTSZ fuse bits More...
 

Detailed Description

Support for fuse bits.

Definition at line 100 of file flashprog.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
Enumerator
FB_CKDIV8 

lfuse: CKDIV8 bit

Definition at line 113 of file flashprog.h.

Constructor & Destructor Documentation

◆ AvrFuses()

AvrFuses::AvrFuses ( void  )

Definition at line 233 of file flashprog.cpp.

Member Function Documentation

◆ GetBLSStart()

unsigned int AvrFuses::GetBLSStart ( void  )

Get start address of bootloader section.

Definition at line 281 of file flashprog.cpp.

References nrwwAddr, nrwwSize, and valueBOOTSZ.

Referenced by GetResetAddr().

◆ GetFuseBit()

bool AvrFuses::GetFuseBit ( int  index)
inline

Get fuse bit by bit index, starts with 0 on lfuse bit 0, bit = 0 means true!

Definition at line 125 of file flashprog.h.

Referenced by CLKPRRegister::CLKPRRegister(), HWAdmux6::GetValue(), and CLKPRRegister::Reset().

◆ GetFuseByte()

unsigned char AvrFuses::GetFuseByte ( int  index)
inline

Get fuse byte by index.

Definition at line 123 of file flashprog.h.

◆ GetFuseByteSize()

int AvrFuses::GetFuseByteSize ( void  )
inline

Get count of fuse bytes available.

Definition at line 127 of file flashprog.h.

◆ GetResetAddr()

unsigned int AvrFuses::GetResetAddr ( void  )

Get reset address.

Definition at line 303 of file flashprog.cpp.

References flagBOOTRST, and GetBLSStart().

Referenced by AvrDevice::Reset().

◆ LoadFuses()

bool AvrFuses::LoadFuses ( const unsigned char *  buffer,
int  size 
)

Initialize fuses from elf, checks proper size.

Definition at line 251 of file flashprog.cpp.

References bitPosBOOTRST, bitPosBOOTSZ, flagBOOTRST, fuseBits, fuseBitsSize, and valueBOOTSZ.

Referenced by ELFLoad().

◆ SetBootloaderConfig()

◆ SetFuseConfiguration()

Member Data Documentation

◆ bitPosBOOTRST

int AvrFuses::bitPosBOOTRST
private

bit position BOOTRST fuses (1 Bit) in fuseBits

Definition at line 108 of file flashprog.h.

Referenced by LoadFuses(), and SetBootloaderConfig().

◆ bitPosBOOTSZ

int AvrFuses::bitPosBOOTSZ
private

bit position BOOTSZ fuses (2 Bit) in fuseBits

Definition at line 107 of file flashprog.h.

Referenced by LoadFuses(), and SetBootloaderConfig().

◆ flagBOOTRST

bool AvrFuses::flagBOOTRST
private

value of BOOTRST fuse bit

Definition at line 109 of file flashprog.h.

Referenced by GetResetAddr(), and LoadFuses().

◆ fuseBits

unsigned long AvrFuses::fuseBits
private

fuse data

Definition at line 104 of file flashprog.h.

Referenced by LoadFuses(), and SetFuseConfiguration().

◆ fuseBitsSize

int AvrFuses::fuseBitsSize
private

count of bits in fuses

Definition at line 103 of file flashprog.h.

Referenced by LoadFuses(), and SetFuseConfiguration().

◆ nrwwAddr

unsigned int AvrFuses::nrwwAddr
private

start address NRWW section

Definition at line 105 of file flashprog.h.

Referenced by GetBLSStart(), and SetBootloaderConfig().

◆ nrwwSize

unsigned int AvrFuses::nrwwSize
private

size of NRWW section in byte

Definition at line 106 of file flashprog.h.

Referenced by GetBLSStart(), and SetBootloaderConfig().

◆ valueBOOTSZ

int AvrFuses::valueBOOTSZ
private

value of BOOTSZ fuse bits

Definition at line 110 of file flashprog.h.

Referenced by GetBLSStart(), and LoadFuses().


The documentation for this class was generated from the following files: