This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

TM4C123 CAN module

Other Parts Discussed in Thread: ISO1050

hi,

is it possible to use the both CAN interface (CAN0 and CAN1) simultaneous to transmit and receive. What are the special configuration to do it? What is the consequence with FIFO buffer, RAM?

thanks

yoann

  • Hello Yoann,

    Do you mean one CAN transmitting and other CAN receiving on two different buses? The topology needs to be very clear.

    Please note that CAN bus is a shared bus, with detection of Arbitration.

    Regards

    Amit

  • hi,

    No,

    CAN0 transmitting and Receiving

    AND

    CAN1 transmitting and receiving

    is it someone do that?

     

  • Hello Le,

    The CAN0 or CAN1 can be transmitting a CAN message and receiving the same. But if another CAN Master is sending a message which causes collision on the bus then the CAN controller will back off with error and then re-try.

    Regards

    Amit

  • @Amit,

    I think the poster wish to cross-link the pins of the two modules, which is an absolutely NO.

    Petrei

  • hardware side, i use each CAN channel with a CAN transceiver TJA1050

    software side, i imagine to manage messages but i don't know how data is managed in fifo buffer, memory space and configuration register CAN.

    code example will be appreciated (to configure register and memory.

    thanks.

    yoann

  • Hello Le,

    You can refer to the example code in for a single CAN Instance.

    C:\ti\TivaWare_C_Series-2.1.0.12573\examples\peripherals\can

    As Petrei mentioned, the pins cannot be crossed on the device. It can be done only at the Transceiver output in form of a single bus/

    Regards

    Amit

  • le beller yoann said:

    CAN0 transmitting and Receiving

    AND

    CAN1 transmitting and receiving

    is it someone do that?

     I am using both CAN channel (on two separate bus) to increase response time and have a balanced symmetric and know timing. If you don't use two separate bus this is a nonsense generating a lot of collision to bus.

     What is in your idea about using both channel?

    P.S: Please don't ask my code, cannot be distributed.

     

  • i want to use two separate bus because i communicate with one module with one other power supply. so i need to have galvanic isolated bus. I didn't find component to isolate CANH and CANL bus (i only find component with Tx/Rx isolated compared to CANH, CANL).

    module0 communicate with module1 (same power supply) on channel CAN0 and module0 communicate with module2 (different power supply) on channel CAN1 with galvanic isolated.

     

     

  • HI,

    Did you noticed ISO1050?

    Petrei

  • i need to isolate CANH/CANL with one other CAN bus CANH/CANL and not Rx/Tx with CANH/CANL.

    a transformer 1:1 can do the job i think but i didn't find good device.

  • CANH and CANL should  be at the 2.5V level, steady, to realize the two bus states, recessive/dominant.

  • That is an unusual requirement.  It is (almost?) never done this way because the introduction of isolation between different parts of the bus presents timing issues.  It might be possible with back to back isolated transcievers but it will, at the very least, introduce timing issues. 

    The only common bus setups I know are

    • totally isolated - each node has an isolated transciever and the CAN bus itself runs in its own power domain
    • totally non-isolated - all nodes share the same power domain.

    Early CAN implementations had a transformer option but I don't think anyone ever used them so it has dissappeared.  It's why there is bit stuffing in the protocol.

     

    Robert

  • le beller yoann said:
    a transformer 1:1 can do the job i think but i didn't find good device.

     Asking for a question then posting a non solution selecting that answer result as arrogant.

     All description are on non clean language, just this last one permit other to understand maybe it need a sort of  isolated repeater....

     If so is not so difficult to get a message from one bus and post on the other to repeat network traffic. This router or switch software can be also exists ready to use but expressing in a readable form is a must!!

     Again I insist on forum for good tech and beginner question.

     TI is thinking E2E as Engineer to Engineer or to waste time of professional EE?

  • Robert Adsett said:
    It is (almost?) never done this way because the introduction of isolation between different parts of the bus presents timing issues

     

    Apparently it is done often enough for commercial solutions to exist

     

    I.E.

    http://www.ixxat.com/can_repeater_en.html

    They do note the timing effect.

     

    Robert

  • Robert Adsett said:

    Apparently it is done often enough for commercial solutions to exist

     Hi Robert, gateway, router switch repeater and extender, tunnelling are normal way on a network, deep knowledge of network layer and at almost non basic network programming skill are both required.