2012-10-11 2 views
1

Donc, j'essaie de me construire un programme qui compilera tout mon code et tout ce qui se trouve dans Windows avec gcc. (pour l'utiliser avec Visual Studio).stm32f4 - découverte - Utiliser le compilateur et le paramétrage d'armcc pour inclure des chemins

il est allé assez bien jusqu'à présent, quand j'ai un include. le problème est qu'il ne peut pas trouver le fichier .H car il est dans un autre répertoire. mais même si j'ajoute le -Idir [PATH1, PATH2, PATH3] il le trouve toujours.

ceci est mon programme Im essayant de compiler

#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     */ 
    } 
    } 
} 

ce qui est mes options du compilateur armcc. -

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

et l'erreur que je reçois est: erreur 5: Impossible fichier d'entrée open source "stm32f10x.h" Aucun fichier ou répertoire #include/* STM32F103 définitions */

Pourquoi est-ce que j'obtiens cette erreur même si j'inclus les chemins? Ai-je inclus mes pahts correctement? des points, des informations ou quoi que ce soit est plus que bienvenu!

Répondre

1

Selon ma lecture du Keil documentation pour l'option -I, votre ligne de commande devrait ressembler à ceci:

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 
Questions connexes