Regenerate the core files, committing them to VCS for the first time

This commit is contained in:
Dylan McKay 2021-01-28 06:06:10 +13:00
parent d6ab7fafd2
commit 9fbcff1f45
16 changed files with 24279 additions and 2 deletions

View File

1854
src/cores/atmega168.rs Normal file

File diff suppressed because it is too large Load Diff

1857
src/cores/atmega168a.rs Normal file

File diff suppressed because it is too large Load Diff

1863
src/cores/atmega168p.rs Normal file

File diff suppressed because it is too large Load Diff

1863
src/cores/atmega168pa.rs Normal file

File diff suppressed because it is too large Load Diff

View File

@ -2,6 +2,7 @@
use crate::{modules, RegisterBits, Register}; use crate::{modules, RegisterBits, Register};
#[allow(non_camel_case_types)]
pub struct EXTENDED; pub struct EXTENDED;
impl EXTENDED { impl EXTENDED {
@ -16,6 +17,7 @@ impl Register for EXTENDED {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0x2 as *mut u8; const ADDRESS: *mut u8 = 0x2 as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct HIGH; pub struct HIGH;
impl HIGH { impl HIGH {
@ -47,6 +49,7 @@ impl Register for HIGH {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0x1 as *mut u8; const ADDRESS: *mut u8 = 0x1 as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct LOW; pub struct LOW;
impl LOW { impl LOW {
@ -70,6 +73,7 @@ impl Register for LOW {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0x0 as *mut u8; const ADDRESS: *mut u8 = 0x0 as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct LOCKBIT; pub struct LOCKBIT;
impl LOCKBIT { impl LOCKBIT {
@ -91,6 +95,7 @@ impl Register for LOCKBIT {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0x0 as *mut u8; const ADDRESS: *mut u8 = 0x0 as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct UDR0; pub struct UDR0;
impl UDR0 { impl UDR0 {
@ -110,6 +115,7 @@ impl Register for UDR0 {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0xc6 as *mut u8; const ADDRESS: *mut u8 = 0xc6 as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct UCSR0A; pub struct UCSR0A;
impl UCSR0A { impl UCSR0A {
@ -143,6 +149,7 @@ impl Register for UCSR0A {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0xc0 as *mut u8; const ADDRESS: *mut u8 = 0xc0 as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct UCSR0B; pub struct UCSR0B;
impl UCSR0B { impl UCSR0B {
@ -176,6 +183,7 @@ impl Register for UCSR0B {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0xc1 as *mut u8; const ADDRESS: *mut u8 = 0xc1 as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct UCSR0C; pub struct UCSR0C;
impl UCSR0C { impl UCSR0C {
@ -203,6 +211,7 @@ impl Register for UCSR0C {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0xc2 as *mut u8; const ADDRESS: *mut u8 = 0xc2 as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct UBRR0; pub struct UBRR0;
impl UBRR0 { impl UBRR0 {
@ -226,6 +235,7 @@ impl Register for UBRR0 {
type T = u16; type T = u16;
const ADDRESS: *mut u16 = 0xc4 as *mut u16; const ADDRESS: *mut u16 = 0xc4 as *mut u16;
} }
#[allow(non_camel_case_types)]
pub struct TWAMR; pub struct TWAMR;
impl TWAMR { impl TWAMR {
@ -244,6 +254,7 @@ impl Register for TWAMR {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0xbd as *mut u8; const ADDRESS: *mut u8 = 0xbd as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct TWBR; pub struct TWBR;
impl TWBR { impl TWBR {
@ -263,6 +274,7 @@ impl Register for TWBR {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0xb8 as *mut u8; const ADDRESS: *mut u8 = 0xb8 as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct TWCR; pub struct TWCR;
impl TWCR { impl TWCR {
@ -293,6 +305,7 @@ impl Register for TWCR {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0xbc as *mut u8; const ADDRESS: *mut u8 = 0xbc as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct TWSR; pub struct TWSR;
impl TWSR { impl TWSR {
@ -313,6 +326,7 @@ impl Register for TWSR {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0xb9 as *mut u8; const ADDRESS: *mut u8 = 0xb9 as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct TWDR; pub struct TWDR;
impl TWDR { impl TWDR {
@ -332,6 +346,7 @@ impl Register for TWDR {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0xbb as *mut u8; const ADDRESS: *mut u8 = 0xbb as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct TWAR; pub struct TWAR;
impl TWAR { impl TWAR {
@ -353,6 +368,7 @@ impl Register for TWAR {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0xba as *mut u8; const ADDRESS: *mut u8 = 0xba as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct TIMSK1; pub struct TIMSK1;
impl TIMSK1 { impl TIMSK1 {
@ -374,6 +390,7 @@ impl Register for TIMSK1 {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0x6f as *mut u8; const ADDRESS: *mut u8 = 0x6f as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct TIFR1; pub struct TIFR1;
impl TIFR1 { impl TIFR1 {
@ -395,6 +412,7 @@ impl Register for TIFR1 {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0x36 as *mut u8; const ADDRESS: *mut u8 = 0x36 as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct TCCR1A; pub struct TCCR1A;
impl TCCR1A { impl TCCR1A {
@ -416,6 +434,7 @@ impl Register for TCCR1A {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0x80 as *mut u8; const ADDRESS: *mut u8 = 0x80 as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct TCCR1B; pub struct TCCR1B;
impl TCCR1B { impl TCCR1B {
@ -440,6 +459,7 @@ impl Register for TCCR1B {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0x81 as *mut u8; const ADDRESS: *mut u8 = 0x81 as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct TCCR1C; pub struct TCCR1C;
impl TCCR1C { impl TCCR1C {
@ -455,6 +475,7 @@ impl Register for TCCR1C {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0x82 as *mut u8; const ADDRESS: *mut u8 = 0x82 as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct TCNT1; pub struct TCNT1;
impl TCNT1 { impl TCNT1 {
@ -481,6 +502,7 @@ impl Register for TCNT1 {
type T = u16; type T = u16;
const ADDRESS: *mut u16 = 0x84 as *mut u16; const ADDRESS: *mut u16 = 0x84 as *mut u16;
} }
#[allow(non_camel_case_types)]
pub struct OCR1A; pub struct OCR1A;
impl OCR1A { impl OCR1A {
@ -507,6 +529,7 @@ impl Register for OCR1A {
type T = u16; type T = u16;
const ADDRESS: *mut u16 = 0x88 as *mut u16; const ADDRESS: *mut u16 = 0x88 as *mut u16;
} }
#[allow(non_camel_case_types)]
pub struct OCR1B; pub struct OCR1B;
impl OCR1B { impl OCR1B {
@ -533,6 +556,7 @@ impl Register for OCR1B {
type T = u16; type T = u16;
const ADDRESS: *mut u16 = 0x8a as *mut u16; const ADDRESS: *mut u16 = 0x8a as *mut u16;
} }
#[allow(non_camel_case_types)]
pub struct ICR1; pub struct ICR1;
impl ICR1 { impl ICR1 {
@ -559,6 +583,7 @@ impl Register for ICR1 {
type T = u16; type T = u16;
const ADDRESS: *mut u16 = 0x86 as *mut u16; const ADDRESS: *mut u16 = 0x86 as *mut u16;
} }
#[allow(non_camel_case_types)]
pub struct TIMSK2; pub struct TIMSK2;
impl TIMSK2 { impl TIMSK2 {
@ -577,6 +602,7 @@ impl Register for TIMSK2 {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0x70 as *mut u8; const ADDRESS: *mut u8 = 0x70 as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct TIFR2; pub struct TIFR2;
impl TIFR2 { impl TIFR2 {
@ -595,6 +621,7 @@ impl Register for TIFR2 {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0x37 as *mut u8; const ADDRESS: *mut u8 = 0x37 as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct TCCR2A; pub struct TCCR2A;
impl TCCR2A { impl TCCR2A {
@ -616,6 +643,7 @@ impl Register for TCCR2A {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0xb0 as *mut u8; const ADDRESS: *mut u8 = 0xb0 as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct TCCR2B; pub struct TCCR2B;
impl TCCR2B { impl TCCR2B {
@ -639,6 +667,7 @@ impl Register for TCCR2B {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0xb1 as *mut u8; const ADDRESS: *mut u8 = 0xb1 as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct TCNT2; pub struct TCNT2;
impl TCNT2 { impl TCNT2 {
@ -658,6 +687,7 @@ impl Register for TCNT2 {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0xb2 as *mut u8; const ADDRESS: *mut u8 = 0xb2 as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct OCR2B; pub struct OCR2B;
impl OCR2B { impl OCR2B {
@ -677,6 +707,7 @@ impl Register for OCR2B {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0xb4 as *mut u8; const ADDRESS: *mut u8 = 0xb4 as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct OCR2A; pub struct OCR2A;
impl OCR2A { impl OCR2A {
@ -696,6 +727,7 @@ impl Register for OCR2A {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0xb3 as *mut u8; const ADDRESS: *mut u8 = 0xb3 as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct ASSR; pub struct ASSR;
impl ASSR { impl ASSR {
@ -726,6 +758,7 @@ impl Register for ASSR {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0xb6 as *mut u8; const ADDRESS: *mut u8 = 0xb6 as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct ADMUX; pub struct ADMUX;
impl ADMUX { impl ADMUX {
@ -748,6 +781,7 @@ impl Register for ADMUX {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0x7c as *mut u8; const ADDRESS: *mut u8 = 0x7c as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct ADC; pub struct ADC;
impl ADC { impl ADC {
@ -769,6 +803,7 @@ impl Register for ADC {
type T = u16; type T = u16;
const ADDRESS: *mut u16 = 0x78 as *mut u16; const ADDRESS: *mut u16 = 0x78 as *mut u16;
} }
#[allow(non_camel_case_types)]
pub struct ADCSRA; pub struct ADCSRA;
impl ADCSRA { impl ADCSRA {
@ -798,6 +833,7 @@ impl Register for ADCSRA {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0x7a as *mut u8; const ADDRESS: *mut u8 = 0x7a as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct ADCSRB; pub struct ADCSRB;
impl ADCSRB { impl ADCSRB {
@ -815,6 +851,7 @@ impl Register for ADCSRB {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0x7b as *mut u8; const ADDRESS: *mut u8 = 0x7b as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct DIDR0; pub struct DIDR0;
impl DIDR0 { impl DIDR0 {
@ -842,6 +879,7 @@ impl Register for DIDR0 {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0x7e as *mut u8; const ADDRESS: *mut u8 = 0x7e as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct ACSR; pub struct ACSR;
impl ACSR { impl ACSR {
@ -873,6 +911,7 @@ impl Register for ACSR {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0x50 as *mut u8; const ADDRESS: *mut u8 = 0x50 as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct DIDR1; pub struct DIDR1;
impl DIDR1 { impl DIDR1 {
@ -888,6 +927,7 @@ impl Register for DIDR1 {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0x7f as *mut u8; const ADDRESS: *mut u8 = 0x7f as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct PORTB; pub struct PORTB;
impl PORTB { impl PORTB {
@ -897,6 +937,7 @@ impl Register for PORTB {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0x25 as *mut u8; const ADDRESS: *mut u8 = 0x25 as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct DDRB; pub struct DDRB;
impl DDRB { impl DDRB {
@ -906,6 +947,7 @@ impl Register for DDRB {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0x24 as *mut u8; const ADDRESS: *mut u8 = 0x24 as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct PINB; pub struct PINB;
impl PINB { impl PINB {
@ -915,6 +957,7 @@ impl Register for PINB {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0x23 as *mut u8; const ADDRESS: *mut u8 = 0x23 as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct PORTC; pub struct PORTC;
impl PORTC { impl PORTC {
@ -924,6 +967,7 @@ impl Register for PORTC {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0x28 as *mut u8; const ADDRESS: *mut u8 = 0x28 as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct DDRC; pub struct DDRC;
impl DDRC { impl DDRC {
@ -933,6 +977,7 @@ impl Register for DDRC {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0x27 as *mut u8; const ADDRESS: *mut u8 = 0x27 as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct PINC; pub struct PINC;
impl PINC { impl PINC {
@ -942,6 +987,7 @@ impl Register for PINC {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0x26 as *mut u8; const ADDRESS: *mut u8 = 0x26 as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct PORTD; pub struct PORTD;
impl PORTD { impl PORTD {
@ -951,6 +997,7 @@ impl Register for PORTD {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0x2b as *mut u8; const ADDRESS: *mut u8 = 0x2b as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct DDRD; pub struct DDRD;
impl DDRD { impl DDRD {
@ -960,6 +1007,7 @@ impl Register for DDRD {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0x2a as *mut u8; const ADDRESS: *mut u8 = 0x2a as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct PIND; pub struct PIND;
impl PIND { impl PIND {
@ -969,6 +1017,7 @@ impl Register for PIND {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0x29 as *mut u8; const ADDRESS: *mut u8 = 0x29 as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct OCR0B; pub struct OCR0B;
impl OCR0B { impl OCR0B {
@ -988,6 +1037,7 @@ impl Register for OCR0B {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0x48 as *mut u8; const ADDRESS: *mut u8 = 0x48 as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct OCR0A; pub struct OCR0A;
impl OCR0A { impl OCR0A {
@ -1007,6 +1057,7 @@ impl Register for OCR0A {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0x47 as *mut u8; const ADDRESS: *mut u8 = 0x47 as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct TCNT0; pub struct TCNT0;
impl TCNT0 { impl TCNT0 {
@ -1026,6 +1077,7 @@ impl Register for TCNT0 {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0x46 as *mut u8; const ADDRESS: *mut u8 = 0x46 as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct TCCR0B; pub struct TCCR0B;
impl TCCR0B { impl TCCR0B {
@ -1049,6 +1101,7 @@ impl Register for TCCR0B {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0x45 as *mut u8; const ADDRESS: *mut u8 = 0x45 as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct TCCR0A; pub struct TCCR0A;
impl TCCR0A { impl TCCR0A {
@ -1070,6 +1123,7 @@ impl Register for TCCR0A {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0x44 as *mut u8; const ADDRESS: *mut u8 = 0x44 as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct TIMSK0; pub struct TIMSK0;
impl TIMSK0 { impl TIMSK0 {
@ -1088,6 +1142,7 @@ impl Register for TIMSK0 {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0x6e as *mut u8; const ADDRESS: *mut u8 = 0x6e as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct TIFR0; pub struct TIFR0;
impl TIFR0 { impl TIFR0 {
@ -1106,6 +1161,7 @@ impl Register for TIFR0 {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0x35 as *mut u8; const ADDRESS: *mut u8 = 0x35 as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct EICRA; pub struct EICRA;
impl EICRA { impl EICRA {
@ -1123,6 +1179,7 @@ impl Register for EICRA {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0x69 as *mut u8; const ADDRESS: *mut u8 = 0x69 as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct EIMSK; pub struct EIMSK;
impl EIMSK { impl EIMSK {
@ -1136,6 +1193,7 @@ impl Register for EIMSK {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0x3d as *mut u8; const ADDRESS: *mut u8 = 0x3d as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct EIFR; pub struct EIFR;
impl EIFR { impl EIFR {
@ -1149,6 +1207,7 @@ impl Register for EIFR {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0x3c as *mut u8; const ADDRESS: *mut u8 = 0x3c as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct PCICR; pub struct PCICR;
impl PCICR { impl PCICR {
@ -1163,6 +1222,7 @@ impl Register for PCICR {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0x68 as *mut u8; const ADDRESS: *mut u8 = 0x68 as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct PCMSK2; pub struct PCMSK2;
impl PCMSK2 { impl PCMSK2 {
@ -1182,6 +1242,7 @@ impl Register for PCMSK2 {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0x6d as *mut u8; const ADDRESS: *mut u8 = 0x6d as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct PCMSK1; pub struct PCMSK1;
impl PCMSK1 { impl PCMSK1 {
@ -1200,6 +1261,7 @@ impl Register for PCMSK1 {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0x6c as *mut u8; const ADDRESS: *mut u8 = 0x6c as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct PCMSK0; pub struct PCMSK0;
impl PCMSK0 { impl PCMSK0 {
@ -1219,6 +1281,7 @@ impl Register for PCMSK0 {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0x6b as *mut u8; const ADDRESS: *mut u8 = 0x6b as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct PCIFR; pub struct PCIFR;
impl PCIFR { impl PCIFR {
@ -1233,6 +1296,7 @@ impl Register for PCIFR {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0x3b as *mut u8; const ADDRESS: *mut u8 = 0x3b as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct SPDR; pub struct SPDR;
impl SPDR { impl SPDR {
@ -1252,6 +1316,7 @@ impl Register for SPDR {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0x4e as *mut u8; const ADDRESS: *mut u8 = 0x4e as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct SPSR; pub struct SPSR;
impl SPSR { impl SPSR {
@ -1270,6 +1335,7 @@ impl Register for SPSR {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0x4d as *mut u8; const ADDRESS: *mut u8 = 0x4d as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct SPCR; pub struct SPCR;
impl SPCR { impl SPCR {
@ -1301,6 +1367,7 @@ impl Register for SPCR {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0x4c as *mut u8; const ADDRESS: *mut u8 = 0x4c as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct WDTCSR; pub struct WDTCSR;
impl WDTCSR { impl WDTCSR {
@ -1328,6 +1395,7 @@ impl Register for WDTCSR {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0x60 as *mut u8; const ADDRESS: *mut u8 = 0x60 as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct EEAR; pub struct EEAR;
impl EEAR { impl EEAR {
@ -1349,6 +1417,7 @@ impl Register for EEAR {
type T = u16; type T = u16;
const ADDRESS: *mut u16 = 0x41 as *mut u16; const ADDRESS: *mut u16 = 0x41 as *mut u16;
} }
#[allow(non_camel_case_types)]
pub struct EEDR; pub struct EEDR;
impl EEDR { impl EEDR {
@ -1368,6 +1437,7 @@ impl Register for EEDR {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0x40 as *mut u8; const ADDRESS: *mut u8 = 0x40 as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct EECR; pub struct EECR;
impl EECR { impl EECR {
@ -1393,6 +1463,7 @@ impl Register for EECR {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0x3f as *mut u8; const ADDRESS: *mut u8 = 0x3f as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct PRR; pub struct PRR;
impl PRR { impl PRR {
@ -1423,6 +1494,7 @@ impl Register for PRR {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0x64 as *mut u8; const ADDRESS: *mut u8 = 0x64 as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct OSCCAL; pub struct OSCCAL;
impl OSCCAL { impl OSCCAL {
@ -1442,6 +1514,7 @@ impl Register for OSCCAL {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0x66 as *mut u8; const ADDRESS: *mut u8 = 0x66 as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct CLKPR; pub struct CLKPR;
impl CLKPR { impl CLKPR {
@ -1460,6 +1533,7 @@ impl Register for CLKPR {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0x61 as *mut u8; const ADDRESS: *mut u8 = 0x61 as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct SREG; pub struct SREG;
impl SREG { impl SREG {
@ -1493,6 +1567,7 @@ impl Register for SREG {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0x5f as *mut u8; const ADDRESS: *mut u8 = 0x5f as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct SP; pub struct SP;
impl SP { impl SP {
@ -1502,6 +1577,7 @@ impl Register for SP {
type T = u16; type T = u16;
const ADDRESS: *mut u16 = 0x5d as *mut u16; const ADDRESS: *mut u16 = 0x5d as *mut u16;
} }
#[allow(non_camel_case_types)]
pub struct SPMCSR; pub struct SPMCSR;
impl SPMCSR { impl SPMCSR {
@ -1535,6 +1611,7 @@ impl Register for SPMCSR {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0x57 as *mut u8; const ADDRESS: *mut u8 = 0x57 as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct MCUCR; pub struct MCUCR;
impl MCUCR { impl MCUCR {
@ -1553,6 +1630,7 @@ impl Register for MCUCR {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0x55 as *mut u8; const ADDRESS: *mut u8 = 0x55 as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct MCUSR; pub struct MCUSR;
impl MCUSR { impl MCUSR {
@ -1574,6 +1652,7 @@ impl Register for MCUSR {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0x54 as *mut u8; const ADDRESS: *mut u8 = 0x54 as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct SMCR; pub struct SMCR;
impl SMCR { impl SMCR {
@ -1591,6 +1670,7 @@ impl Register for SMCR {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0x53 as *mut u8; const ADDRESS: *mut u8 = 0x53 as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct GPIOR2; pub struct GPIOR2;
impl GPIOR2 { impl GPIOR2 {
@ -1610,6 +1690,7 @@ impl Register for GPIOR2 {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0x4b as *mut u8; const ADDRESS: *mut u8 = 0x4b as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct GPIOR1; pub struct GPIOR1;
impl GPIOR1 { impl GPIOR1 {
@ -1629,6 +1710,7 @@ impl Register for GPIOR1 {
type T = u8; type T = u8;
const ADDRESS: *mut u8 = 0x4a as *mut u8; const ADDRESS: *mut u8 = 0x4a as *mut u8;
} }
#[allow(non_camel_case_types)]
pub struct GPIOR0; pub struct GPIOR0;
impl GPIOR0 { impl GPIOR0 {
@ -1649,6 +1731,8 @@ impl Register for GPIOR0 {
const ADDRESS: *mut u8 = 0x3e as *mut u8; const ADDRESS: *mut u8 = 0x3e as *mut u8;
} }
pub mod port { pub mod port {
#![allow(unused_imports)]
use super::*; use super::*;
use crate::Pin; use crate::Pin;

1863
src/cores/atmega328p.rs Normal file

File diff suppressed because it is too large Load Diff

1836
src/cores/atmega48.rs Normal file

File diff suppressed because it is too large Load Diff

1861
src/cores/atmega48a.rs Normal file

File diff suppressed because it is too large Load Diff

1842
src/cores/atmega48p.rs Normal file

File diff suppressed because it is too large Load Diff

1867
src/cores/atmega48pa.rs Normal file

File diff suppressed because it is too large Load Diff

1854
src/cores/atmega88.rs Normal file

File diff suppressed because it is too large Load Diff

1857
src/cores/atmega88a.rs Normal file

File diff suppressed because it is too large Load Diff

1860
src/cores/atmega88p.rs Normal file

File diff suppressed because it is too large Load Diff

1863
src/cores/atmega88pa.rs Normal file

File diff suppressed because it is too large Load Diff

View File

@ -1,6 +1,59 @@
//! The primary module containing microcontroller-specific core definitions
/// The ATmega88.
pub mod atmega88;
#[cfg(avr_mcu_atmega88)] pub use self::atmega88 as current;
/// The ATmega48A.
pub mod atmega48a;
#[cfg(avr_mcu_atmega48a)] pub use self::atmega48a as current;
/// The ATmega168A.
pub mod atmega168a;
#[cfg(avr_mcu_atmega168a)] pub use self::atmega168a as current;
/// The ATmega88P.
pub mod atmega88p;
#[cfg(avr_mcu_atmega88p)] pub use self::atmega88p as current;
/// The ATmega168P.
pub mod atmega168p;
#[cfg(avr_mcu_atmega168p)] pub use self::atmega168p as current;
/// The ATmega88PA.
pub mod atmega88pa;
#[cfg(avr_mcu_atmega88pa)] pub use self::atmega88pa as current;
/// The ATmega168.
pub mod atmega168;
#[cfg(avr_mcu_atmega168)] pub use self::atmega168 as current;
/// The ATmega328P.
pub mod atmega328p;
#[cfg(avr_mcu_atmega328p)] pub use self::atmega328p as current;
/// The ATmega48PA.
pub mod atmega48pa;
#[cfg(avr_mcu_atmega48pa)] pub use self::atmega48pa as current;
/// The ATmega168PA.
pub mod atmega168pa;
#[cfg(avr_mcu_atmega168pa)] pub use self::atmega168pa as current;
/// The ATmega48P.
pub mod atmega48p;
#[cfg(avr_mcu_atmega48p)] pub use self::atmega48p as current;
/// The ATmega328. /// The ATmega328.
pub mod atmega328; pub mod atmega328;
#[cfg(avr_mcu_atmega328)] #[cfg(avr_mcu_atmega328)] pub use self::atmega328 as current;
pub use self::atmega328 as current;
/// The ATmega88A.
pub mod atmega88a;
#[cfg(avr_mcu_atmega88a)] pub use self::atmega88a as current;
/// The ATmega48.
pub mod atmega48;
#[cfg(avr_mcu_atmega48)] pub use self::atmega48 as current;