#include <at90canbase.h>
Public Member Functions | |
AvrDevice_at90canbase (unsigned ram_bytes, unsigned flash_bytes, unsigned ee_bytes) | |
~AvrDevice_at90canbase () | |
Protected Attributes | |
Pin | aref |
analog reference pin | |
HWPort | porta |
port B | |
HWPort | portb |
port B | |
HWPort | portc |
port C | |
HWPort | portd |
port D | |
HWPort | porte |
port E | |
HWPort | portf |
port F | |
HWPort | portg |
port G | |
IOSpecialReg | gtccr_reg |
GTCCR IO register. | |
IOSpecialReg | assr_reg |
ASSR IO register. | |
HWPrescaler | prescaler013 |
prescaler unit for timer 0 and 1 | |
HWPrescalerAsync | prescaler2 |
prescaler unit for timer 2 | |
ExternalIRQHandler * | extirq01 |
external interrupt support for INT0, INT1, INT2, INT3, INT4, INT5, INT6, INT7 | |
IOSpecialReg * | eicra_reg |
EICRA IO register. | |
IOSpecialReg * | eicrb_reg |
EICRA IO register. | |
IOSpecialReg * | eimsk_reg |
EIMSK IO register. | |
IOSpecialReg * | eifr_reg |
EIFR IO register. | |
HWAdmux | admux |
adc multiplexer unit | |
HWAd * | ad |
adc unit | |
HWSpi * | spi |
spi unit | |
HWAcomp * | acomp |
analog compare unit | |
HWUsart * | usart0 |
usart 0 unit | |
HWUsart * | usart1 |
usart 1 unit | |
TimerIRQRegister * | timerIrq0 |
timer interrupt unit for timer 0 | |
HWTimer8_1C * | timer0 |
timer 0 unit | |
ICaptureSource * | inputCapture1 |
input capture source for timer1 | |
TimerIRQRegister * | timerIrq1 |
timer interrupt unit for timer 1 | |
HWTimer16_3C * | timer1 |
timer 1 unit | |
TimerIRQRegister * | timerIrq2 |
timer interrupt unit for timer 2 | |
HWTimer8_1C * | timer2 |
timer 2 unit | |
ICaptureSource * | inputCapture3 |
input capture source for timer3 | |
TimerIRQRegister * | timerIrq3 |
timer interrupt unit for timer 3 | |
HWTimer16_3C * | timer3 |
timer 3 unit | |
GPIORegister * | gpior0_reg |
GPIORegister * | gpior1_reg |
GPIORegister * | gpior2_reg |
AVRDevice class for AT90CAN/32/64/128
This device isn't completely implemented. There is no boot loader section support for >= ATMega88, only normal interrupt vector start address supported, incomplete usart registers (and maybe more ...)
Timer2 needs the external clocking bits
Definition at line 49 of file at90canbase.h.
AvrDevice_at90canbase::AvrDevice_at90canbase | ( | unsigned | ram_bytes, | |
unsigned | flash_bytes, | |||
unsigned | ee_bytes | |||
) |
Creates the device for ATMega48/88/168/328
ram_bytes | how much SRAM does the device own | |
flash_bytes | how much flash memory does the device own | |
ee_bytes | how much EEPROM space does the device own |
Definition at line 65 of file at90canbase.cpp.
References acomp, HWAcomp::acsr_reg, ad, HWAd::adch_reg, HWAd::adcl_reg, HWAd::adcsr_reg, admux, HWAdmux::admux_reg, aref, assr_reg, AvrDevice::coreTraceGroup, HWPort::ddr_reg, HWEeprom::DEVMODE_EXTENDED, HWEeprom::eearh_reg, HWEeprom::eearl_reg, HWEeprom::eecr_reg, HWEeprom::eedr_reg, AvrDevice::eeprom, eicra_reg, eicrb_reg, eifr_reg, eimsk_reg, AddressExtensionRegister::ext_reg, extirq01, AvrDevice::flagJMPInstructions, TimerIRQRegister::getLine(), AvrDevice::GetPin(), gpior0_reg, gpior1_reg, gpior2_reg, gtccr_reg, HWTimer16::icr_h_reg, HWTimer16::icr_l_reg, inputCapture1, inputCapture3, AvrDevice::irqSystem, HWTimer16::ocra_h_reg, HWTimer16::ocra_l_reg, HWTimer8::ocra_reg, HWTimer16::ocrb_h_reg, HWTimer16::ocrb_l_reg, HWTimer16::ocrc_h_reg, HWTimer16::ocrc_l_reg, HWPort::pin_reg, HWPort::port_reg, porta, portb, portc, portd, porte, portf, portg, prescaler013, prescaler2, AvrDevice::rampz, ExternalIRQHandler::registerIrq(), TimerIRQRegister::registerLine(), AvrDevice::RegisterPin(), AvrDevice::Reset(), AvrDevice::rw, HWSpi::spcr_reg, HWSpi::spdr_reg, spi, HWSpi::spsr_reg, AvrDevice::stack, AvrDevice::statusRegister, HWTimer8_1C::tccr_reg, HWTimer16_3C::tccra_reg, HWTimer16_3C::tccrb_reg, HWTimer16_3C::tccrc_reg, HWTimer16::tcnt_h_reg, HWTimer16::tcnt_l_reg, HWTimer8::tcnt_reg, TimerIRQRegister::tifr_reg, timer0, timer1, timer2, timer3, timerIrq0, timerIrq1, timerIrq2, timerIrq3, TimerIRQRegister::timsk_reg, HWUart::ubrr_reg, HWUart::ubrrhi_reg, HWUart::ucsra_reg, HWUart::ucsrb_reg, HWUsart::ucsrc_reg, HWUart::udr_reg, usart0, usart1, AvrDevice::wado, and HWWado::wdtcr_reg.
AvrDevice_at90canbase::~AvrDevice_at90canbase | ( | ) |
Definition at line 37 of file at90canbase.cpp.
References acomp, ad, eicra_reg, eicrb_reg, eifr_reg, eimsk_reg, extirq01, gpior0_reg, gpior1_reg, gpior2_reg, inputCapture1, inputCapture3, spi, timer0, timer1, timer2, timer3, timerIrq0, timerIrq1, timerIrq2, timerIrq3, usart0, and usart1.
HWAcomp* AvrDevice_at90canbase::acomp [protected] |
analog compare unit
Definition at line 72 of file at90canbase.h.
Referenced by AvrDevice_at90canbase(), and ~AvrDevice_at90canbase().
HWAd* AvrDevice_at90canbase::ad [protected] |
adc unit
Definition at line 70 of file at90canbase.h.
Referenced by AvrDevice_at90canbase(), and ~AvrDevice_at90canbase().
HWAdmux AvrDevice_at90canbase::admux [protected] |
adc multiplexer unit
Definition at line 69 of file at90canbase.h.
Referenced by AvrDevice_at90canbase().
Pin AvrDevice_at90canbase::aref [protected] |
analog reference pin
Definition at line 52 of file at90canbase.h.
Referenced by AvrDevice_at90canbase().
IOSpecialReg AvrDevice_at90canbase::assr_reg [protected] |
ASSR IO register.
Definition at line 61 of file at90canbase.h.
Referenced by AvrDevice_at90canbase().
IOSpecialReg* AvrDevice_at90canbase::eicra_reg [protected] |
EICRA IO register.
Definition at line 65 of file at90canbase.h.
Referenced by AvrDevice_at90canbase(), and ~AvrDevice_at90canbase().
IOSpecialReg* AvrDevice_at90canbase::eicrb_reg [protected] |
EICRA IO register.
Definition at line 66 of file at90canbase.h.
Referenced by AvrDevice_at90canbase(), and ~AvrDevice_at90canbase().
IOSpecialReg* AvrDevice_at90canbase::eifr_reg [protected] |
EIFR IO register.
Definition at line 68 of file at90canbase.h.
Referenced by AvrDevice_at90canbase(), and ~AvrDevice_at90canbase().
IOSpecialReg* AvrDevice_at90canbase::eimsk_reg [protected] |
EIMSK IO register.
Definition at line 67 of file at90canbase.h.
Referenced by AvrDevice_at90canbase(), and ~AvrDevice_at90canbase().
ExternalIRQHandler* AvrDevice_at90canbase::extirq01 [protected] |
external interrupt support for INT0, INT1, INT2, INT3, INT4, INT5, INT6, INT7
Definition at line 64 of file at90canbase.h.
Referenced by AvrDevice_at90canbase(), and ~AvrDevice_at90canbase().
GPIORegister* AvrDevice_at90canbase::gpior0_reg [protected] |
Definition at line 87 of file at90canbase.h.
Referenced by AvrDevice_at90canbase(), and ~AvrDevice_at90canbase().
GPIORegister* AvrDevice_at90canbase::gpior1_reg [protected] |
Definition at line 88 of file at90canbase.h.
Referenced by AvrDevice_at90canbase(), and ~AvrDevice_at90canbase().
GPIORegister* AvrDevice_at90canbase::gpior2_reg [protected] |
Definition at line 89 of file at90canbase.h.
Referenced by AvrDevice_at90canbase(), and ~AvrDevice_at90canbase().
IOSpecialReg AvrDevice_at90canbase::gtccr_reg [protected] |
GTCCR IO register.
Definition at line 60 of file at90canbase.h.
Referenced by AvrDevice_at90canbase().
ICaptureSource* AvrDevice_at90canbase::inputCapture1 [protected] |
input capture source for timer1
Definition at line 77 of file at90canbase.h.
Referenced by AvrDevice_at90canbase(), and ~AvrDevice_at90canbase().
ICaptureSource* AvrDevice_at90canbase::inputCapture3 [protected] |
input capture source for timer3
Definition at line 83 of file at90canbase.h.
Referenced by AvrDevice_at90canbase(), and ~AvrDevice_at90canbase().
HWPort AvrDevice_at90canbase::porta [protected] |
HWPort AvrDevice_at90canbase::portb [protected] |
HWPort AvrDevice_at90canbase::portc [protected] |
HWPort AvrDevice_at90canbase::portd [protected] |
HWPort AvrDevice_at90canbase::porte [protected] |
HWPort AvrDevice_at90canbase::portf [protected] |
HWPort AvrDevice_at90canbase::portg [protected] |
HWPrescaler AvrDevice_at90canbase::prescaler013 [protected] |
prescaler unit for timer 0 and 1
Definition at line 62 of file at90canbase.h.
Referenced by AvrDevice_at90canbase().
HWPrescalerAsync AvrDevice_at90canbase::prescaler2 [protected] |
prescaler unit for timer 2
Definition at line 63 of file at90canbase.h.
Referenced by AvrDevice_at90canbase().
HWSpi* AvrDevice_at90canbase::spi [protected] |
spi unit
Definition at line 71 of file at90canbase.h.
Referenced by AvrDevice_at90canbase(), and ~AvrDevice_at90canbase().
HWTimer8_1C* AvrDevice_at90canbase::timer0 [protected] |
timer 0 unit
Definition at line 76 of file at90canbase.h.
Referenced by AvrDevice_at90canbase(), and ~AvrDevice_at90canbase().
HWTimer16_3C* AvrDevice_at90canbase::timer1 [protected] |
timer 1 unit
Definition at line 79 of file at90canbase.h.
Referenced by AvrDevice_at90canbase(), and ~AvrDevice_at90canbase().
HWTimer8_1C* AvrDevice_at90canbase::timer2 [protected] |
timer 2 unit
Definition at line 81 of file at90canbase.h.
Referenced by AvrDevice_at90canbase(), and ~AvrDevice_at90canbase().
HWTimer16_3C* AvrDevice_at90canbase::timer3 [protected] |
timer 3 unit
Definition at line 85 of file at90canbase.h.
Referenced by AvrDevice_at90canbase(), and ~AvrDevice_at90canbase().
TimerIRQRegister* AvrDevice_at90canbase::timerIrq0 [protected] |
timer interrupt unit for timer 0
Definition at line 75 of file at90canbase.h.
Referenced by AvrDevice_at90canbase(), and ~AvrDevice_at90canbase().
TimerIRQRegister* AvrDevice_at90canbase::timerIrq1 [protected] |
timer interrupt unit for timer 1
Definition at line 78 of file at90canbase.h.
Referenced by AvrDevice_at90canbase(), and ~AvrDevice_at90canbase().
TimerIRQRegister* AvrDevice_at90canbase::timerIrq2 [protected] |
timer interrupt unit for timer 2
Definition at line 80 of file at90canbase.h.
Referenced by AvrDevice_at90canbase(), and ~AvrDevice_at90canbase().
TimerIRQRegister* AvrDevice_at90canbase::timerIrq3 [protected] |
timer interrupt unit for timer 3
Definition at line 84 of file at90canbase.h.
Referenced by AvrDevice_at90canbase(), and ~AvrDevice_at90canbase().
HWUsart* AvrDevice_at90canbase::usart0 [protected] |
usart 0 unit
Definition at line 73 of file at90canbase.h.
Referenced by AvrDevice_at90canbase(), and ~AvrDevice_at90canbase().
HWUsart* AvrDevice_at90canbase::usart1 [protected] |
usart 1 unit
Definition at line 74 of file at90canbase.h.
Referenced by AvrDevice_at90canbase(), and ~AvrDevice_at90canbase().