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

Another MCBSTM32E board/software problem

Hi,

newbie getting a little tired of ARM and this hardware/software thing...

Using uVision4 with the MCBSTM32E board with a STM32F103ZE processor.

Besides the startup problem if I download some other example (RTX_Blinky) from the installation Cd-rom then the onboard color display shows the text as MIRRORED text! As if one is reading from the backside of the display.

Where are the experts? ;-)

B.t.w. I'm using Windows7.

Henk

  • Maybe soon time to contact Keil support. Their hw designs is normally good, but sometimes the factory testing is not stellar.

  • The thing is that different displays are put on the boards then ones that were initially produced, so the examples were not yet updated.

    You can look for reference at LCB_Blinky example for MCBSTM32C board in folder: \ARM\Boards\Keil\MCBSTM32C\LCD_Blinky\ you can look at file GLCD_SPI_STM32.c
    routine

    void GLCD_Init (void)
    

    has support for both LCD displays old and new and you can analyze it to change init routine to fit new display on MCBSTM32E board.

  • Hi,

    Thanks All! My thrust in Keil Hardware/Software is back!

    I opened both projects (A)Blinky and (B)RTX_Blinky.

    (A) contains a driver file: GLCD_16bitIF_STM32.c
    (B) contains a driver file: GLCD.c

    I copied the contents of (A) into (B). Rebuild, download and the display runs normal.

    Thanks to all.

  • But the big question is: What documentation did you get with the board?

    Since it is a development board and the same company ships sample code for it, your board should have had some documentation about hw revision and how you must take this into account when developing for it or when running the sample applications.

    QA is not just electrically working hardware. It also includes that the hardware does what the documentation says.

  • Hi,

    we've got exactly the same problem here - mirrored GLCD output on an STM3210E-SK -, but unfortunately, your solution doesn't apply because there are different files and projects in our MCBSTM32E examples folder. Even worse, I cannot find any documentation on the control registers and configuration of the display (MB895?) mounted on the board. The documentation and software that comes with the kit really seems a bit poor here?

    Can anyone clearly describe the fix? Maybe one just has to change some of the "write direction" control bits?

    Cheers
    Dan

  • "we've got exactly (sic) the same problem here - mirrored GLCD output on an STM3210E-SK -, but unfortunately, your solution doesn't apply because there are different files and projects in our MCBSTM32E examples folder"

    The MCBSTM32E is a different product from a different manufacturer, so you shouldn't expect its examples to work on an STM3210E-SK - should you?

  • The board at hand is a KEIL STM3210E-SK. The directory "Keil\ARM\Boards\Keil" lists a lot of board-specific example subdirs ranging from the MCB1000 to the MCBZ32AN. The best match I saw was the example directory MCBSTM32E (both in terms of peripherals and MCU/SK name), and indeed, the example code works pretty well (LEDs, ADC/POT1, GLCD).

    That is, I agree to all you say, but the example code I mentioned was the best hit so far: It works perfectly except for the mirroring issue. That, and the code clearly shows that there are things like direction flags for the GLCD. So I allow myself some hope that this is a point to start from. At least it's the best I know as of now. In fact, given a proper datasheet for the GLCD, I bet the issue would be trivial to fix.

  • All the Keil boards listed on the products page have names beginning "MCB..." - there is nothing listed as "STM3210E-SK"

    http://www.keil.com/boards/

    The only STM32-based boards appear to be MCBSTM32, MCBSTM32E, and MCBSTM32C:

    http://www.keil.com/boards/cortexm.asp

    Does "STM3210E-SK" refer to the starter kit consisting of the MCBSTM32E board plus uLink and Eval software?

    http://www.keil.com/mcbstm32e/starterkit.asp

    If it is a genuine Keil product, you should be able to contact Keil support direct...

  • Andy -

    excuse the confusion, but all the things I have in front of me - the order, the invoice, and the actual box - sport exactly that name, "STM3210E-SK".

    You are absolutely correct that the starter kit and the board are two different things. The board itself is an official, genuine KEIL product (quote: "STMicroelectronics offers Keil's evaluation boards (single-board computers) to help you get started with the Keil development tools"). The starter kit, however, is actually an ST product involving a KEIL eval board. Amen. And yes, the eval board itself really seems to be the MCBSTM32E. I guess this is just an ST rewrap of the MCBSTM32E Starter Kit you referred to?

    Either way, all this nomenclature war doesn't help. I'm already working with the MCBSTM32E examples. I already know they fit the board except for the mirror effect. Hence, there is nothing to learn from the above discussion. All I'm trying to figure out is how to flip the output horizontally, or more fundamentally, where to get a proper data sheet for the LCD that explains the control registers.

    Cheers
    Dan

  • Yes, sorry - just trying to understand exactly what it is that you have!

    Shame we can't upload photos to this site...

    Have you tried searching the ST forum?
    I'm sure there's been discussion there about reversed graphics on DevKits...

  • I really have no answer for your problem but the LCD is the Ampire AM240320L8TNQW. I gooogled a couple of websites that said they have the data sheets but I found no user's guide.
    Good luck and keep us informed on your progress.
    Bradford

  • Please install the latest MDK v4.13 as examples have been updated for both older and newer displays and you should not have mirrored problems.

  • Thanks Al! There seems to be a sufficient datasheet on the web (www.google.com/search - check the hit at http://www.dema.net). Interestingly enough, this datasheet contains a preliminary stating that the document is confidential and may not be disclosed to third parties, so it's surprising to find it on a public product page in a freely accessible web shop (rather than in the starter kit box including the super-secret LCD hardware).

    Anyway. At a first glance, the registers and command bytes listed in the datasheet seem to match the GLCD code, so this seems to be a good point to start from. Thanks again!

    Cheers
    Dan

  • Hi all,

    problem solved. Here's how:

    As I learnt from the LCD datasheet, the display controller is an ILI9320. Datatsheets for that one are easy to find on the web. So I cross-checked the register values in the GLCD_init() function with the list from the datasheet.

    There is a GS bit ("gate scan [direction]"?) in register 0x60 ("driver output control 2"). It was set to 0 by the init code ("wr_reg(0x60, 0x2700);"). By flipping it to 1 ("wr_reg(0x60, 0xA700);"), the display got flipped as well - along the axis intended, fortunately. :)

    Thanks everyone, this helped!
    Dan