stm32f4 - discovery - Использование компилятора armcc и установка путей включения

Итак, я пытаюсь создать себе программу, которая будет компилировать весь мой код и прочее в Windows с помощью gcc. (чтобы использовать его с визуальной студией).

это пошло довольно хорошо до сих пор, когда у меня есть include. проблема в том, что он не может найти файл .H, так как он находится в другом каталоге. но даже если я добавлю -Idir[PATH1,PATH2,PATH3], он все равно не найдет его.

это моя программа, которую я пытаюсь скомпилировать

#include <stm32f10x.h>                      /* STM32F103 definitions         */

/*----------------------------------------------------------------------------
  wait function
 *----------------------------------------------------------------------------*/
void wait (void)  {
  int  d;

  for (d = 0; d < 2000000; d++);             /* only to delay for LED flashes */
}


/*----------------------------------------------------------------------------
  Main Program
 *----------------------------------------------------------------------------*/
int main (void) {
  unsigned int i;                            /* LED variable                  */

  RCC->APB2ENR |= (1UL << 3);                /* Enable GPIOB clock            */

  GPIOB->CRH    =  0x33333333;               /* PB.8..16 defined as Outputs   */

  while (1)  {                               /* Loop forever                  */
    for (i = 1<<8; i < 1<<15; i <<= 1) {     /* Blink LED 0,1,2,3,4,5,6       */
      GPIOB->BSRR = i;                       /* Turn LED on                   */
      wait ();                               /* call wait function            */
      GPIOB->BRR = i;                        /* Turn LED off                  */
    }
    for (i = 1<<15; i > 1<<8; i >>=1 ) {     /* Blink LED 7,6,5,4,3,2,1       */
      GPIOB->BSRR = i;                       /* Turn LED on                   */
      wait ();                               /* call wait function            */
      GPIOB->BRR = i;                        /* Turn LED off                  */
    }
  }
}

и это мои параметры компилятора armcc. -

C:/Keil/ARM/ARMCC/bin/armcc.exe -c --dwarf2 --MD -O0 --cpu=cortex-m4 -Idir[,C:/Keil/ARM/INC/,C:/Keil/ ARM/CMSIS/Include/,C:/Keil/ARM/INC/ST/STM32F10x/] -Jdir[,C:/Keil/ARM/INC/,C:/Keil/ARM/CMSIS/Include/,C:/ Keil/ARM/INC/ST/STM32F10x/] Blinky.c

и ошибка, которую я получаю: Ошибка 5: Невозможно открыть входной файл с исходным кодом "stm32f10x.h" Нет такого файла или каталога #include /* определения STM32F103 */

Почему я получаю эту ошибку, даже если я включаю пути? Я действительно правильно включил свои пути? любые точки, информация или что-нибудь более чем приветствуется!


person Tordin    schedule 11.10.2012    source источник


Ответы (1)


Согласно моему прочтению документации Keil для параметра -I , ваша командная строка должна выглядеть примерно так:

 C:/Keil/ARM/ARMCC/bin/armcc.exe -c --dwarf2 --MD -O0 --cpu=cortex-m4 -IC:/Keil/ARM/INC/,C:/Keil/ARM/CMSIS/Include/,C:/Keil/ARM/INC/ST/STM32F10x/ -JC:/Keil/ARM/INC/,C:/Keil/ARM/CMSIS/Include/,C:/Keil/ARM/INC/ST/STM32F10x/ Blinky.c
person Ben Gartner    schedule 15.10.2012