This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

ERROR L218E : how to solve it?

I am new to KEIL and start learning for an project. I have got the message error shown below : Error: L6218E: Undefined symbol ADC_RegularChannelConfig (referred from main_test_adc.o).

I searched about this error but I still don't know how to solve it. I am using uvision 4 and stm32f103rb processor and write a simple program using ADC.
Please help me if you encounter similar problem before. I really appreciate everyone's help. :)

Parents
  • Clearly it isn't, but you're not the OP either and he had a different linkage question.

    If you download one of the STM32F4 firmware libraries (DSP or Discovery, etc), you will find "template" projects for Keil

    The stm32f4xx_conf.h is normally resident in YOUR project directory, so you can modify it there. It is included via stm32f4xx.h when USE_STDPERIPH_DRIVER is defined within your project (preprocessor defines).

    The expectation for your project is that you also provide the compiler with a list of search paths for the include files, which will be something like
    .\..\
    .\..\..\..\Libraries\CMSIS\Include
    .\..\..\..\Libraries\CMSIS\Device\ST\STM32F4xx\Include
    .\..\..\..\Libraries\STM32F4xx_StdPeriph_Driver\inc
    .\..\..\..\Utilities\STM32F401-Discovery

    You really don't want the files Keil included unless you're building one of their Blinky examples from \ARM\Boards\ST type directories.

    If you need to localize the startup file, then you'd copy startup_stm32f4xx.s (or equivalent) into your own project directory.

Reply
  • Clearly it isn't, but you're not the OP either and he had a different linkage question.

    If you download one of the STM32F4 firmware libraries (DSP or Discovery, etc), you will find "template" projects for Keil

    The stm32f4xx_conf.h is normally resident in YOUR project directory, so you can modify it there. It is included via stm32f4xx.h when USE_STDPERIPH_DRIVER is defined within your project (preprocessor defines).

    The expectation for your project is that you also provide the compiler with a list of search paths for the include files, which will be something like
    .\..\
    .\..\..\..\Libraries\CMSIS\Include
    .\..\..\..\Libraries\CMSIS\Device\ST\STM32F4xx\Include
    .\..\..\..\Libraries\STM32F4xx_StdPeriph_Driver\inc
    .\..\..\..\Utilities\STM32F401-Discovery

    You really don't want the files Keil included unless you're building one of their Blinky examples from \ARM\Boards\ST type directories.

    If you need to localize the startup file, then you'd copy startup_stm32f4xx.s (or equivalent) into your own project directory.

Children
No data