cancel
Showing results for 
Search instead for 
Did you mean: 

STM3210E-Eval LCD Init is nor working

rava
Associate II
Posted on March 18, 2014 at 12:49

Hi everyone,

I have just opened my STM3210E-Eval and created the default program for it using Atollic.

The program is only supposed to initialize the LCD and show 6 messages on white text over blue background. Also to Turn on the 4 LEDs.

After testing some code changes I realized that the function  STM3210E_LCD_Init();

seens to be not working and the LCD stays at white.

The programming is ok because I can turn on/off the LEDs without problems.

Any one has an idea of what is happening? Any change that the libraries does not reflect?

Thanks

7 REPLIES 7
Posted on March 18, 2014 at 14:57

ST normally builds their demo software with IAR/EWARM

I'd suggest you build some of the other examples in the F1 firmware libraries (either v3.5.0, or earlier releases), and evaluate if those work properly.
Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..
rava
Associate II
Posted on March 18, 2014 at 15:44

Hi Clive1,

The problems is that in the F1 peripheral library there is not an example using LCD. The rest of tools apart the LCD seem to work properly.

Do you know some example I could use it?

Thanks

Posted on March 18, 2014 at 17:07

STM32F10x_StdPeriph_Lib_V3.5.0\Utilities\STM32_EVAL\STM3210E_EVAL\stm3210e_eval_lcd.c

STM32F10x_StdPeriph_Lib_V3.5.0\Project\STM32F10x_StdPeriph_Examples\FLASH\Dual_Boot\main.c

STM32F10x_StdPeriph_Lib_V3.5.0\Project\STM32F10x_StdPeriph_Examples\I2C\EEPROM\main.c

STM32F10x_StdPeriph_Lib_V3.5.0\Project\STM32F10x_StdPeriph_Examples\I2C\I2C_TSENSOR\main.c

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..
rava
Associate II
Posted on March 19, 2014 at 14:09

thanks,

I have just tested the I2C_TSENSOR example and I have the same problem, no building or programming problems, but the LCD is still in white.

Maybe it has to do with the tool chain? I am using Atollic 4.3.1, and I create the project using the wizard which makes the project specific for the STM3210E-Eval board.

I realised that these new version creates a startup_stm32f10x_hd.s in the src folder. Also from previous the STM32_EVAL folder changes some files, dissapearing stm32eval.h and changing to stm3210e_eval.

Also Lcd_log.c and lcd_log.h files appears.

I can not come back to previous version of ATOLLIC but with them the same programs were working on the LCD.

Any clue?

Thanks again.

Posted on March 19, 2014 at 15:17

I'm not an Atollic user, you will need to seek support from them with regard to their product. When I need to use GNU/GCC I use Yagarto. For most everything else I use Keil or RealView.

You could perhaps try turning optimization off, and see if it's timing/sequencing related

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..
rava
Associate II
Posted on April 03, 2014 at 14:32

Hi,

I think I have solved part of the problem but not all.

Atollic IDE is using the version  V5.0.1 for the STM3210x- Evaluation boards, but ST has updated the utilities firmware for these evaluation boards (

V5.1.0 from 18/01/2013).

 I have used the ST demo firmware for the Evaluation board and the LCD is working properly.

However if I use the Atollic wizard for creating a project with the evaluation board the LCD is not working.

Trying to solve it, I have copied and pasted the files with the updated version for this Utilities  (typically they are in STM32_EVAL folder) and I have got not building errors for c. or .h files.

However I have still problems when .o files are created, it seems to be a multiple declaration of types related with the LCD fonts.  For the moment I am not able to find the duplicity. I have pasted below the console message in case any idea or previous experience with it.

Thanks a lot,

Utilities\STM32_EVAL\Common\fonts.o:(.rodata.ASCII16x24_Table+0x0): multiple definition of `ASCII16x24_Table'

Utilities\STM32_EVAL\STM3210E_EVAL\stm3210e_eval_lcd.o:(.rodata.ASCII16x24_Table+0x0): first defined here

Utilities\STM32_EVAL\Common\fonts.o:(.rodata.ASCII12x12_Table+0x0): multiple definition of `ASCII12x12_Table'

Utilities\STM32_EVAL\STM3210E_EVAL\stm3210e_eval_lcd.o:(.rodata.ASCII12x12_Table+0x0): first defined here

Utilities\STM32_EVAL\Common\fonts.o:(.rodata.ASCII8x12_Table+0x0): multiple definition of `ASCII8x12_Table'

Utilities\STM32_EVAL\STM3210E_EVAL\stm3210e_eval_lcd.o:(.rodata.ASCII8x12_Table+0x0): first defined here

Utilities\STM32_EVAL\Common\fonts.o:(.rodata.ASCII8x8_Table+0x0): multiple definition of `ASCII8x8_Table'

Utilities\STM32_EVAL\STM3210E_EVAL\stm3210e_eval_lcd.o:(.rodata.ASCII8x8_Table+0x0): first defined here

Utilities\STM32_EVAL\Common\fonts.o:(.data.Font16x24+0x0): multiple definition of `Font16x24'

Utilities\STM32_EVAL\STM3210E_EVAL\stm3210e_eval_lcd.o:(.data.Font16x24+0x0): first defined here

Utilities\STM32_EVAL\Common\fonts.o:(.data.Font12x12+0x0): multiple definition of `Font12x12'

Utilities\STM32_EVAL\STM3210E_EVAL\stm3210e_eval_lcd.o:(.data.Font12x12+0x0): first defined here

Utilities\STM32_EVAL\Common\fonts.o:(.data.Font8x12+0x0): multiple definition of `Font8x12'

Utilities\STM32_EVAL\STM3210E_EVAL\stm3210e_eval_lcd.o:(.data.Font8x12+0x0): first defined here

Utilities\STM32_EVAL\Common\fonts.o:(.data.Font8x8+0x0): multiple definition of `Font8x8'

Utilities\STM32_EVAL\STM3210E_EVAL\stm3210e_eval_lcd.o:(.data.Font8x8+0x0): first defined here

collect2.exe: error: ld returned 1 exit status

rava
Associate II
Posted on April 04, 2014 at 09:32

Hi everyone,

I think I have solved it, as you said, it was a C-code problem,  the contents of fonts.c or fonts.h were duplicated in somewhere.

To solve the problem:

 -It is needed to update '' stm3210e_eval_lcd.c'' and ''stm3210e_eval_lcd.h'' files with the V5.1.0 version, in order to make the evaluation board LCD working.

-To avoid the problem with the multiple definitions for fonts types, just comment the line 33 in ''stm3210e_eval_lcd.c'':

#include ''../Common/fonts.c

I do not know where but it seems that the wizard already includes this file, and during the building it will do a error.

Anyway, thank you for your help.