Цитата:
Сообщение от T_r_D
Какой программой можно анализировать траффик с ком порта?
А то эта угадайка на долго.
|
А это как повезёт, по работе приходится искать в протоколах в основном скорость и уровень топлива, иногда на это уходит часов шесть, а иногда 5 минут.
Я сделал себе программу для анализа протокола, протокол формирует этот скетч.
Код:
#include <mcp_can.h>
#include <SPI.h>
INT32U canId = 0x000;
unsigned char len = 0;
unsigned char buf[8];
char str[20];
int count = 0;
MCP_CAN CAN0(10);
void setup()
{
Serial.begin(38400);
while(!Serial){}
START_INIT:
if(CAN0.begin(CAN_500KBPS) == CAN_OK)
{
Serial.println("CAN BUS Shield init ok!");
}
else
{
Serial.println("CAN BUS Shield init fail");
Serial.println("Init CAN BUS Shield again");
delay(100);
goto START_INIT;
}
pinMode(18, INPUT);
}
void loop()
{
if(!digitalRead(18))
{
CAN0.readMsgBuf(&len, buf);
canId = CAN0.getCanId();
Serial.print("<");Serial.print(canId);Serial.print(",");
for(int i = 0; i<len; i++)
{
Serial.print(buf[i]);Serial.print(",");
}
Serial.print(">");
Serial.println();
}
}
Так что можешь сделать файл этим скетчем, отправь мне, а я посмотрю.
Только для того что бы найти обороты надо сделать следующее:
Подключить шилд к машине, запустить монитор ком порта, включить зажигание секунд на пять, потом завести машину, потом медленно давить на газ что бы обороты плавно подымались, а потом также плавно опускать обороты до холостых. После этого глушим машину и сохраняем протокол. Вот тогда что бы найти обороты понадобится минут десять.
Для скорости почти тоже самое, только надо равномерно разогнать машину километров до 40 - 50-ти, а потом также спокойно остановиться.
Для уровня топлива нужны протоколы до и после заправок.