Hello,
I am currently working on an OBD2 scan tool for monitoring my cars functions. Overall it is working well, but I am having difficulty with converting user input to usable data.
I have a 2.8" TFT touch screen. On one of the menus, I have a small keyboard in which the user can input what command they want to send to the CAN BUS. for example, the command for transmission temperature is "0x7E1,0x02,0x01,0x3f" I have it set up so that the user types in the command in hex, then my code puts it into a char array.
So, for the command above, the user would type it in, and I would get a char array
char command[8]= {7,e,1,0,2,0,1,3,f}
This is where I get stuck. I then want to use my function sendPID(short, char, char, char). If I were to call this function manually, it would look like this:
sendPid(0x7e1,0x02,0x01,0x3f);//Send and Recieve PID
However, I want to use my char array (command[8]) to call the function. I am looking to do something like this:
char header=command[0]+command[1]+command[2]
char numBytes=command[3]+command[4]
char Mode=command[5]+command[6]
char PID=command[7]+command[7]
So the final function call would be:
sendPID(header,numBytes,Mode,PID) which is the equivalent of sendPid(0x7e1,0x02,0x01,0x3f);
I am not sure how to do this. Is there a simple way to take parts of a char array and construct a short or char?
Thanks in advance.