Example-led works fine with -mcpu=cortex-m3.
This commit is contained in:
@@ -23,24 +23,25 @@
|
|||||||
/*
|
/*
|
||||||
* Port A setup.
|
* Port A setup.
|
||||||
*
|
*
|
||||||
* MODER: 10 11 - 11 01 - 01 11 - 10 10 11 11 - 11 11 - 11 10 - 11 11
|
* MODER: 10 10 - 10 01 - 01 11 - 10 10 11 11 - 11 11 - 11 10 - 11 11
|
||||||
*
|
*
|
||||||
* PA2 - USART2-TX: AF7
|
* PA2 - USART2-TX: AF7
|
||||||
* PA8 - USART1-CK: AF7
|
* PA8 - USART1-CK: AF7
|
||||||
* PA9 - USART1-TX: AF7 Open-drain pull-up
|
* PA9 - USART1-TX: AF7 Open-drain pull-up
|
||||||
* PA11 - Push Pull output medium-speed 0 (until USB enabled) (USBDM: AF10)
|
* PA11 - Push Pull output medium-speed 0 (until USB enabled) (USBDM: AF10)
|
||||||
* PA12 - Push Pull output medium-speed 0 (until USB enabled) (USBDP: AF10)
|
* PA12 - Push Pull output medium-speed 0 (until USB enabled) (USBDP: AF10)
|
||||||
|
* PA13 - SWDIO
|
||||||
|
* PA14 - SWDCLK
|
||||||
* PA15 - USART2-RX: AF3
|
* PA15 - USART2-RX: AF3
|
||||||
* ------------------------ Default
|
* ------------------------ Default
|
||||||
* PAx - analog input
|
* PAx - analog input
|
||||||
*/
|
*/
|
||||||
#define VAL_GPIO_LED_MODER 0xBD7AFFEF
|
#define VAL_GPIO_OTHER_MODER 0xA97AFFEF
|
||||||
#define VAL_GPIO_LED_OTYPER 0x00000200
|
#define VAL_GPIO_OTHER_OTYPER 0x00000200
|
||||||
#define VAL_GPIO_LED_OSPEEDR 0xFB7FFFFF
|
#define VAL_GPIO_OTHER_OSPEEDR 0xFB7FFFFF
|
||||||
#define VAL_GPIO_LED_PUPDR 0x00040000
|
#define VAL_GPIO_OTHER_PUPDR 0x00040000
|
||||||
|
#define VAL_GPIO_OTHER_AFRL 0x00000700
|
||||||
#define VAL_GPIO_LED_AFRL 0x00000700
|
#define VAL_GPIO_OTHER_AFRH 0x30000077
|
||||||
#define VAL_GPIO_LED_AFRH 0x30000077
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Port B setup.
|
* Port B setup.
|
||||||
@@ -49,11 +50,13 @@
|
|||||||
*
|
*
|
||||||
* PB3 - ON (LED 1:ON 0:OFF)
|
* PB3 - ON (LED 1:ON 0:OFF)
|
||||||
* ------------------------ Default
|
* ------------------------ Default
|
||||||
* PAx - analog input
|
* PBx - analog input
|
||||||
*/
|
*/
|
||||||
#define VAL_GPIO_OTHER_MODER 0xFFFFFF7F
|
#define VAL_GPIO_LED_MODER 0xFFFFFF7F
|
||||||
#define VAL_GPIO_OTHER_OTYPER 0x00000000
|
#define VAL_GPIO_LED_OTYPER 0x00000000
|
||||||
#define VAL_GPIO_OTHER_OSPEEDR 0x00000000
|
#define VAL_GPIO_LED_OSPEEDR 0x00000000
|
||||||
#define VAL_GPIO_OTHER_PUPDR 0x00000000
|
#define VAL_GPIO_LED_PUPDR 0x00000000
|
||||||
|
#define VAL_GPIO_LED_AFRL 0x00000000
|
||||||
|
#define VAL_GPIO_LED_AFRH 0x00000000
|
||||||
|
|
||||||
#define RCC_PHR_GPIO (RCC_PHR_GPIOA | RCC_PHR_GPIOB)
|
#define RCC_PHR_GPIO (RCC_PHR_GPIOA | RCC_PHR_GPIOB)
|
||||||
|
|||||||
@@ -26,7 +26,7 @@ OBJCOPY = $(CROSS)objcopy
|
|||||||
|
|
||||||
### MCU = cortex-m3
|
### MCU = cortex-m3
|
||||||
### MCU = cortex-m0
|
### MCU = cortex-m0
|
||||||
MCU = cortex-m4
|
MCU = cortex-m3
|
||||||
CWARN = -Wall -Wextra -Wstrict-prototypes
|
CWARN = -Wall -Wextra -Wstrict-prototypes
|
||||||
DEFS = -DUSE_SYS3 -DFREE_STANDING -DMHZ=48
|
DEFS = -DUSE_SYS3 -DFREE_STANDING -DMHZ=48
|
||||||
### DEFS = -DFREE_STANDING -DUSE_SYS3 -DBUSY_LOOP -DCHX_FLAGS_MAIN=CHOPSTX_SCHED_RR
|
### DEFS = -DFREE_STANDING -DUSE_SYS3 -DBUSY_LOOP -DCHX_FLAGS_MAIN=CHOPSTX_SCHED_RR
|
||||||
|
|||||||
@@ -70,6 +70,10 @@ gpio_init (void)
|
|||||||
{
|
{
|
||||||
/* Enable GPIO clock. */
|
/* Enable GPIO clock. */
|
||||||
RCC->AHB2ENR |= RCC_PHR_GPIO;
|
RCC->AHB2ENR |= RCC_PHR_GPIO;
|
||||||
|
/* Delay (more than two clocks) is needed. */
|
||||||
|
while ((RCC->AHB2ENR & RCC_PHR_GPIO) == 0)
|
||||||
|
;
|
||||||
|
|
||||||
RCC->AHB2RSTR = RCC_PHR_GPIO;
|
RCC->AHB2RSTR = RCC_PHR_GPIO;
|
||||||
RCC->AHB2RSTR = 0;
|
RCC->AHB2RSTR = 0;
|
||||||
|
|
||||||
@@ -82,11 +86,15 @@ gpio_init (void)
|
|||||||
GPIO_LED->OTYPER = VAL_GPIO_LED_OTYPER;
|
GPIO_LED->OTYPER = VAL_GPIO_LED_OTYPER;
|
||||||
GPIO_LED->MODER = VAL_GPIO_LED_MODER;
|
GPIO_LED->MODER = VAL_GPIO_LED_MODER;
|
||||||
GPIO_LED->PUPDR = VAL_GPIO_LED_PUPDR;
|
GPIO_LED->PUPDR = VAL_GPIO_LED_PUPDR;
|
||||||
|
GPIO_LED->AFRL = VAL_GPIO_LED_AFRL;
|
||||||
|
GPIO_LED->AFRH = VAL_GPIO_LED_AFRH;
|
||||||
|
|
||||||
#ifdef GPIO_OTHER_BASE
|
#ifdef GPIO_OTHER_BASE
|
||||||
GPIO_OTHER->OSPEEDR = VAL_GPIO_OTHER_OSPEEDR;
|
GPIO_OTHER->OSPEEDR = VAL_GPIO_OTHER_OSPEEDR;
|
||||||
GPIO_OTHER->OTYPER = VAL_GPIO_OTHER_OTYPER;
|
GPIO_OTHER->OTYPER = VAL_GPIO_OTHER_OTYPER;
|
||||||
GPIO_OTHER->MODER = VAL_GPIO_OTHER_MODER;
|
GPIO_OTHER->MODER = VAL_GPIO_OTHER_MODER;
|
||||||
GPIO_OTHER->PUPDR = VAL_GPIO_OTHER_PUPDR;
|
GPIO_OTHER->PUPDR = VAL_GPIO_OTHER_PUPDR;
|
||||||
|
GPIO_OTHER->AFRL = VAL_GPIO_OTHER_AFRL;
|
||||||
|
GPIO_OTHER->AFRH = VAL_GPIO_OTHER_AFRH;
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user