打印
[STM32F0]

STM32F042F6P6的CAN 为何初始化不成功?

[复制链接]
3646|26
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
static void CAN_GPIO_Configuration(void)
{
        GPIO_InitTypeDef GPIO_InitStructure;
       
        RCC_AHBPeriphClockCmd(RCC_AHBPeriph_GPIOA , ENABLE);                                                                                                                         
       
        /* CAN1 Periph clock enable */
        RCC_APB1PeriphClockCmd(RCC_APB1Periph_CAN, ENABLE);
       
        GPIO_PinAFConfig(GPIOA,GPIO_PinSource11, GPIO_AF_4);//RX
    GPIO_PinAFConfig(GPIOA,GPIO_PinSource12, GPIO_AF_4);//TX
       
        /* Configure CAN pin: RX */                                                                                       //       
        GPIO_InitStructure.GPIO_Pin    = CAN_RX;
        GPIO_InitStructure.GPIO_Mode   = GPIO_Mode_AF;
        GPIO_InitStructure.GPIO_PuPd   = GPIO_PuPd_UP;
        GPIO_Init(GPIOA, &GPIO_InitStructure);
       
        /* Configure CAN pin: TX */                                                                                       //
        GPIO_InitStructure.GPIO_Pin    = CAN_TX;
        GPIO_InitStructure.GPIO_Mode   = GPIO_Mode_AF;
        GPIO_InitStructure.GPIO_OType  = GPIO_OType_PP;
        GPIO_InitStructure.GPIO_Speed  = GPIO_Speed_50MHz;
        GPIO_InitStructure.GPIO_PuPd   = GPIO_PuPd_NOPULL;
        GPIO_Init(GPIOA, &GPIO_InitStructure);
}
停在 :CAN_Init(CAN, &CAN_InitStructure);        // 初始化CAN1  这一行
沙发
晓伍| | 2018-12-14 10:12 | 只看该作者
晶振起振了吗

使用特权

评论回复
板凳
cainiao518|  楼主 | 2018-12-14 10:19 | 只看该作者

怎么判断起振没有呢

使用特权

评论回复
地板
八层楼| | 2018-12-14 10:25 | 只看该作者
如果用的是自带的can模块 那就考虑时钟的问题

使用特权

评论回复
评论
cainiao518 2018-12-14 10:53 回复TA
怎么看时钟有没有问题呢 
5
guanjiaer| | 2018-12-14 10:39 | 只看该作者
我以前用sja1000的时候在这里卡过 不过那是因为其外置的晶振没有链接好 你这个我就说不好了

使用特权

评论回复
6
cainiao518|  楼主 | 2018-12-14 10:50 | 只看该作者

使用特权

评论回复
7
cainiao518|  楼主 | 2018-12-14 10:52 | 只看该作者
guanjiaer 发表于 2018-12-14 10:39
我以前用sja1000的时候在这里卡过 不过那是因为其外置的晶振没有链接好 你这个我就说不好了 ...


使用特权

评论回复
8
mmuuss586| | 2018-12-14 10:55 | 只看该作者
可以参考HAL库的例程啊,最近我也在调;
调好了,可以分享出来;

使用特权

评论回复
评论
cainiao518 2018-12-14 11:19 回复TA
好的 
9
wakayi| | 2018-12-14 11:57 | 只看该作者
你用的这个 那就应该使用串口啊

使用特权

评论回复
10
cainiao518|  楼主 | 2018-12-14 11:58 | 只看该作者
wakayi 发表于 2018-12-14 11:57
你用的这个 那就应该使用串口啊

串口和CAN共用管脚,不能同时使用串口

使用特权

评论回复
11
wakayi| | 2018-12-14 11:59 | 只看该作者
你用这个模块了 说明就不需要用arm自带的can了啊

使用特权

评论回复
12
cainiao518|  楼主 | 2018-12-14 13:20 | 只看该作者
wakayi 发表于 2018-12-14 11:59
你用这个模块了 说明就不需要用arm自带的can了啊

你的意思是 使用外置的CAN控制器吗?

使用特权

评论回复
13
cainiao518|  楼主 | 2018-12-14 16:56 | 只看该作者
mmuuss586 发表于 2018-12-14 10:55
可以参考HAL库的例程啊,最近我也在调;
调好了,可以分享出来;

在调哪款芯片呢

使用特权

评论回复
14
晓伍| | 2019-1-1 10:57 | 只看该作者
cainiao518 发表于 2018-12-14 10:19
怎么判断起振没有呢

用示波器看看波形啊

使用特权

评论回复
评论
cainiao518 2019-1-2 08:45 回复TA
起振了 
15
wakayi| | 2019-1-1 16:57 | 只看该作者
cainiao518 发表于 2018-12-14 13:20
你的意思是 使用外置的CAN控制器吗?

有时候为了可靠有可能用成熟的can芯片啊

使用特权

评论回复
16
cainiao518|  楼主 | 2019-1-2 08:45 | 只看该作者
wakayi 发表于 2019-1-1 16:57
有时候为了可靠有可能用成熟的can芯片啊

STM32的CAN也是比较成熟的

使用特权

评论回复
17
晓伍| | 2019-1-2 09:45 | 只看该作者
cainiao518 发表于 2018-12-14 10:19
怎么判断起振没有呢

用示波器卡卡不就知道了吗

使用特权

评论回复
18
cainiao518|  楼主 | 2019-1-2 10:13 | 只看该作者
晓伍 发表于 2019-1-2 09:45
用示波器卡卡不就知道了吗

起振了

使用特权

评论回复
19
晓伍| | 2019-1-2 10:33 | 只看该作者

看波形是多少M的啊

使用特权

评论回复
20
cainiao518|  楼主 | 2019-1-2 13:09 | 只看该作者
晓伍 发表于 2019-1-2 10:33
看波形是多少M的啊

8M   

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

133

主题

1370

帖子

4

粉丝