Automotive “Single-Wire CAN” and PICAXE

Sno White

New Member
Can PICAXE handle the data from a 33.33 kbps CAN Transceiver chip such as the Freescale MC33897 for Bus monitoring purposes only? That is to say there would be no transmissions initiated on the CAN Bus. This is just to monitor and glean information from the vehicle.

The Data Sheet can be found here:
http://www.freescale.com/files/analog/doc/data_sheet/MC33897.pdf

I’ve searched for “CAN” on this forum, but found very little.
 

MFB

Senior Member
In principle, if you use a dedicated chip to handle the physical and protocol tasks associated with running a bus almost any microcontroller serial port will be able to interface with full/single-wire CAN. I have even seen such adaptor chips interfaced to a PC printer port with a bit-banged driver.

If you don’t need 1Mbps operation, take a look at the LIN specification. This slower single wire bus is a lot less complex than CAN.
 

hippy

Ex-Staff (retired)
If the raw CAN protocol were RS232-style it would be easy, but I don't think it is. The PICAXE's themselves do not contain CAN transmitters or receivers. There are I2C/SPI to CAN converters which could be used.
 

Sno White

New Member
I do need to "look" at an existing Single-Wire CAN, so the LIN idea is out. The IC I called out is one of a half dozen that can do the job.

I guess my first question is: can the PICAXE handle the 33.33 kbps data rate from the CAN Transceiver?

There are chips that interface between the CAN Transceiver and the Microprocessor(these days there are microprocessors with CAN interface built in) – I am just trying to get along without using the extra chip with the PICAXE. Since I will only be “listening” to what is happening on the Bus I was/am hoping to get away with this, but I do not know.
 

hippy

Ex-Staff (retired)
The transceiver chip you link to is really just an electrical buffer, making the signals the physical bus interface uses compatible with the micro or other decoder ( similar to using a MAX232 when connected to a PC's serial port ).

To handle the protocol, the actual data, you need something which can take that and turn it into something a PICAXE or other micro can understand and use. At 30us per bit, that's too fast for a PICAXE to bit-bang so it needs on-chip hardware to read the data and none of the current PICAXE chips have on-chip peripherals which implement the CAN protocol.

What you'll need is a transceiver chip plus another chip which will bridge the CAN protocol to something the PICAXE can understand; RS232-style serial, I2C or SPI.
 

papaof2

Senior Member
There are a couple of ways to interface to CAN - either a CAN to RS232 converter or a micro with built-in CAN interface. Have a look at these links:

CAN to RS232 converters
http://www.easysync-ltd.com/index.html?lang=en-uk&target=d20.html
($108US also CAN to USB $110US)

http://www.squarell.com/index.php?page=1_5&productId=18

http://www.cangine.com/en/products/no1/no1.html

http://www.dataloggerinc.com/selection-automotive.html#cangate

80C51 micro with CAN interface
http://vyuka.fel.zcu.cz/kae/upr/old-doc/8xc592.pdf

PIC 18F series micro with CAN interface ($10US)
http://microcontrollershop.com/product_info.php?products_id=1040&osCsid=824ab9cc345fbaaf15fda9a9ccabcd7c

John
 
Top