I'm learning mcu programming using ARM Microcontrollers: Programming and Circuit Building Volume 1 book by Patrick Hood-Daniel and I stuck on Chapter 17 "Add the LCD to the Circuit". I've connected to the target sucessfully, built and run the code to display "Hello World" but there's only one black boxes row on LCD. Other similar questions on the web are about Arduino only so I didn't find solution and I can't figure out the issue.
Here's my part of the code with pins and ports:
#define LCDD0Pin 15
#define LCDD0Port GPIOB
#define LCDD1Pin 8
#define LCDD1Port GPIOA
#define LCDD2Pin 9
#define LCDD2Port GPIOA
#define LCDD3Pin 10
#define LCDD3Port GPIOA
#define LCDD4Pin 11
#define LCDD4Port GPIOA
#define LCDD5Pin 12
#define LCDD5Port GPIOA
#define LCDD6Pin 15
#define LCDD6Port GPIOA
#define LCDD7Pin 3
#define LCDD7Port GPIOB
#define LCDEnablePin 14
#define LCDEnablePort GPIOB
#define LCDReadWritePin 13
#define LCDReadWritePort GPIOB
#define LCDRegisterSelectPin 12
#define LCDRegisterSelectPort GPIOB
#define TimeDelayBeforeEnable 4
#define TimeDelayBeforeDisable 8