Что я сделал: все #define перенес в файл lcd_lib.h, а функции наоборот в файл lcd_lib.c. После этого сразу откомпилировалось и заработало.
С прошивкой имел дело первый раз, решил в готовом проекте перейти с параллельного интерфейса на аппаратный I2C с помощью переходника PCF8574 на дисплей 1602.
И хоть я в основном копипастил, для себя это считаю прогрессом
слева!