pvbrowser manual
Back Content Forward

Modbus

В "qt designer" Вы можете вводить свойства текста: tool_tip и whats_this. Эти свойства доступны из каждой маски и слота. Допустим, Вам требуется ввести следующие строки в свойство tool_tip в "qt designer".

 static const char *toolTip[] = {
 "",
 "",
 "Byte(0,0)",
 "Short(0,0)",
 "Bit(0,0)",
 "",
 ""};

Теперь Вы можете использовать этот слот для чтения значений Modbus. Вам не нужно программировать вручную простейшие визуализации. Всё уже определено в "qt designer". Когда Вы помещаете курсор над объектами в клиенте pvbrowser, подсказка (toolTip) будет показана в маленьком выпадающем окне.

static int slotNullEvent(PARAM *p, DATA *d)
{
  if(p == NULL || d == NULL) return -1;
  int val,offset,number;

  for(int id=1; id<ID_END_OF_WIDGETS; id++)
  {
    if     (strncmp(toolTip[id],"Bit(",4)==0)
    {
      sscanf(toolTip[id],"Bit(%d,%d)",&offset,&number);
      val = modbus.readBit(offset,number);
      pvPrintf(p,id,"%d",val);
    }
    else if(strncmp(toolTip[id],"Byte(",5)==0)
    {
      sscanf(toolTip[id],"Byte(%d,%d)",&offset,&number);
      val = modbus.readByte(offset,number);
      pvPrintf(p,id,"%d",val);
    }
    else if(strncmp(toolTip[id],"Short(",6)==0)
    {
      sscanf(toolTip[id],"Short(%d,%d)",&offset,&number);
      val = modbus.readShort(offset,number);
      pvPrintf(p,id,"%d",val);
    }
  }
  return 0;
}

Back Content Forward