hi, im quite new to c++ when i try to run my code it gives me
the error: expected primary-expression before ';' token
in line 24.
can someone tell me what i did wrong?
code:
void glcd_Device::GotoXY(uint8_t x, uint8_t y)
{
uint8_t chip, cmd;
if((x == this->Coord.x) && (y == this->Coord.y))
return;
if( (x > DISPLAY_WIDTH-1) || (y > DISPLAY_HEIGHT-1) ) // exit if coordinates are not legal
{
return;
}
this->Coord.x = x; // save new coordinates
this->Coord.y = y;
chip = glcdDev_XYval2Chip(x, y);
#ifdef LCD_SET_XYADD
this->Coord.chip[chip].page = glcdDev_Yval2ChipPage(y);
cmd = (LCD_SET_XYADD | glcdDev_XYval2XYaddr(x,y));
this->WriteCommand(cmd, chip);
#else
if(y/8 != this->Coord.chip[chip].page)
{
this->Coord.chip[chip].page = y/8;
cmd = LCD_SET_PAGE | this->Coord.chip[chip].page;
this->WriteCommand(cmd, chip);
}
/*
- NOTE: For now, the "if" below is intentionally commented out.
- In order for this to work, the code must properly track
- the x coordinate of the chips and not allow it go beyond proper
- boundaries. It isnn't complicated to do, it just isn't done that
- way right now. We currently allow the coordinates to be larger than
- the actual geometry and just ignore them. This allows things like
- graphic functions to plot things larger than the display but display
- those portions that land within the diplays geometry.
*/
x = glcdDev_Xval2ChipCol(x);
#ifdef GLCD_XCOL_SUPPORT
if(x != this->Coord.chip[chip].col)
#endif
{
#ifdef GLCD_XCOL_SUPPORT
this->Coord.chip[chip].col = x;
#endif
#ifdef LCD_SET_ADDLO
cmd = LCD_SET_ADDLO | glcdDev_Col2addrlo(x);
this->WriteCommand(cmd, chip);
cmd = LCD_SET_ADDHI | glcdDev_Col2addrhi(x);
this->WriteCommand(cmd, chip);
#else
cmd = LCD_SET_ADD | x;
this->WriteCommand(cmd, chip);
#endif
}
#endif // LCD_SET_XYADD
}
thanks in advance.