Small reorganizing
This commit is contained in:
parent
4e3ed03efd
commit
acc5dd48eb
|
@ -1,6 +1,6 @@
|
||||||
with STM32.STM32F407Z; use STM32.STM32F407Z;
|
with STM32.STM32F407Z; use STM32.STM32F407Z;
|
||||||
with STM32.General_Purpose_IO; use STM32.General_Purpose_IO;
|
use STM32.STM32F407Z.Modules.GPIO;
|
||||||
with STM32.Registers.GPIO; use STM32.Registers.GPIO;
|
with STM32.STM32F4.GPIO.Ports; use STM32.STM32F4.GPIO.Ports;
|
||||||
with Ada.Real_Time; use Ada.Real_Time;
|
with Ada.Real_Time; use Ada.Real_Time;
|
||||||
|
|
||||||
procedure LED_Flasher is
|
procedure LED_Flasher is
|
||||||
|
@ -9,6 +9,7 @@ procedure LED_Flasher is
|
||||||
Now: Time := Clock;
|
Now: Time := Clock;
|
||||||
LED_Port: GPIO_Registers renames GPIOD;
|
LED_Port: GPIO_Registers renames GPIOD;
|
||||||
LED_Bit: constant Port_Bit_Number := 3;
|
LED_Bit: constant Port_Bit_Number := 3;
|
||||||
|
LED_On: constant Boolean := False;
|
||||||
package LED is new GPIO_Port_Boolean(LED_Port, LED_Bit);
|
package LED is new GPIO_Port_Boolean(LED_Port, LED_Bit);
|
||||||
begin
|
begin
|
||||||
RCC.AHB1ENR.GPIOD := True;
|
RCC.AHB1ENR.GPIOD := True;
|
||||||
|
@ -17,9 +18,9 @@ begin
|
||||||
LED_Port.OSPEEDR(LED_Bit) := Very_High_Speed;
|
LED_Port.OSPEEDR(LED_Bit) := Very_High_Speed;
|
||||||
LED_Port.PUPDR(LED_Bit) := No_Pull;
|
LED_Port.PUPDR(LED_Bit) := No_Pull;
|
||||||
loop
|
loop
|
||||||
LED.Set(False);
|
LED.Set(LED_On);
|
||||||
delay until Now + On_Time;
|
delay until Now + On_Time;
|
||||||
LED.Set(True);
|
LED.Set(not LED_On);
|
||||||
Now := Now + Period;
|
Now := Now + Period;
|
||||||
delay until Now;
|
delay until Now;
|
||||||
end loop;
|
end loop;
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
with STM32.STM32F429Z; use STM32.STM32F429Z;
|
with STM32.STM32F429Z; use STM32.STM32F429Z;
|
||||||
with STM32.General_Purpose_IO; use STM32.General_Purpose_IO;
|
use STM32.STM32F429Z.Modules.GPIO;
|
||||||
with STM32.Registers.GPIO; use STM32.Registers.GPIO;
|
with STM32.STM32F4.GPIO.Ports; use STM32.STM32F4.GPIO.Ports;
|
||||||
with Ada.Real_Time; use Ada.Real_Time;
|
with Ada.Real_Time; use Ada.Real_Time;
|
||||||
|
|
||||||
procedure LED_Flasher_429disco is
|
procedure LED_Flasher_429disco is
|
||||||
|
@ -9,6 +9,7 @@ procedure LED_Flasher_429disco is
|
||||||
Now: Time := Clock;
|
Now: Time := Clock;
|
||||||
LED_Port: GPIO_Registers renames GPIOG;
|
LED_Port: GPIO_Registers renames GPIOG;
|
||||||
LED_Bit: constant Port_Bit_Number := 13;
|
LED_Bit: constant Port_Bit_Number := 13;
|
||||||
|
LED_On: constant Boolean := True;
|
||||||
package LED is new GPIO_Port_Boolean(LED_Port, LED_Bit);
|
package LED is new GPIO_Port_Boolean(LED_Port, LED_Bit);
|
||||||
begin
|
begin
|
||||||
RCC.AHB1ENR.GPIOG := True;
|
RCC.AHB1ENR.GPIOG := True;
|
||||||
|
@ -17,9 +18,9 @@ begin
|
||||||
LED_Port.OSPEEDR(LED_Bit) := Very_High_Speed;
|
LED_Port.OSPEEDR(LED_Bit) := Very_High_Speed;
|
||||||
LED_Port.PUPDR(LED_Bit) := No_Pull;
|
LED_Port.PUPDR(LED_Bit) := No_Pull;
|
||||||
loop
|
loop
|
||||||
LED.Set(True);
|
LED.Set(LED_On);
|
||||||
delay until Now + On_Time;
|
delay until Now + On_Time;
|
||||||
LED.Set(False);
|
LED.Set(not LED_On);
|
||||||
Now := Now + Period;
|
Now := Now + Period;
|
||||||
delay until Now;
|
delay until Now;
|
||||||
end loop;
|
end loop;
|
||||||
|
|
|
@ -1,25 +0,0 @@
|
||||||
with Interfaces;
|
|
||||||
with STM32.Registers.GPIO;
|
|
||||||
|
|
||||||
package STM32.General_Purpose_IO is
|
|
||||||
-- Single GPIO pin
|
|
||||||
generic
|
|
||||||
Register: in out Registers.GPIO.GPIO_Registers;
|
|
||||||
Bit: Registers.GPIO.Port_Bit_Number;
|
|
||||||
package GPIO_Port_Boolean is
|
|
||||||
procedure Set(Value: Boolean) with Inline; -- Output to port
|
|
||||||
function Value return Boolean with Inline; -- Read port
|
|
||||||
end GPIO_Port_Boolean;
|
|
||||||
|
|
||||||
-- Multi-pin GPIO
|
|
||||||
generic
|
|
||||||
type Format is mod <>;
|
|
||||||
Register: in out Registers.GPIO.GPIO_Registers;
|
|
||||||
First_Bit: Registers.GPIO.Port_Bit_Number;
|
|
||||||
Last_Bit: Registers.GPIO.Port_Bit_NUmber;
|
|
||||||
package GPIO_Port_Modular is
|
|
||||||
procedure Set(Value: Format) with Inline;
|
|
||||||
function Value return Format with Inline;
|
|
||||||
end GPIO_Port_Modular;
|
|
||||||
|
|
||||||
end STM32.General_Purpose_IO;
|
|
|
@ -1,4 +1,4 @@
|
||||||
package STM32.Registers.STM32F4_Map is
|
package STM32.STM32F4.Address_Map is
|
||||||
pragma Pure;
|
pragma Pure;
|
||||||
|
|
||||||
|
|
||||||
|
@ -29,6 +29,8 @@ package STM32.Registers.STM32F4_Map is
|
||||||
CAN2: constant := 16#4000_6800#;
|
CAN2: constant := 16#4000_6800#;
|
||||||
PWR: constant := 16#4000_7000#;
|
PWR: constant := 16#4000_7000#;
|
||||||
DAC: constant := 16#4000_7400#;
|
DAC: constant := 16#4000_7400#;
|
||||||
|
UART7: constant := 14#4000_7800#;
|
||||||
|
UART8: constant := 14#4000_7C00#;
|
||||||
TIM1: constant := 16#4001_0000#;
|
TIM1: constant := 16#4001_0000#;
|
||||||
TIM8: constant := 16#4001_0400#;
|
TIM8: constant := 16#4001_0400#;
|
||||||
USART1: constant := 16#4001_1000#;
|
USART1: constant := 16#4001_1000#;
|
||||||
|
@ -36,6 +38,7 @@ package STM32.Registers.STM32F4_Map is
|
||||||
ADC1_2_3: constant := 16#4001_2000#;
|
ADC1_2_3: constant := 16#4001_2000#;
|
||||||
SDIO: constant := 16#4001_2C00#;
|
SDIO: constant := 16#4001_2C00#;
|
||||||
SPI1: constant := 16#4001_3000#;
|
SPI1: constant := 16#4001_3000#;
|
||||||
|
SPI4: constant := 16#4001_3400#;
|
||||||
SYSCFG: constant := 16#4001_3800#;
|
SYSCFG: constant := 16#4001_3800#;
|
||||||
EXTI: constant := 16#4001_3C00#;
|
EXTI: constant := 16#4001_3C00#;
|
||||||
TIM9: constant := 16#4001_4000#;
|
TIM9: constant := 16#4001_4000#;
|
||||||
|
@ -50,6 +53,8 @@ package STM32.Registers.STM32F4_Map is
|
||||||
GPIOG: constant := 16#4002_1800#;
|
GPIOG: constant := 16#4002_1800#;
|
||||||
GPIOH: constant := 16#4002_1C00#;
|
GPIOH: constant := 16#4002_1C00#;
|
||||||
GPIOI: constant := 16#4002_2000#;
|
GPIOI: constant := 16#4002_2000#;
|
||||||
|
GPIOJ: constant := 16#4002_2400#;
|
||||||
|
GPIOK: constant := 16#4002_2800#;
|
||||||
CRC: constant := 16#4002_3000#;
|
CRC: constant := 16#4002_3000#;
|
||||||
RCC: constant := 16#4002_3800#;
|
RCC: constant := 16#4002_3800#;
|
||||||
Flash_IR: constant := 16#4002_3C00#;
|
Flash_IR: constant := 16#4002_3C00#;
|
||||||
|
@ -57,14 +62,17 @@ package STM32.Registers.STM32F4_Map is
|
||||||
DMA1: constant := 16#4002_6000#;
|
DMA1: constant := 16#4002_6000#;
|
||||||
DMA2: constant := 16#4002_6400#;
|
DMA2: constant := 16#4002_6400#;
|
||||||
Ethernet_MAC:constant := 16#4002_8000#;
|
Ethernet_MAC:constant := 16#4002_8000#;
|
||||||
|
DMA2D: constant := 16#4002_B000#;
|
||||||
USB_OTG_HS: constant := 16#4004_0000#;
|
USB_OTG_HS: constant := 16#4004_0000#;
|
||||||
USB_OTG_FS: constant := 16#5000_0000#;
|
USB_OTG_FS: constant := 16#5000_0000#;
|
||||||
DCMI: constant := 16#5005_0000#;
|
DCMI: constant := 16#5005_0000#;
|
||||||
|
CRYP: constant := 16#5006_0000#;
|
||||||
|
HASH: constant := 16#5006_0400#;
|
||||||
RNG: constant := 16#5006_0800#;
|
RNG: constant := 16#5006_0800#;
|
||||||
FSMC_Bank1: constant := 16#6000_0000#;
|
FSMC_Bank1: constant := 16#6000_0000#;
|
||||||
FSMC_Bank2: constant := 16#7000_0000#;
|
FSMC_Bank2: constant := 16#7000_0000#;
|
||||||
FSMC_Bank3: constant := 16#8000_0000#;
|
FSMC_Bank3: constant := 16#8000_0000#;
|
||||||
FSMC_Bank4: constant := 16#9000_0000#;
|
FSMC_Bank4: constant := 16#9000_0000#;
|
||||||
FSMC: constant := 16#A000_0000#;
|
FMC_FSMC: constant := 16#A000_0000#;
|
||||||
|
|
||||||
end STM32.Registers.STM32F4_Map;
|
end STM32.STM32F4.Address_Map;
|
|
@ -1,7 +1,7 @@
|
||||||
with Interfaces;
|
with Interfaces;
|
||||||
use Interfaces;
|
use Interfaces;
|
||||||
|
|
||||||
package body STM32.General_Purpose_IO is
|
package body STM32.STM32F4.GPIO.Ports is
|
||||||
|
|
||||||
package body GPIO_Port_Boolean is
|
package body GPIO_Port_Boolean is
|
||||||
|
|
||||||
|
@ -25,7 +25,7 @@ package body STM32.General_Purpose_IO is
|
||||||
Size: constant Positive := 1 + Last_Bit - First_Bit;
|
Size: constant Positive := 1 + Last_Bit - First_Bit;
|
||||||
Mask: constant Unsigned_16 := 2**(Last_Bit + 1) - 2**First_Bit;
|
Mask: constant Unsigned_16 := 2**(Last_Bit + 1) - 2**First_Bit;
|
||||||
|
|
||||||
procedure Set(Value: Format) is
|
procedure Set(Value: Value_Type) is
|
||||||
begin
|
begin
|
||||||
Register.BSRR := (
|
Register.BSRR := (
|
||||||
BR => Mask,
|
BR => Mask,
|
||||||
|
@ -33,11 +33,11 @@ package body STM32.General_Purpose_IO is
|
||||||
);
|
);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
function Value return Format is
|
function Value return Value_Type is
|
||||||
begin
|
begin
|
||||||
return Format((Register.IDR / 2**First_Bit) and (2**Size - 1));
|
return Value_Type((Register.IDR / 2**First_Bit) and (2**Size - 1));
|
||||||
end;
|
end;
|
||||||
|
|
||||||
end GPIO_Port_Modular;
|
end GPIO_Port_Modular;
|
||||||
|
|
||||||
end STM32.General_Purpose_IO;
|
end STM32.STM32F4.GPIO.Ports;
|
|
@ -0,0 +1,24 @@
|
||||||
|
with Interfaces;
|
||||||
|
|
||||||
|
package STM32.STM32F4.GPIO.Ports is
|
||||||
|
-- Single GPIO pin
|
||||||
|
generic
|
||||||
|
Register: in out GPIO_Registers;
|
||||||
|
Bit: Port_Bit_Number;
|
||||||
|
package GPIO_Port_Boolean is
|
||||||
|
procedure Set(Value: Boolean) with Inline; -- Output to port
|
||||||
|
function Value return Boolean with Inline; -- Read port
|
||||||
|
end GPIO_Port_Boolean;
|
||||||
|
|
||||||
|
-- Multi-pin GPIO
|
||||||
|
generic
|
||||||
|
type Value_Type is mod <>;
|
||||||
|
Register: in out GPIO_Registers;
|
||||||
|
First_Bit: Port_Bit_Number;
|
||||||
|
Last_Bit: Port_Bit_Number;
|
||||||
|
package GPIO_Port_Modular is
|
||||||
|
procedure Set(Value: Value_Type) with Inline;
|
||||||
|
function Value return Value_Type with Inline;
|
||||||
|
end GPIO_Port_Modular;
|
||||||
|
|
||||||
|
end STM32.STM32F4.GPIO.Ports;
|
|
@ -1,7 +1,7 @@
|
||||||
with Interfaces;
|
with Interfaces;
|
||||||
use Interfaces;
|
use Interfaces;
|
||||||
|
|
||||||
package STM32.Registers.GPIO is
|
package STM32.STM32F4.GPIO is
|
||||||
pragma Pure;
|
pragma Pure;
|
||||||
|
|
||||||
subtype Port_Bit_Number is Natural range 0 .. 15;
|
subtype Port_Bit_Number is Natural range 0 .. 15;
|
||||||
|
@ -175,4 +175,4 @@ package STM32.Registers.GPIO is
|
||||||
AFR at 16#20# range 0 .. 63;
|
AFR at 16#20# range 0 .. 63;
|
||||||
end record;
|
end record;
|
||||||
|
|
||||||
end STM32.Registers.GPIO;
|
end STM32.STM32F4.GPIO;
|
|
@ -0,0 +1,3 @@
|
||||||
|
package STM32.STM32F4 is
|
||||||
|
pragma Pure;
|
||||||
|
end STM32.STM32F4;
|
|
@ -1,56 +1,56 @@
|
||||||
with System;
|
with System;
|
||||||
with STM32.Registers.GPIO;
|
with STM32.STM32F4.GPIO;
|
||||||
with STM32.Registers.RCC;
|
with STM32.Registers.RCC;
|
||||||
with STM32.Registers.EXTI;
|
with STM32.Registers.EXTI;
|
||||||
with STM32.Registers.SYSCFG;
|
with STM32.Registers.SYSCFG;
|
||||||
with STM32.Registers.FSMC;
|
with STM32.Registers.FSMC;
|
||||||
with STM32.Registers.STM32F4_Map;
|
with STM32.STM32F4.Address_Map;
|
||||||
|
|
||||||
package STM32.STM32F407Z is
|
package STM32.STM32F407Z is
|
||||||
pragma Preelaborate;
|
pragma Preelaborate;
|
||||||
|
|
||||||
|
package Address_Map renames STM32.STM32F4.Address_Map;
|
||||||
|
package Modules is
|
||||||
|
package EXTI renames STM32.Registers.EXTI;
|
||||||
|
package FSMC renames STM32.Registers.FSMC;
|
||||||
|
package GPIO renames STM32.STM32F4.GPIO;
|
||||||
|
--package GPIO_Ports renames STM32.STM32F4.GPIO.Ports;
|
||||||
|
package RCC renames STM32.Registers.RCC;
|
||||||
|
package SYSCFG renames STM32.Registers.SYSCFG;
|
||||||
|
end Modules;
|
||||||
|
|
||||||
--pragma Warnings (Off, "* may call Last_Chance_Handler");
|
--pragma Warnings (Off, "* may call Last_Chance_Handler");
|
||||||
--pragma Warnings (Off, "* may be incompatible with alignment of object");
|
--pragma Warnings (Off, "* may be incompatible with alignment of object");
|
||||||
|
|
||||||
EXTI: Registers.EXTI.EXTI_Registers
|
EXTI: Modules.EXTI.EXTI_Registers
|
||||||
with Volatile, Import,
|
with Volatile, Import, Address => System'To_Address(Address_Map.EXTI);
|
||||||
Address => System'To_Address(Registers.STM32F4_Map.EXTI);
|
|
||||||
|
|
||||||
FSMC: Registers.FSMC.FSMC_Registers
|
FSMC: Modules.FSMC.FSMC_Registers
|
||||||
with Volatile, Import,
|
with Volatile, Import, Address => System'To_Address(Address_Map.FMC_FSMC);
|
||||||
Address => System'To_Address(Registers.STM32F4_Map.FSMC);
|
|
||||||
|
|
||||||
GPIOA: Registers.GPIO.GPIO_Registers
|
GPIOA: Modules.GPIO.GPIO_Registers
|
||||||
with Volatile, Import,
|
with Volatile, Import, Address => System'To_Address(Address_Map.GPIOA);
|
||||||
Address => System'To_Address(Registers.STM32F4_Map.GPIOA);
|
|
||||||
|
|
||||||
GPIOC: Registers.GPIO.GPIO_Registers
|
GPIOC: Modules.GPIO.GPIO_Registers
|
||||||
with Volatile, Import,
|
with Volatile, Import, Address => System'To_Address(Address_Map.GPIOC);
|
||||||
Address => System'To_Address(Registers.STM32F4_Map.GPIOC);
|
|
||||||
|
|
||||||
GPIOD: Registers.GPIO.GPIO_Registers
|
GPIOD: Modules.GPIO.GPIO_Registers
|
||||||
with Volatile, Import,
|
with Volatile, Import, Address => System'To_Address(Address_Map.GPIOD);
|
||||||
Address => System'To_Address(Registers.STM32F4_Map.GPIOD);
|
|
||||||
|
|
||||||
GPIOE: Registers.GPIO.GPIO_Registers
|
GPIOE: Modules.GPIO.GPIO_Registers
|
||||||
with Volatile, Import,
|
with Volatile, Import, Address => System'To_Address(Address_Map.GPIOE);
|
||||||
Address => System'To_Address(Registers.STM32F4_Map.GPIOE);
|
|
||||||
|
|
||||||
GPIOF: Registers.GPIO.GPIO_Registers
|
GPIOF: Modules.GPIO.GPIO_Registers
|
||||||
with Volatile, Import,
|
with Volatile, Import, Address => System'To_Address(Address_Map.GPIOF);
|
||||||
Address => System'To_Address(Registers.STM32F4_Map.GPIOF);
|
|
||||||
|
|
||||||
GPIOG: Registers.GPIO.GPIO_Registers
|
GPIOG: Modules.GPIO.GPIO_Registers
|
||||||
with Volatile, Import,
|
with Volatile, Import, Address => System'To_Address(Address_Map.GPIOG);
|
||||||
Address => System'To_Address(Registers.STM32F4_Map.GPIOG);
|
|
||||||
|
|
||||||
RCC: Registers.RCC.RCC_Registers
|
RCC: Modules.RCC.RCC_Registers
|
||||||
with Volatile, Import,
|
with Volatile, Import, Address => System'To_Address(Address_Map.RCC);
|
||||||
Address => System'To_Address(Registers.STM32F4_Map.RCC);
|
|
||||||
|
|
||||||
SYSCFG: Registers.SYSCFG.SYSCFG_Registers
|
SYSCFG: Modules.SYSCFG.SYSCFG_Registers
|
||||||
with Volatile, Import,
|
with Volatile, Import, Address => System'To_Address(Address_Map.SYSCFG);
|
||||||
Address => System'To_Address(Registers.STM32F4_Map.SYSCFG);
|
|
||||||
|
|
||||||
--pragma Warnings (On, "* may call Last_Chance_Handler");
|
--pragma Warnings (On, "* may call Last_Chance_Handler");
|
||||||
--pragma Warnings (On, "* may be incompatible with alignment of object");
|
--pragma Warnings (On, "* may be incompatible with alignment of object");
|
||||||
|
|
|
@ -1,66 +1,61 @@
|
||||||
with System;
|
with System;
|
||||||
with STM32.Registers.GPIO;
|
with STM32.STM32F4.GPIO;
|
||||||
with STM32.Registers.EXTI;
|
with STM32.Registers.EXTI;
|
||||||
|
with STM32.Registers.RCC;
|
||||||
with STM32.Registers.SYSCFG;
|
with STM32.Registers.SYSCFG;
|
||||||
with STM32.Registers.STM32F4_Map;
|
with STM32.STM32F4.Address_Map;
|
||||||
|
|
||||||
package STM32.STM32F429Z is
|
package STM32.STM32F429Z is
|
||||||
pragma Preelaborate;
|
pragma Preelaborate;
|
||||||
|
|
||||||
EXTI: Registers.EXTI.EXTI_Registers
|
package Address_Map renames STM32.STM32F4.Address_Map;
|
||||||
with Volatile, Import,
|
package Modules is
|
||||||
Address => System'To_Address(Registers.STM32F4_Map.EXTI);
|
package EXTI renames STM32.Registers.EXTI;
|
||||||
|
package GPIO renames STM32.STM32F4.GPIO;
|
||||||
|
package RCC renames STM32.Registers.RCC;
|
||||||
|
package SYSCFG renames STM32.Registers.SYSCFG;
|
||||||
|
end Modules;
|
||||||
|
|
||||||
GPIOA: Registers.GPIO.GPIO_Registers
|
EXTI: Modules.EXTI.EXTI_Registers
|
||||||
with Volatile, Import,
|
with Volatile, Import, Address => System'To_Address(Address_Map.EXTI);
|
||||||
Address => System'To_Address(Registers.STM32F4_Map.GPIOA);
|
|
||||||
|
|
||||||
GPIOB: Registers.GPIO.GPIO_Registers
|
GPIOA: Modules.GPIO.GPIO_Registers
|
||||||
with Volatile, Import,
|
with Volatile, Import, Address => System'To_Address(Address_Map.GPIOA);
|
||||||
Address => System'To_Address(Registers.STM32F4_Map.GPIOB);
|
|
||||||
|
|
||||||
GPIOC: Registers.GPIO.GPIO_Registers
|
GPIOB: Modules.GPIO.GPIO_Registers
|
||||||
with Volatile, Import,
|
with Volatile, Import, Address => System'To_Address(Address_Map.GPIOB);
|
||||||
Address => System'To_Address(Registers.STM32F4_Map.GPIOC);
|
|
||||||
|
|
||||||
GPIOD: Registers.GPIO.GPIO_Registers
|
GPIOC: Modules.GPIO.GPIO_Registers
|
||||||
with Volatile, Import,
|
with Volatile, Import, Address => System'To_Address(Address_Map.GPIOC);
|
||||||
Address => System'To_Address(Registers.STM32F4_Map.GPIOD);
|
|
||||||
|
|
||||||
GPIOE: Registers.GPIO.GPIO_Registers
|
GPIOD: Modules.GPIO.GPIO_Registers
|
||||||
with Volatile, Import,
|
with Volatile, Import, Address => System'To_Address(Address_Map.GPIOD);
|
||||||
Address => System'To_Address(Registers.STM32F4_Map.GPIOE);
|
|
||||||
|
|
||||||
GPIOF: Registers.GPIO.GPIO_Registers
|
GPIOE: Modules.GPIO.GPIO_Registers
|
||||||
with Volatile, Import,
|
with Volatile, Import, Address => System'To_Address(Address_Map.GPIOE);
|
||||||
Address => System'To_Address(Registers.STM32F4_Map.GPIOF);
|
|
||||||
|
|
||||||
GPIOG: Registers.GPIO.GPIO_Registers
|
GPIOF: Modules.GPIO.GPIO_Registers
|
||||||
with Volatile, Import,
|
with Volatile, Import, Address => System'To_Address(Address_Map.GPIOF);
|
||||||
Address => System'To_Address(Registers.STM32F4_Map.GPIOG);
|
|
||||||
|
|
||||||
GPIOH: Registers.GPIO.GPIO_Registers
|
GPIOG: Modules.GPIO.GPIO_Registers
|
||||||
with Volatile, Import,
|
with Volatile, Import, Address => System'To_Address(Address_Map.GPIOG);
|
||||||
Address => System'To_Address(Registers.STM32F4_Map.GPIOH);
|
|
||||||
|
|
||||||
GPIOI: Registers.GPIO.GPIO_Registers
|
GPIOH: Modules.GPIO.GPIO_Registers
|
||||||
with Volatile, Import,
|
with Volatile, Import, Address => System'To_Address(Address_Map.GPIOH);
|
||||||
Address => System'To_Address(Registers.STM32F4_Map.GPIOI);
|
|
||||||
|
|
||||||
GPIOJ: Registers.GPIO.GPIO_Registers
|
GPIOI: Modules.GPIO.GPIO_Registers
|
||||||
with Volatile, Import,
|
with Volatile, Import, Address => System'To_Address(Address_Map.GPIOI);
|
||||||
Address => System'To_Address(Registers.STM32F4_Map.GPIOJ);
|
|
||||||
|
|
||||||
GPIOK: Registers.GPIO.GPIO_Registers
|
GPIOJ: Modules.GPIO.GPIO_Registers
|
||||||
with Volatile, Import,
|
with Volatile, Import, Address => System'To_Address(Address_Map.GPIOJ);
|
||||||
Address => System'To_Address(Registers.STM32F4_Map.GPIOK);
|
|
||||||
|
|
||||||
RCC: Registers.RCC.RCC_Registers
|
GPIOK: Modules.GPIO.GPIO_Registers
|
||||||
with Volatile, Import,
|
with Volatile, Import, Address => System'To_Address(Address_Map.GPIOK);
|
||||||
Address => System'To_Address(Registers.STM32F4_Map.RCC);
|
|
||||||
|
|
||||||
SYSCFG: Registers.SYSCFG.SYSCFG_Registers
|
RCC: Modules.RCC.RCC_Registers
|
||||||
with Volatile, Import,
|
with Volatile, Import, Address => System'To_Address(Address_Map.RCC);
|
||||||
Address => System'To_Address(Registers.STM32F4_Map.SYSCFG);
|
|
||||||
|
SYSCFG: Modules.SYSCFG.SYSCFG_Registers
|
||||||
|
with Volatile, Import, Address => System'To_Address(Address_Map.SYSCFG);
|
||||||
|
|
||||||
end STM32.STM32F429Z;
|
end STM32.STM32F429Z;
|
||||||
|
|
|
@ -6,7 +6,7 @@ project STM32_Library is
|
||||||
for Library_Kind use "static";
|
for Library_Kind use "static";
|
||||||
--for Library_Interface use ("STM32", "STM32.STM32F407Z");
|
--for Library_Interface use ("STM32", "STM32.STM32F407Z");
|
||||||
for Target use "arm-eabi";
|
for Target use "arm-eabi";
|
||||||
--for Runtime("ada") use "ravenscar-sfp-stm32f4";
|
for Runtime("ada") use "zfp-stm32f4";
|
||||||
package Builder is
|
package Builder is
|
||||||
for Default_Switches("Ada") use (
|
for Default_Switches("Ada") use (
|
||||||
"-gnato",
|
"-gnato",
|
||||||
|
|
Loading…
Reference in New Issue