question about heartbeat

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

question about heartbeat

yukunduan
This post has NOT been accepted by the mailing list yet.
I met some question when writing some project using canopen.
first i'm coding base on stm32f4 with freertos.And,i,m using canfestival 3.0.
i config the stm32f4 as a slave,and my pc using a can analysis as a master.
then i config the slave have heartbeat,that means i set 1016 and 1017 in the od.Also i set 1029 to 0x02 to make the heartbeat error occoured then slave into stop either pre-operation.
So,then
slave:
set node id 0x08,and set state into pre-operation by coding.
then it's sending id :0x0708 value 0x7f
master:send:
0x00 0x81(reset net)
slave:send
id :0x0708 value 0x7f
master:send:
0x00 0x01(reset net)
slave:send
id :0x0708 value 0x05(period)
SO,it means slave into state operation.
but i never send heartbeat 0708 with the value nmt state.
and my slave nevet into nmt state 0x04(stop)

So,why my slave can't go into stop,and how to into the heartbeat event?