I have a problem with lcd, I have NUCLEO64 L746RG , I have Lcd Display and I2C connected to it. When I verify code it gives me and long error and I can not find the solution or cause of this error:
In file included from C:\Users\User\AppData\Local\Arduino15\packages\STMicroelectronics\hardware\stm32\2.4.0\system/Drivers/CMSIS/Device/ST/STM32L4xx/Include/stm32l4xx.h:149,
from C:\Users\User\AppData\Local\Arduino15\packages\STMicroelectronics\hardware\stm32\2.4.0\cores\arduino/stm32/stm32_def.h:48,
from C:\Users\User\AppData\Local\Arduino15\packages\STMicroelectronics\hardware\stm32\2.4.0\cores\arduino/stm32/clock.h:19,
from C:\Users\User\AppData\Local\Arduino15\packages\STMicroelectronics\hardware\stm32\2.4.0\cores\arduino/wiring_time.h:23,
from C:\Users\User\AppData\Local\Arduino15\packages\STMicroelectronics\hardware\stm32\2.4.0\cores\arduino/wiring.h:38,
from C:\Users\User\AppData\Local\Arduino15\packages\STMicroelectronics\hardware\stm32\2.4.0\cores\arduino/Arduino.h:36,
from C:\Users\User\AppData\Local\Temp\arduino-sketch-B028C48DF91C28F6EAA5B0CE34D27EE2\sketch\Displaylcd1.ino.cpp:1:
C:\Users\User\AppData\Local\Arduino15\packages\STMicroelectronics\hardware\stm32\2.4.0\system/Drivers/CMSIS/Device/ST/STM32L4xx/Include/stm32l476xx.h:1326:29: error: expected identifier before '(' token
1326 | #define LCD ((LCD_TypeDef *) LCD_BASE)
| ^
c:\Users\User\Documents\Arduino\libraries\LiquidCrystal/LCD.h:169:7: note: in expansion of macro 'LCD'
169 | class LCD : public Print
| ^~~
C:\Users\User\AppData\Local\Arduino15\packages\STMicroelectronics\hardware\stm32\2.4.0\system/Drivers/CMSIS/Device/ST/STM32L4xx/Include/stm32l476xx.h:1326:43: error: expected ')' before '*' token
1326 | #define LCD ((LCD_TypeDef *) LCD_BASE)
| ~ ^
c:\Users\User\Documents\Arduino\libraries\LiquidCrystal/LCD.h:169:7: note: in expansion of macro 'LCD'
169 | class LCD : public Print
| ^~~
C:\Users\User\AppData\Local\Arduino15\packages\STMicroelectronics\hardware\stm32\2.4.0\system/Drivers/CMSIS/Device/ST/STM32L4xx/Include/stm32l476xx.h:1326:43: error: expected ')' before '*' token
1326 | #define LCD ((LCD_TypeDef *) LCD_BASE)
| ~ ^
c:\Users\User\Documents\Arduino\libraries\LiquidCrystal/LCD.h:169:7: note: in expansion of macro 'LCD'
169 | class LCD : public Print
| ^~~
C:\Users\User\AppData\Local\Arduino15\packages\STMicroelectronics\hardware\stm32\2.4.0\system/Drivers/CMSIS/Device/ST/STM32L4xx/Include/stm32l476xx.h:1326:29: error: expected class-name before '(' token
1326 | #define LCD ((LCD_TypeDef *) LCD_BASE)
| ^
c:\Users\User\Documents\Arduino\libraries\LiquidCrystal/LiquidCrystal_I2C.h:38:34: note: in expansion of macro 'LCD'
38 | class LiquidCrystal_I2C : public LCD
| ^~~
C:\Users\User\AppData\Local\Arduino15\packages\STMicroelectronics\hardware\stm32\2.4.0\system/Drivers/CMSIS/Device/ST/STM32L4xx/Include/stm32l476xx.h:1326:29: error: expected '{' before '(' token
1326 | #define LCD ((LCD_TypeDef *) LCD_BASE)
| ^
c:\Users\User\Documents\Arduino\libraries\LiquidCrystal/LiquidCrystal_I2C.h:38:34: note: in expansion of macro 'LCD'
38 | class LiquidCrystal_I2C : public LCD
| ^~~
C:\Users\User\AppData\Local\Arduino15\packages\STMicroelectronics\hardware\stm32\2.4.0\system/Drivers/CMSIS/Device/ST/STM32L4xx/Include/stm32l476xx.h:1326:43: error: expected ')' before '*' token
1326 | #define LCD ((LCD_TypeDef *) LCD_BASE)
| ~ ^
c:\Users\User\Documents\Arduino\libraries\LiquidCrystal/LiquidCrystal_I2C.h:38:34: note: in expansion of macro 'LCD'
38 | class LiquidCrystal_I2C : public LCD
| ^~~
C:\Users\User\AppData\Local\Arduino15\packages\STMicroelectronics\hardware\stm32\2.4.0\system/Drivers/CMSIS/Device/ST/STM32L4xx/Include/stm32l476xx.h:1326:43: error: expected ')' before '*' token
1326 | #define LCD ((LCD_TypeDef *) LCD_BASE)
| ~ ^
c:\Users\User\Documents\Arduino\libraries\LiquidCrystal/LiquidCrystal_I2C.h:38:34: note: in expansion of macro 'LCD'
38 | class LiquidCrystal_I2C : public LCD
| ^~~
C:\Users\User\Documents\Arduino\Displaylcd1\Displaylcd1.ino:2:22: error: variable 'LiquidCrystal_I2C lcd' has initializer but incomplete type
2 | LiquidCrystal_I2C lcd(0x27,16,2); /*I2C scanned address defined + I2C screen size*/
| ^
Multiple libraries were found for "LiquidCrystal_I2C.h"
Used: C:\Users\User\Documents\Arduino\libraries\LiquidCrystal
Not used: C:\Users\User\Documents\Arduino\libraries\LiquidCrystal_I2C
exit status 1
Compilation error: variable 'LiquidCrystal_I2C lcd' has initializer but incomplete type
This is my code:
#include <LiquidCrystal_I2C.h> /*include LCD I2C Library*/
LiquidCrystal_I2C lcd(0x27,16,2); /*I2C scanned address defined + I2C screen size*/
void setup() {
lcd.init(); /*LCD display initialized*/
lcd.clear(); /*Clear LCD Display*/
lcd.backlight(); /*Turn ON LCD Backlight*/
lcd.setCursor(2,0); /*Set cursor to Row 1*/
lcd.print("I2C LCD Nano"); /*print text on LCD*/
lcd.setCursor(2,1); /*set cursor on row 2*/
lcd.print("Linuxhint.com"); /*print message on LCD*/
}
void loop() {
}
I do not know why, I am not including anything else so why is it giving me this error?
PLEASE HELP, I AM WORKING ON IT for 8 hours AN I STILL COULD NOT FIGURE OUT WHAT IS THE PROBLEM, PLease help