Class ArchAVR_Device

Inheritance Relationships

Base Type

Class Documentation

class ArchAVR_Device : public Device

Implementation of a MCU for AVR series.

Public Types

enum FlashSection

Values:

enumerator Section_AppRWW
enumerator Section_AppNRWW
enumerator Section_Boot
enumerator Section_Count
enum FlashSectionFlags

Values:

enumerator Access_RWW
enumerator Access_IntDisabled

Public Functions

explicit ArchAVR_Device(const ArchAVR_DeviceConfig &config)
virtual ~ArchAVR_Device()

Protected Functions

virtual bool core_ctlreq(ctlreq_id_t req, ctlreq_data_t *reqdata) override

Callback for processing the requests to the core.

See also

ctlreq()

virtual bool program(const Firmware &firmware) override

Override to load the EEPROM.

virtual flash_addr_t reset_vector() override

Override to provide the reset vector depending on fuse settings. The FUSE peripheral is queried for the value of the fuse BOOTRST.

If BOOTRST is 1, 0x0000 is returned.

If BOOTRST is 0, the 1st address of the Boot section is returned.