STM32CubeMX FSMC Configuration
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2017-03-14 6:13 PM
I'm using a Nucleo-F413ZH board and an SSD1289 driver based LCD. I'm using the KEIL IDE.
I just wanted to confirm that I have setup my LCD and FSMC correctly. I have performed the following steps:
- Setup FSMC in STM32CubeMX (Chip Select: NE1, Memory Type: LCD Interface, LCD Register Select: A0, Data: 16 bits).
- Wired the LCD to the pins as indicated by STM32CubeMX:
- D0-D15 to FSMC D0-D15,
- LCD RS to FSMC_A0,
- LCD WR to FSMC_NWE,
- LCD RD to FSMC_NOE,
- LCD CS to FSMC_NE1
- LCD RST to a GPIO pin setup as GPIO Output (Pin State: Low, Mode: Output Push Pull, Pullup/Pulldown: None, Speed: Low)
- My main function calls the following (in order):
- HAL_Init()
- SystemClock_Config()
- MX_GPIO_Init()
- MX_FSMC_Init()
- Left the timings to the default values which are sufficiently high such that they shouldn't cause any problems - I'll tweak these once its working.
- I have setup my read/write data and write index functions, using the values:
- REG: 0x60000000
- RAM: 0x60020000
But I get just a white screen when trying to render to the LCD.
Can anyone please confirm whether I have setup the wiring and FSMC correctly, and f possible maybe even why I might be getting the white screen?
Thanks in advance!
#lcd #stm32f413 #fsmc #ssd1289Solved! Go to Solution.
- Labels:
-
FMC-FSMC
-
LCD-LTDC
-
STM32F4 Series
Accepted Solutions
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2017-03-15 3:07 AM
I don't Cube so don't quite know what are you talking about but wouldn't
- REG: 0x60000000
- RAM: 0x60020000
imply using
A17
A16 (because of the 16-bit data width) as address line, instead ofLCD RS to FSMC_A0,
?
JW
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2017-03-15 3:07 AM
I don't Cube so don't quite know what are you talking about but wouldn't
- REG: 0x60000000
- RAM: 0x60020000
imply using
A17
A16 (because of the 16-bit data width) as address line, instead ofLCD RS to FSMC_A0,
?
JW
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2017-03-16 6:33 AM
Thanks for your reply, you were correct. I'll be honest I don't understand the addresses and registers, but I've been looking for a guide on them.
