/avr/avr_lib/at90usb82/avr-at90usb82.ads
http://github.com/tkoskine/avr-ada · Ada · 3235 lines · 2477 code · 179 blank · 579 comment · 337 complexity · 45ce7b17d8820a3017c7cdc78c46bf12 MD5 · raw file
Large files are truncated click here to view the full file
- ---------------------------------------------------------------------------
- -- The AVR-Ada Library is free software; you can redistribute it and/or --
- -- modify it under terms of the GNU General Public License as published --
- -- by the Free Software Foundation; either version 2, or (at your --
- -- option) any later version. The AVR-Ada Library is distributed in the --
- -- hope that it will be useful, but WITHOUT ANY WARRANTY; without even --
- -- the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR --
- -- PURPOSE. See the GNU General Public License for more details. --
- -- --
- -- As a special exception, if other files instantiate generics from this --
- -- unit, or you link this unit with other files to produce an --
- -- executable this unit does not by itself cause the resulting --
- -- executable to be covered by the GNU General Public License. This --
- -- exception does not however invalidate any other reasons why the --
- -- executable file might be covered by the GNU Public License. --
- ---------------------------------------------------------------------------
- with System; use System; -- make Address visible
- with Interfaces; use Interfaces;
- package AVR.AT90USB82 is
- pragma Preelaborate;
- CVS_Version : constant String := "$Id$";
- --
- -- memory sizes
- --
- Flash_Size : constant := 16#2000#;
- Flash_End : constant := 16#1fff#;
- EEprom_Size : constant := 16#0200#;
- E2end : constant := 16#01ff#;
- Int_SRAM_Start_Addr : constant := 16#100#;
- Int_SRAM_Size : constant := 16#200#;
- --
- -- interrupts
- --
- Number_Of_Interrupts : constant := 38;
- -- External Pin,Power-on Reset,Brown-out Reset,Watchdog Reset,and JTAG
- -- AVR Reset. See Datasheet.
- Sig_RESET : constant := 0;
- Sig_RESET_String : constant String := "__vector_0";
- -- External Interrupt Request 0
- Sig_INT0 : constant := 1;
- Sig_INT0_String : constant String := "__vector_1";
- -- External Interrupt Request 1
- Sig_INT1 : constant := 2;
- Sig_INT1_String : constant String := "__vector_2";
- -- External Interrupt Request 2
- Sig_INT2 : constant := 3;
- Sig_INT2_String : constant String := "__vector_3";
- -- External Interrupt Request 3
- Sig_INT3 : constant := 4;
- Sig_INT3_String : constant String := "__vector_4";
- -- External Interrupt Request 4
- Sig_INT4 : constant := 5;
- Sig_INT4_String : constant String := "__vector_5";
- -- External Interrupt Request 5
- Sig_INT5 : constant := 6;
- Sig_INT5_String : constant String := "__vector_6";
- -- External Interrupt Request 6
- Sig_INT6 : constant := 7;
- Sig_INT6_String : constant String := "__vector_7";
- -- External Interrupt Request 7
- Sig_INT7 : constant := 8;
- Sig_INT7_String : constant String := "__vector_8";
- -- Pin Change Interrupt Request 0
- Sig_PCINT0 : constant := 9;
- Sig_PCINT0_String : constant String := "__vector_9";
- -- Pin Change Interrupt Request 1
- Sig_PCINT1 : constant := 10;
- Sig_PCINT1_String : constant String := "__vector_10";
- -- USB General Interrupt Request
- Sig_USB_GEN : constant := 11;
- Sig_USB_GEN_String : constant String := "__vector_11";
- -- USB Endpoint/Pipe Interrupt Communication Request
- Sig_USB_COM : constant := 12;
- Sig_USB_COM_String : constant String := "__vector_12";
- -- Watchdog Time-out Interrupt
- Sig_WDT : constant := 13;
- Sig_WDT_String : constant String := "__vector_13";
- -- Timer/Counter2 Capture Event
- Sig_TIMER1_CAPT : constant := 14;
- Sig_TIMER1_CAPT_String : constant String := "__vector_14";
- -- Timer/Counter2 Compare Match B
- Sig_TIMER1_COMPA : constant := 15;
- Sig_TIMER1_COMPA_String : constant String := "__vector_15";
- -- Timer/Counter2 Compare Match B
- Sig_TIMER1_COMPB : constant := 16;
- Sig_TIMER1_COMPB_String : constant String := "__vector_16";
- -- Timer/Counter2 Compare Match C
- Sig_TIMER1_COMPC : constant := 17;
- Sig_TIMER1_COMPC_String : constant String := "__vector_17";
- -- Timer/Counter1 Overflow
- Sig_TIMER1_OVF : constant := 18;
- Sig_TIMER1_OVF_String : constant String := "__vector_18";
- -- Timer/Counter0 Compare Match A
- Sig_TIMER0_COMPA : constant := 19;
- Sig_TIMER0_COMPA_String : constant String := "__vector_19";
- -- Timer/Counter0 Compare Match B
- Sig_TIMER0_COMPB : constant := 20;
- Sig_TIMER0_COMPB_String : constant String := "__vector_20";
- -- Timer/Counter0 Overflow
- Sig_TIMER0_OVF : constant := 21;
- Sig_TIMER0_OVF_String : constant String := "__vector_21";
- -- SPI Serial Transfer Complete
- Sig_SPI_STC : constant := 22;
- Sig_SPI_STC_String : constant String := "__vector_22";
- -- USART1, Rx Complete
- Sig_USART1_RX : constant := 23;
- Sig_USART1_RX_String : constant String := "__vector_23";
- -- USART1 Data register Empty
- Sig_USART1_UDRE : constant := 24;
- Sig_USART1_UDRE_String : constant String := "__vector_24";
- -- USART1, Tx Complete
- Sig_USART1_TX : constant := 25;
- Sig_USART1_TX_String : constant String := "__vector_25";
- -- Analog Comparator
- Sig_ANALOG_COMP : constant := 26;
- Sig_ANALOG_COMP_String : constant String := "__vector_26";
- -- EEPROM Ready
- Sig_EE_READY : constant := 27;
- Sig_EE_READY_String : constant String := "__vector_27";
- -- Store Program Memory Read
- Sig_SPM_READY : constant := 28;
- Sig_SPM_READY_String : constant String := "__vector_28";
- --
- -- I/O registers
- --
- CLKSTA_Addr : constant Address := 16#d2#;
- CLKSTA : Unsigned_8 ;
- for CLKSTA'Address use CLKSTA_Addr;
- pragma Volatile (CLKSTA);
- CLKSTA_Bits : Bits_In_Byte;
- for CLKSTA_Bits'Address use CLKSTA_Addr;
- pragma Volatile (CLKSTA_Bits);
- EXTON_Bit : constant Bit_Number := 0;
- EXTON_Mask : constant Unsigned_8 := 16#01#;
- RCON_Bit : constant Bit_Number := 1;
- RCON_Mask : constant Unsigned_8 := 16#02#;
- CLKSEL1_Addr : constant Address := 16#d1#;
- CLKSEL1 : Unsigned_8 ;
- for CLKSEL1'Address use CLKSEL1_Addr;
- pragma Volatile (CLKSEL1);
- CLKSEL1_Bits : Bits_In_Byte;
- for CLKSEL1_Bits'Address use CLKSEL1_Addr;
- pragma Volatile (CLKSEL1_Bits);
- EXCKSEL0_Bit : constant Bit_Number := 0;
- EXCKSEL0_Mask : constant Unsigned_8 := 16#01#;
- EXCKSEL1_Bit : constant Bit_Number := 1;
- EXCKSEL1_Mask : constant Unsigned_8 := 16#02#;
- EXCKSEL2_Bit : constant Bit_Number := 2;
- EXCKSEL2_Mask : constant Unsigned_8 := 16#04#;
- EXCKSEL3_Bit : constant Bit_Number := 3;
- EXCKSEL3_Mask : constant Unsigned_8 := 16#08#;
- RCCKSEL0_Bit : constant Bit_Number := 4;
- RCCKSEL0_Mask : constant Unsigned_8 := 16#10#;
- RCCKSEL1_Bit : constant Bit_Number := 5;
- RCCKSEL1_Mask : constant Unsigned_8 := 16#20#;
- RCCKSEL2_Bit : constant Bit_Number := 6;
- RCCKSEL2_Mask : constant Unsigned_8 := 16#40#;
- RCCKSEL3_Bit : constant Bit_Number := 7;
- RCCKSEL3_Mask : constant Unsigned_8 := 16#80#;
- CLKSEL0_Addr : constant Address := 16#d0#;
- CLKSEL0 : Unsigned_8 ;
- for CLKSEL0'Address use CLKSEL0_Addr;
- pragma Volatile (CLKSEL0);
- CLKSEL0_Bits : Bits_In_Byte;
- for CLKSEL0_Bits'Address use CLKSEL0_Addr;
- pragma Volatile (CLKSEL0_Bits);
- CLKS_Bit : constant Bit_Number := 0;
- CLKS_Mask : constant Unsigned_8 := 16#01#;
- EXTE_Bit : constant Bit_Number := 2;
- EXTE_Mask : constant Unsigned_8 := 16#04#;
- RCE_Bit : constant Bit_Number := 3;
- RCE_Mask : constant Unsigned_8 := 16#08#;
- EXSUT0_Bit : constant Bit_Number := 4;
- EXSUT0_Mask : constant Unsigned_8 := 16#10#;
- EXSUT1_Bit : constant Bit_Number := 5;
- EXSUT1_Mask : constant Unsigned_8 := 16#20#;
- RCSUT0_Bit : constant Bit_Number := 6;
- RCSUT0_Mask : constant Unsigned_8 := 16#40#;
- RCSUT1_Bit : constant Bit_Number := 7;
- RCSUT1_Mask : constant Unsigned_8 := 16#80#;
- -- PLL Status and Control register
- PLLCSR_Addr : constant Address := 16#49#;
- PLLCSR : Unsigned_8 ;
- for PLLCSR'Address use PLLCSR_Addr;
- pragma Volatile (PLLCSR);
- PLLCSR_Bits : Bits_In_Byte;
- for PLLCSR_Bits'Address use PLLCSR_Addr;
- pragma Volatile (PLLCSR_Bits);
- -- PLL Lock Status Bit
- PLOCK_Bit : constant Bit_Number := 0;
- PLOCK_Mask : constant Unsigned_8 := 16#01#;
- -- PLL Enable Bit
- PLLE_Bit : constant Bit_Number := 1;
- PLLE_Mask : constant Unsigned_8 := 16#02#;
- -- PLL prescaler Bit 0
- PLLP0_Bit : constant Bit_Number := 2;
- PLLP0_Mask : constant Unsigned_8 := 16#04#;
- -- PLL prescaler Bit 1
- PLLP1_Bit : constant Bit_Number := 3;
- PLLP1_Mask : constant Unsigned_8 := 16#08#;
- -- PLL prescaler Bit 2
- PLLP2_Bit : constant Bit_Number := 4;
- PLLP2_Mask : constant Unsigned_8 := 16#10#;
- TESTPADSTATUS_Addr : constant Address := 16#fd#;
- TESTPADSTATUS : Unsigned_8 ;
- for TESTPADSTATUS'Address use TESTPADSTATUS_Addr;
- pragma Volatile (TESTPADSTATUS);
- TESTPADSTATUS_Bits : Bits_In_Byte;
- for TESTPADSTATUS_Bits'Address use TESTPADSTATUS_Addr;
- pragma Volatile (TESTPADSTATUS_Bits);
- TESTPADPULL_Addr : constant Address := 16#fe#;
- TESTPADPULL : Unsigned_8 ;
- for TESTPADPULL'Address use TESTPADPULL_Addr;
- pragma Volatile (TESTPADPULL);
- TESTPADPULL_Bits : Bits_In_Byte;
- for TESTPADPULL_Bits'Address use TESTPADPULL_Addr;
- pragma Volatile (TESTPADPULL_Bits);
- TESTPADCTRL_Addr : constant Address := 16#ff#;
- TESTPADCTRL : Unsigned_8 ;
- for TESTPADCTRL'Address use TESTPADCTRL_Addr;
- pragma Volatile (TESTPADCTRL);
- TESTPADCTRL_Bits : Bits_In_Byte;
- for TESTPADCTRL_Bits'Address use TESTPADCTRL_Addr;
- pragma Volatile (TESTPADCTRL_Bits);
- -- PS2 Pad Enable register
- PS2CON_Addr : constant Address := 16#fa#;
- PS2CON : Unsigned_8 ;
- for PS2CON'Address use PS2CON_Addr;
- pragma Volatile (PS2CON);
- PS2CON_Bits : Bits_In_Byte;
- for PS2CON_Bits'Address use PS2CON_Addr;
- pragma Volatile (PS2CON_Bits);
- -- Enable
- PS2EN_Bit : constant Bit_Number := 0;
- PS2EN_Mask : constant Unsigned_8 := 16#01#;
- UPOE_Addr : constant Address := 16#fb#;
- UPOE : Unsigned_8 ;
- for UPOE'Address use UPOE_Addr;
- pragma Volatile (UPOE);
- UPOE_Bits : Bits_In_Byte;
- for UPOE_Bits'Address use UPOE_Addr;
- pragma Volatile (UPOE_Bits);
- DMI_Bit : constant Bit_Number := 0;
- DMI_Mask : constant Unsigned_8 := 16#01#;
- DPI_Bit : constant Bit_Number := 1;
- DPI_Mask : constant Unsigned_8 := 16#02#;
- DATAI_Bit : constant Bit_Number := 2;
- DATAI_Mask : constant Unsigned_8 := 16#04#;
- SCKI_Bit : constant Bit_Number := 3;
- SCKI_Mask : constant Unsigned_8 := 16#08#;
- UPDRV0_Bit : constant Bit_Number := 4;
- UPDRV0_Mask : constant Unsigned_8 := 16#10#;
- UPDRV1_Bit : constant Bit_Number := 5;
- UPDRV1_Mask : constant Unsigned_8 := 16#20#;
- UPWE0_Bit : constant Bit_Number := 6;
- UPWE0_Mask : constant Unsigned_8 := 16#40#;
- UPWE1_Bit : constant Bit_Number := 7;
- UPWE1_Mask : constant Unsigned_8 := 16#80#;
- UEINT_Addr : constant Address := 16#f4#;
- UEINT : Unsigned_8 ;
- for UEINT'Address use UEINT_Addr;
- pragma Volatile (UEINT);
- UEINT_Bits : Bits_In_Byte;
- for UEINT_Bits'Address use UEINT_Addr;
- pragma Volatile (UEINT_Bits);
- EPINT0_Bit : constant Bit_Number := 0;
- EPINT0_Mask : constant Unsigned_8 := 16#01#;
- EPINT1_Bit : constant Bit_Number := 1;
- EPINT1_Mask : constant Unsigned_8 := 16#02#;
- EPINT2_Bit : constant Bit_Number := 2;
- EPINT2_Mask : constant Unsigned_8 := 16#04#;
- EPINT3_Bit : constant Bit_Number := 3;
- EPINT3_Mask : constant Unsigned_8 := 16#08#;
- EPINT4_Bit : constant Bit_Number := 4;
- EPINT4_Mask : constant Unsigned_8 := 16#10#;
- UPINT_Addr : constant Address := 16#f8#;
- UPINT : Unsigned_8 ;
- for UPINT'Address use UPINT_Addr;
- pragma Volatile (UPINT);
- UPINT_Bits : Bits_In_Byte;
- for UPINT_Bits'Address use UPINT_Addr;
- pragma Volatile (UPINT_Bits);
- UPBCHX_Addr : constant Address := 16#f7#;
- UPBCHX : Unsigned_8 ;
- for UPBCHX'Address use UPBCHX_Addr;
- pragma Volatile (UPBCHX);
- UPBCHX_Bits : Bits_In_Byte;
- for UPBCHX_Bits'Address use UPBCHX_Addr;
- pragma Volatile (UPBCHX_Bits);
- UEBCLX_Addr : constant Address := 16#f2#;
- UEBCLX : Unsigned_8 ;
- for UEBCLX'Address use UEBCLX_Addr;
- pragma Volatile (UEBCLX);
- UEBCLX_Bits : Bits_In_Byte;
- for UEBCLX_Bits'Address use UEBCLX_Addr;
- pragma Volatile (UEBCLX_Bits);
- BYCT0_Bit : constant Bit_Number := 0;
- BYCT0_Mask : constant Unsigned_8 := 16#01#;
- BYCT1_Bit : constant Bit_Number := 1;
- BYCT1_Mask : constant Unsigned_8 := 16#02#;
- BYCT2_Bit : constant Bit_Number := 2;
- BYCT2_Mask : constant Unsigned_8 := 16#04#;
- BYCT3_Bit : constant Bit_Number := 3;
- BYCT3_Mask : constant Unsigned_8 := 16#08#;
- BYCT4_Bit : constant Bit_Number := 4;
- BYCT4_Mask : constant Unsigned_8 := 16#10#;
- BYCT5_Bit : constant Bit_Number := 5;
- BYCT5_Mask : constant Unsigned_8 := 16#20#;
- BYCT6_Bit : constant Bit_Number := 6;
- BYCT6_Mask : constant Unsigned_8 := 16#40#;
- BYCT7_Bit : constant Bit_Number := 7;
- BYCT7_Mask : constant Unsigned_8 := 16#80#;
- UPBCLX_Addr : constant Address := 16#f6#;
- UPBCLX : Unsigned_8 ;
- for UPBCLX'Address use UPBCLX_Addr;
- pragma Volatile (UPBCLX);
- UPBCLX_Bits : Bits_In_Byte;
- for UPBCLX_Bits'Address use UPBCLX_Addr;
- pragma Volatile (UPBCLX_Bits);
- UEDATX_Addr : constant Address := 16#f1#;
- UEDATX : Unsigned_8 ;
- for UEDATX'Address use UEDATX_Addr;
- pragma Volatile (UEDATX);
- UEDATX_Bits : Bits_In_Byte;
- for UEDATX_Bits'Address use UEDATX_Addr;
- pragma Volatile (UEDATX_Bits);
- DAT0_Bit : constant Bit_Number := 0;
- DAT0_Mask : constant Unsigned_8 := 16#01#;
- DAT1_Bit : constant Bit_Number := 1;
- DAT1_Mask : constant Unsigned_8 := 16#02#;
- DAT2_Bit : constant Bit_Number := 2;
- DAT2_Mask : constant Unsigned_8 := 16#04#;
- DAT3_Bit : constant Bit_Number := 3;
- DAT3_Mask : constant Unsigned_8 := 16#08#;
- DAT4_Bit : constant Bit_Number := 4;
- DAT4_Mask : constant Unsigned_8 := 16#10#;
- DAT5_Bit : constant Bit_Number := 5;
- DAT5_Mask : constant Unsigned_8 := 16#20#;
- DAT6_Bit : constant Bit_Number := 6;
- DAT6_Mask : constant Unsigned_8 := 16#40#;
- DAT7_Bit : constant Bit_Number := 7;
- DAT7_Mask : constant Unsigned_8 := 16#80#;
- UPDATX_Addr : constant Address := 16#af#;
- UPDATX : Unsigned_8 ;
- for UPDATX'Address use UPDATX_Addr;
- pragma Volatile (UPDATX);
- UPDATX_Bits : Bits_In_Byte;
- for UPDATX_Bits'Address use UPDATX_Addr;
- pragma Volatile (UPDATX_Bits);
- UEIENX_Addr : constant Address := 16#f0#;
- UEIENX : Unsigned_8 ;
- for UEIENX'Address use UEIENX_Addr;
- pragma Volatile (UEIENX);
- UEIENX_Bits : Bits_In_Byte;
- for UEIENX_Bits'Address use UEIENX_Addr;
- pragma Volatile (UEIENX_Bits);
- TXINE_Bit : constant Bit_Number := 0;
- TXINE_Mask : constant Unsigned_8 := 16#01#;
- STALLEDE_Bit : constant Bit_Number := 1;
- STALLEDE_Mask : constant Unsigned_8 := 16#02#;
- RXOUTE_Bit : constant Bit_Number := 2;
- RXOUTE_Mask : constant Unsigned_8 := 16#04#;
- RXSTPE_Bit : constant Bit_Number := 3;
- RXSTPE_Mask : constant Unsigned_8 := 16#08#;
- NAKOUTE_Bit : constant Bit_Number := 4;
- NAKOUTE_Mask : constant Unsigned_8 := 16#10#;
- NAKINE_Bit : constant Bit_Number := 6;
- NAKINE_Mask : constant Unsigned_8 := 16#40#;
- FLERRE_Bit : constant Bit_Number := 7;
- FLERRE_Mask : constant Unsigned_8 := 16#80#;
- UPIENX_Addr : constant Address := 16#ae#;
- UPIENX : Unsigned_8 ;
- for UPIENX'Address use UPIENX_Addr;
- pragma Volatile (UPIENX);
- UPIENX_Bits : Bits_In_Byte;
- for UPIENX_Bits'Address use UPIENX_Addr;
- pragma Volatile (UPIENX_Bits);
- UESTA1X_Addr : constant Address := 16#ef#;
- UESTA1X : Unsigned_8 ;
- for UESTA1X'Address use UESTA1X_Addr;
- pragma Volatile (UESTA1X);
- UESTA1X_Bits : Bits_In_Byte;
- for UESTA1X_Bits'Address use UESTA1X_Addr;
- pragma Volatile (UESTA1X_Bits);
- CURRBK0_Bit : constant Bit_Number := 0;
- CURRBK0_Mask : constant Unsigned_8 := 16#01#;
- CURRBK1_Bit : constant Bit_Number := 1;
- CURRBK1_Mask : constant Unsigned_8 := 16#02#;
- CTRLDIR_Bit : constant Bit_Number := 2;
- CTRLDIR_Mask : constant Unsigned_8 := 16#04#;
- UPCFG2X_Addr : constant Address := 16#ad#;
- UPCFG2X : Unsigned_8 ;
- for UPCFG2X'Address use UPCFG2X_Addr;
- pragma Volatile (UPCFG2X);
- UPCFG2X_Bits : Bits_In_Byte;
- for UPCFG2X_Bits'Address use UPCFG2X_Addr;
- pragma Volatile (UPCFG2X_Bits);
- UESTA0X_Addr : constant Address := 16#ee#;
- UESTA0X : Unsigned_8 ;
- for UESTA0X'Address use UESTA0X_Addr;
- pragma Volatile (UESTA0X);
- UESTA0X_Bits : Bits_In_Byte;
- for UESTA0X_Bits'Address use UESTA0X_Addr;
- pragma Volatile (UESTA0X_Bits);
- NBUSYBK0_Bit : constant Bit_Number := 0;
- NBUSYBK0_Mask : constant Unsigned_8 := 16#01#;
- NBUSYBK1_Bit : constant Bit_Number := 1;
- NBUSYBK1_Mask : constant Unsigned_8 := 16#02#;
- DTSEQ0_Bit : constant Bit_Number := 2;
- DTSEQ0_Mask : constant Unsigned_8 := 16#04#;
- DTSEQ1_Bit : constant Bit_Number := 3;
- DTSEQ1_Mask : constant Unsigned_8 := 16#08#;
- UNDERFI_Bit : constant Bit_Number := 5;
- UNDERFI_Mask : constant Unsigned_8 := 16#20#;
- OVERFI_Bit : constant Bit_Number := 6;
- OVERFI_Mask : constant Unsigned_8 := 16#40#;
- CFGOK_Bit : constant Bit_Number := 7;
- CFGOK_Mask : constant Unsigned_8 := 16#80#;
- UPSTAX_Addr : constant Address := 16#ac#;
- UPSTAX : Unsigned_8 ;
- for UPSTAX'Address use UPSTAX_Addr;
- pragma Volatile (UPSTAX);
- UPSTAX_Bits : Bits_In_Byte;
- for UPSTAX_Bits'Address use UPSTAX_Addr;
- pragma Volatile (UPSTAX_Bits);
- UECFG1X_Addr : constant Address := 16#ed#;
- UECFG1X : Unsigned_8 ;
- for UECFG1X'Address use UECFG1X_Addr;
- pragma Volatile (UECFG1X);
- UECFG1X_Bits : Bits_In_Byte;
- for UECFG1X_Bits'Address use UECFG1X_Addr;
- pragma Volatile (UECFG1X_Bits);
- ALLOC_Bit : constant Bit_Number := 1;
- ALLOC_Mask : constant Unsigned_8 := 16#02#;
- EPBK0_Bit : constant Bit_Number := 2;
- EPBK0_Mask : constant Unsigned_8 := 16#04#;
- EPBK1_Bit : constant Bit_Number := 3;
- EPBK1_Mask : constant Unsigned_8 := 16#08#;
- EPSIZE0_Bit : constant Bit_Number := 4;
- EPSIZE0_Mask : constant Unsigned_8 := 16#10#;
- EPSIZE1_Bit : constant Bit_Number := 5;
- EPSIZE1_Mask : constant Unsigned_8 := 16#20#;
- EPSIZE2_Bit : constant Bit_Number := 6;
- EPSIZE2_Mask : constant Unsigned_8 := 16#40#;
- UPCFG1X_Addr : constant Address := 16#ab#;
- UPCFG1X : Unsigned_8 ;
- for UPCFG1X'Address use UPCFG1X_Addr;
- pragma Volatile (UPCFG1X);
- UPCFG1X_Bits : Bits_In_Byte;
- for UPCFG1X_Bits'Address use UPCFG1X_Addr;
- pragma Volatile (UPCFG1X_Bits);
- UECFG0X_Addr : constant Address := 16#ec#;
- UECFG0X : Unsigned_8 ;
- for UECFG0X'Address use UECFG0X_Addr;
- pragma Volatile (UECFG0X);
- UECFG0X_Bits : Bits_In_Byte;
- for UECFG0X_Bits'Address use UECFG0X_Addr;
- pragma Volatile (UECFG0X_Bits);
- EPDIR_Bit : constant Bit_Number := 0;
- EPDIR_Mask : constant Unsigned_8 := 16#01#;
- EPTYPE0_Bit : constant Bit_Number := 6;
- EPTYPE0_Mask : constant Unsigned_8 := 16#40#;
- EPTYPE1_Bit : constant Bit_Number := 7;
- EPTYPE1_Mask : constant Unsigned_8 := 16#80#;
- UPCFG0X_Addr : constant Address := 16#aa#;
- UPCFG0X : Unsigned_8 ;
- for UPCFG0X'Address use UPCFG0X_Addr;
- pragma Volatile (UPCFG0X);
- UPCFG0X_Bits : Bits_In_Byte;
- for UPCFG0X_Bits'Address use UPCFG0X_Addr;
- pragma Volatile (UPCFG0X_Bits);
- UECONX_Addr : constant Address := 16#eb#;
- UECONX : Unsigned_8 ;
- for UECONX'Address use UECONX_Addr;
- pragma Volatile (UECONX);
- UECONX_Bits : Bits_In_Byte;
- for UECONX_Bits'Address use UECONX_Addr;
- pragma Volatile (UECONX_Bits);
- EPEN_Bit : constant Bit_Number := 0;
- EPEN_Mask : constant Unsigned_8 := 16#01#;
- RSTDT_Bit : constant Bit_Number := 3;
- RSTDT_Mask : constant Unsigned_8 := 16#08#;
- STALLRQC_Bit : constant Bit_Number := 4;
- STALLRQC_Mask : constant Unsigned_8 := 16#10#;
- STALLRQ_Bit : constant Bit_Number := 5;
- STALLRQ_Mask : constant Unsigned_8 := 16#20#;
- UPCONX_Addr : constant Address := 16#a9#;
- UPCONX : Unsigned_8 ;
- for UPCONX'Address use UPCONX_Addr;
- pragma Volatile (UPCONX);
- UPCONX_Bits : Bits_In_Byte;
- for UPCONX_Bits'Address use UPCONX_Addr;
- pragma Volatile (UPCONX_Bits);
- UERST_Addr : constant Address := 16#ea#;
- UERST : Unsigned_8 ;
- for UERST'Address use UERST_Addr;
- pragma Volatile (UERST);
- UERST_Bits : Bits_In_Byte;
- for UERST_Bits'Address use UERST_Addr;
- pragma Volatile (UERST_Bits);
- EPRST0_Bit : constant Bit_Number := 0;
- EPRST0_Mask : constant Unsigned_8 := 16#01#;
- EPRST1_Bit : constant Bit_Number := 1;
- EPRST1_Mask : constant Unsigned_8 := 16#02#;
- EPRST2_Bit : constant Bit_Number := 2;
- EPRST2_Mask : constant Unsigned_8 := 16#04#;
- EPRST3_Bit : constant Bit_Number := 3;
- EPRST3_Mask : constant Unsigned_8 := 16#08#;
- EPRST4_Bit : constant Bit_Number := 4;
- EPRST4_Mask : constant Unsigned_8 := 16#10#;
- UPRST_Addr : constant Address := 16#a8#;
- UPRST : Unsigned_8 ;
- for UPRST'Address use UPRST_Addr;
- pragma Volatile (UPRST);
- UPRST_Bits : Bits_In_Byte;
- for UPRST_Bits'Address use UPRST_Addr;
- pragma Volatile (UPRST_Bits);
- UENUM_Addr : constant Address := 16#e9#;
- UENUM : Unsigned_8 ;
- for UENUM'Address use UENUM_Addr;
- pragma Volatile (UENUM);
- UENUM_Bits : Bits_In_Byte;
- for UENUM_Bits'Address use UENUM_Addr;
- pragma Volatile (UENUM_Bits);
- EPNUM0_Bit : constant Bit_Number := 0;
- EPNUM0_Mask : constant Unsigned_8 := 16#01#;
- EPNUM1_Bit : constant Bit_Number := 1;
- EPNUM1_Mask : constant Unsigned_8 := 16#02#;
- EPNUM2_Bit : constant Bit_Number := 2;
- EPNUM2_Mask : constant Unsigned_8 := 16#04#;
- UPNUM_Addr : constant Address := 16#a7#;
- UPNUM : Unsigned_8 ;
- for UPNUM'Address use UPNUM_Addr;
- pragma Volatile (UPNUM);
- UPNUM_Bits : Bits_In_Byte;
- for UPNUM_Bits'Address use UPNUM_Addr;
- pragma Volatile (UPNUM_Bits);
- UEINTX_Addr : constant Address := 16#e8#;
- UEINTX : Unsigned_8 ;
- for UEINTX'Address use UEINTX_Addr;
- pragma Volatile (UEINTX);
- UEINTX_Bits : Bits_In_Byte;
- for UEINTX_Bits'Address use UEINTX_Addr;
- pragma Volatile (UEINTX_Bits);
- TXINI_Bit : constant Bit_Number := 0;
- TXINI_Mask : constant Unsigned_8 := 16#01#;
- STALLEDI_Bit : constant Bit_Number := 1;
- STALLEDI_Mask : constant Unsigned_8 := 16#02#;
- RXOUTI_Bit : constant Bit_Number := 2;
- RXOUTI_Mask : constant Unsigned_8 := 16#04#;
- RXSTPI_Bit : constant Bit_Number := 3;
- RXSTPI_Mask : constant Unsigned_8 := 16#08#;
- NAKOUTI_Bit : constant Bit_Number := 4;
- NAKOUTI_Mask : constant Unsigned_8 := 16#10#;
- RWAL_Bit : constant Bit_Number := 5;
- RWAL_Mask : constant Unsigned_8 := 16#20#;
- NAKINI_Bit : constant Bit_Number := 6;
- NAKINI_Mask : constant Unsigned_8 := 16#40#;
- FIFOCON_Bit : constant Bit_Number := 7;
- FIFOCON_Mask : constant Unsigned_8 := 16#80#;
- UPINTX_Addr : constant Address := 16#a6#;
- UPINTX : Unsigned_8 ;
- for UPINTX'Address use UPINTX_Addr;
- pragma Volatile (UPINTX);
- UPINTX_Bits : Bits_In_Byte;
- for UPINTX_Bits'Address use UPINTX_Addr;
- pragma Volatile (UPINTX_Bits);
- UDTST_Addr : constant Address := 16#e7#;
- UDTST : Unsigned_8 ;
- for UDTST'Address use UDTST_Addr;
- pragma Volatile (UDTST);
- UDTST_Bits : Bits_In_Byte;
- for UDTST_Bits'Address use UDTST_Addr;
- pragma Volatile (UDTST_Bits);
- UPINRQX_Addr : constant Address := 16#a5#;
- UPINRQX : Unsigned_8 ;
- for UPINRQX'Address use UPINRQX_Addr;
- pragma Volatile (UPINRQX);
- UPINRQX_Bits : Bits_In_Byte;
- for UPINRQX_Bits'Address use UPINRQX_Addr;
- pragma Volatile (UPINRQX_Bits);
- UDMFN_Addr : constant Address := 16#e6#;
- UDMFN : Unsigned_8 ;
- for UDMFN'Address use UDMFN_Addr;
- pragma Volatile (UDMFN);
- UDMFN_Bits : Bits_In_Byte;
- for UDMFN_Bits'Address use UDMFN_Addr;
- pragma Volatile (UDMFN_Bits);
- FNCERR_Bit : constant Bit_Number := 4;
- FNCERR_Mask : constant Unsigned_8 := 16#10#;
- UHFLEN_Addr : constant Address := 16#a4#;
- UHFLEN : Unsigned_8 ;
- for UHFLEN'Address use UHFLEN_Addr;
- pragma Volatile (UHFLEN);
- UHFLEN_Bits : Bits_In_Byte;
- for UHFLEN_Bits'Address use UHFLEN_Addr;
- pragma Volatile (UHFLEN_Bits);
- UDFNUMH_Addr : constant Address := 16#e5#;
- UDFNUMH : Unsigned_8 ;
- for UDFNUMH'Address use UDFNUMH_Addr;
- pragma Volatile (UDFNUMH);
- UDFNUMH_Bits : Bits_In_Byte;
- for UDFNUMH_Bits'Address use UDFNUMH_Addr;
- pragma Volatile (UDFNUMH_Bits);
- FNUM8_Bit : constant Bit_Number := 0;
- FNUM8_Mask : constant Unsigned_8 := 16#01#;
- FNUM9_Bit : constant Bit_Number := 1;
- FNUM9_Mask : constant Unsigned_8 := 16#02#;
- FNUM10_Bit : constant Bit_Number := 2;
- FNUM10_Mask : constant Unsigned_8 := 16#04#;
- UHFNUMH_Addr : constant Address := 16#a3#;
- UHFNUMH : Unsigned_8 ;
- for UHFNUMH'Address use UHFNUMH_Addr;
- pragma Volatile (UHFNUMH);
- UHFNUMH_Bits : Bits_In_Byte;
- for UHFNUMH_Bits'Address use UHFNUMH_Addr;
- pragma Volatile (UHFNUMH_Bits);
- UDFNUML_Addr : constant Address := 16#e4#;
- UDFNUM : Unsigned_16;
- for UDFNUM'Address use UDFNUML_Addr;
- pragma Volatile (UDFNUM);
- UDFNUML : Unsigned_8 ;
- for UDFNUML'Address use UDFNUML_Addr;
- pragma Volatile (UDFNUML);
- UDFNUML_Bits : Bits_In_Byte;
- for UDFNUML_Bits'Address use UDFNUML_Addr;
- pragma Volatile (UDFNUML_Bits);
- FNUM0_Bit : constant Bit_Number := 0;
- FNUM0_Mask : constant Unsigned_8 := 16#01#;
- FNUM1_Bit : constant Bit_Number := 1;
- FNUM1_Mask : constant Unsigned_8 := 16#02#;
- FNUM2_Bit : constant Bit_Number := 2;
- FNUM2_Mask : constant Unsigned_8 := 16#04#;
- FNUM3_Bit : constant Bit_Number := 3;
- FNUM3_Mask : constant Unsigned_8 := 16#08#;
- FNUM4_Bit : constant Bit_Number := 4;
- FNUM4_Mask : constant Unsigned_8 := 16#10#;
- FNUM5_Bit : constant Bit_Number := 5;
- FNUM5_Mask : constant Unsigned_8 := 16#20#;
- FNUM6_Bit : constant Bit_Number := 6;
- FNUM6_Mask : constant Unsigned_8 := 16#40#;
- FNUM7_Bit : constant Bit_Number := 7;
- FNUM7_Mask : constant Unsigned_8 := 16#80#;
- UHFNUML_Addr : constant Address := 16#a2#;
- UHFNUML : Unsigned_8 ;
- for UHFNUML'Address use UHFNUML_Addr;
- pragma Volatile (UHFNUML);
- UHFNUML_Bits : Bits_In_Byte;
- for UHFNUML_Bits'Address use UHFNUML_Addr;
- pragma Volatile (UHFNUML_Bits);
- UDADDR_Addr : constant Address := 16#e3#;
- UDADDR : Unsigned_8 ;
- for UDADDR'Address use UDADDR_Addr;
- pragma Volatile (UDADDR);
- UDADDR_Bits : Bits_In_Byte;
- for UDADDR_Bits'Address use UDADDR_Addr;
- pragma Volatile (UDADDR_Bits);
- UADD0_Bit : constant Bit_Number := 0;
- UADD0_Mask : constant Unsigned_8 := 16#01#;
- UADD1_Bit : constant Bit_Number := 1;
- UADD1_Mask : constant Unsigned_8 := 16#02#;
- UADD2_Bit : constant Bit_Number := 2;
- UADD2_Mask : constant Unsigned_8 := 16#04#;
- UADD3_Bit : constant Bit_Number := 3;
- UADD3_Mask : constant Unsigned_8 := 16#08#;
- UADD4_Bit : constant Bit_Number := 4;
- UADD4_Mask : constant Unsigned_8 := 16#10#;
- UADD5_Bit : constant Bit_Number := 5;
- UADD5_Mask : constant Unsigned_8 := 16#20#;
- UADD6_Bit : constant Bit_Number := 6;
- UADD6_Mask : constant Unsigned_8 := 16#40#;
- ADDEN_Bit : constant Bit_Number := 7;
- ADDEN_Mask : constant Unsigned_8 := 16#80#;
- UHADDR_Addr : constant Address := 16#a1#;
- UHADDR : Unsigned_8 ;
- for UHADDR'Address use UHADDR_Addr;
- pragma Volatile (UHADDR);
- UHADDR_Bits : Bits_In_Byte;
- for UHADDR_Bits'Address use UHADDR_Addr;
- pragma Volatile (UHADDR_Bits);
- UDIEN_Addr : constant Address := 16#e2#;
- UDIEN : Unsigned_8 ;
- for UDIEN'Address use UDIEN_Addr;
- pragma Volatile (UDIEN);
- UDIEN_Bits : Bits_In_Byte;
- for UDIEN_Bits'Address use UDIEN_Addr;
- pragma Volatile (UDIEN_Bits);
- SUSPE_Bit : constant Bit_Number := 0;
- SUSPE_Mask : constant Unsigned_8 := 16#01#;
- SOFE_Bit : constant Bit_Number := 2;
- SOFE_Mask : constant Unsigned_8 := 16#04#;
- EORSTE_Bit : constant Bit_Number := 3;
- EORSTE_Mask : constant Unsigned_8 := 16#08#;
- WAKEUPE_Bit : constant Bit_Number := 4;
- WAKEUPE_Mask : constant Unsigned_8 := 16#10#;
- EORSME_Bit : constant Bit_Number := 5;
- EORSME_Mask : constant Unsigned_8 := 16#20#;
- UPRSME_Bit : constant Bit_Number := 6;
- UPRSME_Mask : constant Unsigned_8 := 16#40#;
- UHIEN_Addr : constant Address := 16#a0#;
- UHIEN : Unsigned_8 ;
- for UHIEN'Address use UHIEN_Addr;
- pragma Volatile (UHIEN);
- UHIEN_Bits : Bits_In_Byte;
- for UHIEN_Bits'Address use UHIEN_Addr;
- pragma Volatile (UHIEN_Bits);
- UDINT_Addr : constant Address := 16#e1#;
- UDINT : Unsigned_8 ;
- for UDINT'Address use UDINT_Addr;
- pragma Volatile (UDINT);
- UDINT_Bits : Bits_In_Byte;
- for UDINT_Bits'Address use UDINT_Addr;
- pragma Volatile (UDINT_Bits);
- SUSPI_Bit : constant Bit_Number := 0;
- SUSPI_Mask : constant Unsigned_8 := 16#01#;
- SOFI_Bit : constant Bit_Number := 2;
- SOFI_Mask : constant Unsigned_8 := 16#04#;
- EORSTI_Bit : constant Bit_Number := 3;
- EORSTI_Mask : constant Unsigned_8 := 16#08#;
- WAKEUPI_Bit : constant Bit_Number := 4;
- WAKEUPI_Mask : constant Unsigned_8 := 16#10#;
- EORSMI_Bit : constant Bit_Number := 5;
- EORSMI_Mask : constant Unsigned_8 := 16#20#;
- UPRSMI_Bit : constant Bit_Number := 6;
- UPRSMI_Mask : constant Unsigned_8 := 16#40#;
- UHINT_Addr : constant Address := 16#9f#;
- UHINT : Unsigned_8 ;
- for UHINT'Address use UHINT_Addr;
- pragma Volatile (UHINT);
- UHINT_Bits : Bits_In_Byte;
- for UHINT_Bits'Address use UHINT_Addr;
- pragma Volatile (UHINT_Bits);
- UDCON_Addr : constant Address := 16#e0#;
- UDCON : Unsigned_8 ;
- for UDCON'Address use UDCON_Addr;
- pragma Volatile (UDCON);
- UDCON_Bits : Bits_In_Byte;
- for UDCON_Bits'Address use UDCON_Addr;
- pragma Volatile (UDCON_Bits);
- DETACH_Bit : constant Bit_Number := 0;
- DETACH_Mask : constant Unsigned_8 := 16#01#;
- RMWKUP_Bit : constant Bit_Number := 1;
- RMWKUP_Mask : constant Unsigned_8 := 16#02#;
- RSTCPU_Bit : constant Bit_Number := 2;
- RSTCPU_Mask : constant Unsigned_8 := 16#04#;
- UHCON_Addr : constant Address := 16#9e#;
- UHCON : Unsigned_8 ;
- for UHCON'Address use UHCON_Addr;
- pragma Volatile (UHCON);
- UHCON_Bits : Bits_In_Byte;
- for UHCON_Bits'Address use UHCON_Addr;
- pragma Volatile (UHCON_Bits);
- USBINT_Addr : constant Address := 16#da#;
- USBINT : Unsigned_8 ;
- for USBINT'Address use USBINT_Addr;
- pragma Volatile (USBINT);
- USBINT_Bits : Bits_In_Byte;
- for USBINT_Bits'Address use USBINT_Addr;
- pragma Volatile (USBINT_Bits);
- -- USB General Control Register
- USBCON_Addr : constant Address := 16#d8#;
- USBCON : Unsigned_8 ;
- for USBCON'Address use USBCON_Addr;
- pragma Volatile (USBCON);
- USBCON_Bits : Bits_In_Byte;
- for USBCON_Bits'Address use USBCON_Addr;
- pragma Volatile (USBCON_Bits);
- FRZCLK_Bit : constant Bit_Number := 5;
- FRZCLK_Mask : constant Unsigned_8 := 16#20#;
- USBE_Bit : constant Bit_Number := 7;
- USBE_Mask : constant Unsigned_8 := 16#80#;
- -- Regulator Control Register
- REGCR_Addr : constant Address := 16#63#;
- REGCR : Unsigned_8 ;
- for REGCR'Address use REGCR_Addr;
- pragma Volatile (REGCR);
- REGCR_Bits : Bits_In_Byte;
- for REGCR_Bits'Address use REGCR_Addr;
- pragma Volatile (REGCR_Bits);
- REGDIS_Bit : constant Bit_Number := 0;
- REGDIS_Mask : constant Unsigned_8 := 16#01#;
- -- USART I/O Data Register
- UDR1_Addr : constant Address := 16#ce#;
- UDR1 : Unsigned_8 ;
- for UDR1'Address use UDR1_Addr;
- pragma Volatile (UDR1);
- UDR1_Bits : Bits_In_Byte;
- for UDR1_Bits'Address use UDR1_Addr;
- pragma Volatile (UDR1_Bits);
- -- USART I/O Data Register bit 0
- UDR1_0_Bit : constant Bit_Number := 0;
- UDR1_0_Mask : constant Unsigned_8 := 16#01#;
- -- USART I/O Data Register bit 1
- UDR1_1_Bit : constant Bit_Number := 1;
- UDR1_1_Mask : constant Unsigned_8 := 16#02#;
- -- USART I/O Data Register bit 2
- UDR1_2_Bit : constant Bit_Number := 2;
- UDR1_2_Mask : constant Unsigned_8 := 16#04#;
- -- USART I/O Data Register bit 3
- UDR1_3_Bit : constant Bit_Number := 3;
- UDR1_3_Mask : constant Unsigned_8 := 16#08#;
- -- USART I/O Data Register bit 4
- UDR1_4_Bit : constant Bit_Number := 4;
- UDR1_4_Mask : constant Unsigned_8 := 16#10#;
- -- USART I/O Data Register bit 5
- UDR1_5_Bit : constant Bit_Number := 5;
- UDR1_5_Mask : constant Unsigned_8 := 16#20#;
- -- USART I/O Data Register bit 6
- UDR1_6_Bit : constant Bit_Number := 6;
- UDR1_6_Mask : constant Unsigned_8 := 16#40#;
- -- USART I/O Data Register bit 7
- UDR1_7_Bit : constant Bit_Number := 7;
- UDR1_7_Mask : constant Unsigned_8 := 16#80#;
- -- USART Baud Rate Register High Byte
- UBRR1H_Addr : constant Address := 16#cd#;
- UBRR1H : Unsigned_8 ;
- for UBRR1H'Address use UBRR1H_Addr;
- pragma Volatile (UBRR1H);
- UBRR1H_Bits : Bits_In_Byte;
- for UBRR1H_Bits'Address use UBRR1H_Addr;
- pragma Volatile (UBRR1H_Bits);
- -- USART Baud Rate Register bit 8
- UBRR8_Bit : constant Bit_Number := 0;
- UBRR8_Mask : constant Unsigned_8 := 16#01#;
- -- USART Baud Rate Register bit 9
- UBRR9_Bit : constant Bit_Number := 1;
- UBRR9_Mask : constant Unsigned_8 := 16#02#;
- -- USART Baud Rate Register bit 10
- UBRR10_Bit : constant Bit_Number := 2;
- UBRR10_Mask : constant Unsigned_8 := 16#04#;
- -- USART Baud Rate Register bit 11
- UBRR11_Bit : constant Bit_Number := 3;
- UBRR11_Mask : constant Unsigned_8 := 16#08#;
- -- USART Baud Rate Register Low Byte
- UBRR1L_Addr : constant Address := 16#cc#;
- UBRR1 : Unsigned_16;
- for UBRR1'Address use UBRR1L_Addr;
- pragma Volatile (UBRR1);
- UBRR1L : Unsigned_8 ;
- for UBRR1L'Address use UBRR1L_Addr;
- pragma Volatile (UBRR1L);
- UBRR1L_Bits : Bits_In_Byte;
- for UBRR1L_Bits'Address use UBRR1L_Addr;
- pragma Volatile (UBRR1L_Bits);
- -- USART Baud Rate Register bit 0
- UBRR0_Bit : constant Bit_Number := 0;
- UBRR0_Mask : constant Unsigned_8 := 16#01#;
- -- USART Baud Rate Register bit 1
- -- UBRR1_Bit : constant Bit_Number := 1;
- -- UBRR1_Mask : constant Unsigned_8 := 16#02#;
- -- USART Baud Rate Register bit 2
- UBRR2_Bit : constant Bit_Number := 2;
- UBRR2_Mask : constant Unsigned_8 := 16#04#;
- -- USART Baud Rate Register bit 3
- UBRR3_Bit : constant Bit_Number := 3;
- UBRR3_Mask : constant Unsigned_8 := 16#08#;
- -- USART Baud Rate Register bit 4
- UBRR4_Bit : constant Bit_Number := 4;
- UBRR4_Mask : constant Unsigned_8 := 16#10#;
- -- USART Baud Rate Register bit 5
- UBRR5_Bit : constant Bit_Number := 5;
- UBRR5_Mask : constant Unsigned_8 := 16#20#;
- -- USART Baud Rate Register bit 6
- UBRR6_Bit : constant Bit_Number := 6;
- UBRR6_Mask : constant Unsigned_8 := 16#40#;
- -- USART Baud Rate Register bit 7
- UBRR7_Bit : constant Bit_Number := 7;
- UBRR7_Mask : constant Unsigned_8 := 16#80#;
- -- USART Control and Status Register D
- UCSR1D_Addr : constant Address := 16#cb#;
- UCSR1D : Unsigned_8 ;
- for UCSR1D'Address use UCSR1D_Addr;
- pragma Volatile (UCSR1D);
- UCSR1D_Bits : Bits_In_Byte;
- for UCSR1D_Bits'Address use UCSR1D_Addr;
- pragma Volatile (UCSR1D_Bits);
- -- RTS Enable
- RTSEN_Bit : constant Bit_Number := 0;
- RTSEN_Mask : constant Unsigned_8 := 16#01#;
- -- CTS Enable
- CTSEN_Bit : constant Bit_Number := 1;
- CTSEN_Mask : constant Unsigned_8 := 16#02#;
- -- USART Control and Status Register C
- UCSR1C_Addr : constant Address := 16#ca#;
- UCSR1C : Unsigned_8 ;
- for UCSR1C'Address use UCSR1C_Addr;
- pragma Volatile (UCSR1C);
- UCSR1C_Bits : Bits_In_Byte;
- for UCSR1C_Bits'Address use UCSR1C_Addr;
- pragma Volatile (UCSR1C_Bits);
- -- Clock Polarity
- UCPOL1_Bit : constant Bit_Number := 0;
- UCPOL1_Mask : constant Unsigned_8 := 16#01#;
- -- Character Size
- UCSZ10_Bit : constant Bit_Number := 1;
- UCSZ10_Mask : constant Unsigned_8 := 16#02#;
- -- Character Size
- UCSZ11_Bit : constant Bit_Number := 2;
- UCSZ11_Mask : constant Unsigned_8 := 16#04#;
- -- Stop Bit Select
- USBS1_Bit : constant Bit_Number := 3;
- USBS1_Mask : constant Unsigned_8 := 16#08#;
- -- Parity Mode Bit 0
- UPM10_Bit : constant Bit_Number := 4;
- UPM10_Mask : constant Unsigned_8 := 16#10#;
- -- Parity Mode Bit 1
- UPM11_Bit : constant Bit_Number := 5;
- UPM11_Mask : constant Unsigned_8 := 16#20#;
- -- USART Mode Select
- UMSEL10_Bit : constant Bit_Number := 6;
- UMSEL10_Mask : constant Unsigned_8 := 16#40#;
- -- USART Mode Select
- UMSEL11_Bit : constant Bit_Number := 7;
- UMSEL11_Mask : constant Unsigned_8 := 16#80#;
- -- USART Control and Status Register B
- UCSR1B_Addr : constant Address := 16#c9#;
- UCSR1B : Unsigned_8 ;
- for UCSR1B'Address use UCSR1B_Addr;
- pragma Volatile (UCSR1B);
- UCSR1B_Bits : Bits_In_Byte;
- for UCSR1B_Bits'Address use UCSR1B_Addr;
- pragma Volatile (UCSR1B_Bits);
- -- Transmit Data Bit 8
- TXB81_Bit : constant Bit_Number := 0;
- TXB81_Mask : constant Unsigned_8 := 16#01#;
- -- Receive Data Bit 8
- RXB81_Bit : constant Bit_Number := 1;
- RXB81_Mask : constant Unsigned_8 := 16#02#;
- -- Character Size
- UCSZ12_Bit : constant Bit_Number := 2;
- UCSZ12_Mask : constant Unsigned_8 := 16#04#;
- -- Transmitter Enable
- TXEN1_Bit : constant Bit_Number := 3;
- TXEN1_Mask : constant Unsigned_8 := 16#08#;
- -- Receiver Enable
- RXEN1_Bit : constant Bit_Number := 4;
- RXEN1_Mask : constant Unsigned_8 := 16#10#;
- -- USART Data register Empty Interrupt Enable
- UDRIE1_Bit : constant Bit_Number := 5;
- UDRIE1_Mask : constant Unsigned_8 := 16#20#;
- -- TX Complete Interrupt Enable
- TXCIE1_Bit : constant Bit_Number := 6;
- TXCIE1_Mask : constant Unsigned_8 := 16#40#;
- -- RX Complete Interrupt Enable
- RXCIE1_Bit : constant Bit_Number := 7;
- RXCIE1_Mask : constant Unsigned_8 := 16#80#;
- -- USART Control and Status Register A
- UCSR1A_Addr : constant Address := 16#c8#;
- UCSR1A : Unsigned_8 ;
- for UCSR1A'Address use UCSR1A_Addr;
- pragma Volatile (UCSR1A);
- UCSR1A_Bits : Bits_In_Byte;
- for UCSR1A_Bits'Address use UCSR1A_Addr;
- pragma Volatile (UCSR1A_Bits);
- -- Multi-processor Communication Mode
- MPCM1_Bit : constant Bit_Number := 0;
- MPCM1_Mask : constant Unsigned_8 := 16#01#;
- -- Double the USART transmission speed
- U2X1_Bit : constant Bit_Number := 1;
- U2X1_Mask : constant Unsigned_8 := 16#02#;
- -- Parity Error
- UPE1_Bit : constant Bit_Number := 2;
- UPE1_Mask : constant Unsigned_8 := 16#04#;
- -- Data overRun
- DOR1_Bit : constant Bit_Number := 3;
- DOR1_Mask : constant Unsigned_8 := 16#08#;
- -- Framing Error
- FE1_Bit : constant Bit_Number := 4;
- FE1_Mask : constant Unsigned_8 := 16#10#;
- -- USART Data Register Empty
- UDRE1_Bit : constant Bit_Number := 5;
- UDRE1_Mask : constant Unsigned_8 := 16#20#;
- -- USART Transmitt Complete
- TXC1_Bit : constant Bit_Number := 6;
- TXC1_Mask : constant Unsigned_8 := 16#40#;
- -- USART Receive Complete
- RXC1_Bit : constant Bit_Number := 7;
- RXC1_Mask : constant Unsigned_8 := 16#80#;
- ASSR_Addr : constant Address := 16#b6#;
- ASSR : Unsigned_8 ;
- for ASSR'Address use ASSR_Addr;
- pragma Volatile (ASSR);
- ASSR_Bits : Bits_In_Byte;
- for ASSR_Bits'Address use ASSR_Addr;
- pragma Volatile (ASSR_Bits);
- OCR2B_Addr : constant Address := 16#b4#;
- OCR2B : Unsigned_8 ;
- for OCR2B'Address use OCR2B_Addr;
- pragma Volatile (OCR2B);
- OCR2B_Bits : Bits_In_Byte;
- for OCR2B_Bits'Address use OCR2B_Addr;
- pragma Volatile (OCR2B_Bits);
- OCR2A_Addr : constant Address := 16#b3#;
- OCR2A : Unsigned_8 ;
- for OCR2A'Address use OCR2A_Addr;
- pragma Volatile (OCR2A);
- OCR2A_Bits : Bits_In_Byte;
- for OCR2A_Bits'Address use OCR2A_Addr;
- pragma Volatile (OCR2A_Bits);
- TCNT2_Addr : constant Address := 16#b2#;
- TCNT2 : Unsigned_8 ;
- for TCNT2'Address use TCNT2_Addr;
- pragma Volatile (TCNT2);
- TCNT2_Bits : Bits_In_Byte;
- for TCNT2_Bits'Address use TCNT2_Addr;
- pragma Volatile (TCNT2_Bits);
- TCCR2B_Addr : constant Address := 16#b1#;
- TCCR2B : Unsigned_8 ;
- for TCCR2B'Address use TCCR2B_Addr;
- pragma Volatile (TCCR2B);
- TCCR2B_Bits : Bits_In_Byte;
- for TCCR2B_Bits'Address use TCCR2B_Addr;
- pragma Volatile (TCCR2B_Bits);
- TCCR2A_Addr : constant Address := 16#b0#;
- TCCR2A : Unsigned_8 ;
- for TCCR2A'Address use TCCR2A_Addr;
- pragma Volatile (TCCR2A);
- TCCR2A_Bits : Bits_In_Byte;
- for TCCR2A_Bits'Address use TCCR2A_Addr;
- pragma Volatile (TCCR2A_Bits);
- OCR3CH_Addr : constant Address := 16#9d#;
- OCR3CH : Unsigned_8 ;
- for OCR3CH'Address use OCR3CH_Addr;
- pragma Volatile (OCR3CH);
- OCR3CH_Bits : Bits_In_Byte;
- for OCR3CH_Bits'Address use OCR3CH_Addr;
- pragma Volatile (OCR3CH_Bits);
- OCR3CL_Addr : constant Address := 16#9c#;
- OCR3CL : Unsigned_8 ;
- for OCR3CL'Address use OCR3CL_Addr;
- pragma Volatile (OCR3CL);
- OCR3CL_Bits : Bits_In_Byte;
- for OCR3CL_Bits'Address use OCR3CL_Addr;
- pragma Vo…