cancel
Showing results for 
Search instead for 
Did you mean: 

When does a CAN bus wake up a CPU?

LMI2
Lead
Posted on August 01, 2015 at 15:43

I have an idea about a CAN bus with 100-150 devices and a central processor. But we have very limited power available. All but one device should be awake at one time. There is no power to keep 100 CPUs active simultaneously.

So, is it possible to wake up the CPU only when its address is on the bus?
4 REPLIES 4
Posted on August 05, 2015 at 15:11

Hi mich.lei,

If you have not yet chosen the devices serie, I recommend you to choose low power series (STM32L). To reduce comsumption you can put MPUs in one of low-power modes, and when a data is received on the bus an interruption is generated to wake up the MPU.

-Shahrzad-

LMI2
Lead
Posted on August 07, 2015 at 22:13

Hi shahrzad

It takes too much power if all the devices are active everytime there is some traffic on the bus. How to configure the CPU so that it wakes up only when exactly that CPU is addressed?

Can bus interface chips are power hungry too.

Posted on August 08, 2015 at 02:46

It would depend a lot on your ''addressing'' scheme for the bus. You can use the message ID, or pattern match on the first 32-bits of the CAN packet header, as described in the reference manual, to filter into a CAN FIFO, the CAN peripheral could then interrupt pulling the device from it's sleep mode. If you bury something deeper in the data payload, then you're going to have to inspect everything.

Perhaps this isn't the right bus for the job? If the transceivers themselves pull too much power how's this going to work? If you can't be listening on the bus, you'd have to schedule times when the nodes come up and talk/listen to each other.

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..
LMI2
Lead
Posted on August 09, 2015 at 00:59

I too have began to think that the CAN bus does not work here. There is an additional device which could have used the same bus, but as you said there are too many other problems.