Відповісти

Введіть повідомлення і натисніть Надіслати
Параметри

Назад

Огляд теми (нові повідомленні вгорі)

Nexter
2022-08-29 12:28:17

Дякую! Буду пробувати, така думка була але, тепер потрібно переробити концепцію! Потім напишу

Honey
2022-08-29 09:00:39

Зробіть не запит-відповідь індивідуально для кожного пристрою, а відправку всіх запитів одразу, а потім по надходженню відповідей обробляйте їх на протязі лімітованого проміжку часу.

Nexter
2022-08-28 21:55:32

Доброго дня!
Зробив пристрій CAN bus mcp2515 задачя його по шині САN робити опрос 16 промислових пристроїв по 10 параметрів, взяв
бібліотеку MCP_CAN_lib https://github.com/autowp/arduino-mcp2515 все працює!
Але після функції відправки потрібно команда delay(20) , якщо робиш меньше робить некоректно, або висне!
Якщо порахувати циклічність -  то 16 пристроїв 10 параметрів 20мс то виходить 16*10*0.02=3.2сек. для мене це дуже повильно!
можливо хтось робив щось подібне!



  byte sndStat = CAN0.sendMsgBuf(0x600 + Adress, 0, 4, txCANBuf);
  if (sndStat == CAN_OK)
{

   
    delay(20);   // send data per 20ms
   
    //rxId = 0;
    t = 0;
    while (1) {
      if (CAN_RX == 1)                     
      {
        CAN_RX = 0;
        CAN0.readMsgBuf(&rxId, &len, rxBuf);     
}
  }

Підвал форуму