Re: Data Transfer using CAN (Controller Area Network)
by ww (Archbishop) on Nov 19, 2010 at 14:01 UTC
|
You need two CANs, a long, taut string, and a partner at the other end to receive and send data. | [reply] |
|
|
| [reply] |
|
|
| |
|
|
|
|
Re: Data Transfer using CAN (Controller Area Network)
by Anonymous Monk on Nov 19, 2010 at 12:55 UTC
|
CAN is a bus, you need specific hardware/drivers to talk CAN. | [reply] |
A reply falls below the community's threshold of quality. You may see it by logging in. |
Re: Data Transfer using CAN (Controller Area Network)
by BrimBorium (Friar) on Nov 10, 2011 at 20:54 UTC
|
just for completeness ... there was an open source CAN tool published which can be accessed via COM interface and supports several hardware interfaces. see http://rbei-etas.github.com/busmaster/
do what you love, love what you do
| [reply] |
Re: Data Transfer using CAN (Controller Area Network)
by BrimBorium (Friar) on Nov 20, 2010 at 23:44 UTC
|
I did not find any perl module some time ago when I looked for ... It will also depend on the CAN hardware you want to use. Usually you get some drivers and C libraries with the hardware which you can use to build your own module. I would suggest to do the event handling in C and just some send and receive function in perl, using XS. To publish this on CPAN would be a good answer to your question :o)
| [reply] |
|
|
| [reply] |
|
|
Ok, so you do not necessarily want to access your CAN device directly. Accessing CANoe would be sufficient for you. If you would have told that in your question earlier you could avoid a lot of confusion.
Accessing CANoe works via Win32::OLE, read the documentation of CANoe COM server and check the VB exampe to access environment variables.
I would create a CAPL node wich communicates with your perl script via CANoe environment variables. So if you click the button you would set an environment vaiable wich triggers the CAPL node to send a CAN message. That way you can even get data from CAN back to perl. It just depends on you interface design.
Show your solution and I'll comment it.
| [reply] |
|
|
|
|
Am having both the CAN controller and CAN tranceiver. Now I am sending the data using the IG block in the CANoe. Instead of that I would like to send an data only if a button is pressed. I can make a button using a Tk. To interface the button action to send an data to the another node I need your help. All the CAN communication is already there. For testing purpose we are sending an data through IG block. I am trying to change that part by a button.
This makes no sense at all.
If you can make a button, and you can make it do something, and you can send the data using the IG block in the CANoe, whatever that is, why can't you send the data on button press?
| [reply] |