From b2d55d2c8c7819a4ee4ef694b8431fe65e675209 Mon Sep 17 00:00:00 2001 From: "Aubr.Cool" Date: Thu, 19 Nov 2015 13:45:14 +0800 Subject: [PATCH] correct stm32f10x can sendmsg rtr flag error --- bsp/stm32f10x/drivers/bxcan.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/bsp/stm32f10x/drivers/bxcan.c b/bsp/stm32f10x/drivers/bxcan.c index 28849f7cdd..e19d971123 100644 --- a/bsp/stm32f10x/drivers/bxcan.c +++ b/bsp/stm32f10x/drivers/bxcan.c @@ -1185,14 +1185,14 @@ static int sendmsg(struct rt_can_device *can, const void *buf, rt_uint32_t boxno { assert_param(IS_CAN_STDID(pmsg->id)); pbxcan->sTxMailBox[boxno].TIR |= ((pmsg->id << 21) | \ - pmsg->rtr); + (pmsg->rtr << 1)); } else { assert_param(IS_CAN_EXTID(pmsg->id)); pbxcan->sTxMailBox[boxno].TIR |= ((pmsg->id << 3) | \ - pmsg->ide << 2 | \ - pmsg->rtr); + (pmsg->ide << 2) | \ + (pmsg->rtr << 1)); } pmsg->len &= (uint8_t)0x0000000F;