搜索
bottom↓
回复: 11

STM32F107调试两路CAN时发现奇怪问题

[复制链接]

出0入0汤圆

发表于 2016-4-25 16:52:05 | 显示全部楼层 |阅读模式
MCU:STM32F107RCT6
CAN1:PB8,PB9
CAN2:PB5,PB6
已重映射,调试时,CAN2有输出,CAN1没有输出,因为波特率不对,我直接在CAN1和CAN2 Pin用示波器采样,CAN2有波形,CAN1两个Pin全是高。

不知道有人遇到这种情况吗?求帮助!

阿莫论坛20周年了!感谢大家的支持与爱护!!

曾经有一段真挚的爱情摆在我的面前,我没有珍惜,现在想起来,还好我没有珍惜……

出0入0汤圆

 楼主| 发表于 2016-4-25 16:52:20 | 显示全部楼层
顶一下,在线等

出0入0汤圆

发表于 2016-4-25 17:02:08 | 显示全部楼层
我用103的CAN,没发现什么问题,主要还是检查重映射和时钟这一块吧。

出0入0汤圆

 楼主| 发表于 2016-4-25 17:05:27 | 显示全部楼层
simplorer 发表于 2016-4-25 17:02
我用103的CAN,没发现什么问题,主要还是检查重映射和时钟这一块吧。

我查了好几遍重映射了,还是没找到问题。
代码如下:
void GPIO_Configuration(void)
{
         GPIO_InitTypeDef GPIO_InitStructure;

        RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA | RCC_APB2Periph_GPIOB | RCC_APB2Periph_GPIOD | RCC_APB2Periph_GPIOE | RCC_APB2Periph_AFIO,ENABLE);

        RCC_APB1PeriphClockCmd(RCC_APB1Periph_CAN1, ENABLE);
         RCC_APB1PeriphClockCmd(RCC_APB1Periph_CAN2, ENABLE);

          GPIO_PinRemapConfig(GPIO_Remap1_CAN1,ENABLE);
         GPIO_PinRemapConfig(GPIO_Remap_CAN2,ENABLE);

        GPIO_InitStructure.GPIO_Pin = GPIO_Pin_11;
        GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
        GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU;
        GPIO_Init(GPIOA, &GPIO_InitStructure);  

        /* Configure CAN1 pin: TX */
        GPIO_InitStructure.GPIO_Pin = GPIO_Pin_12;
        GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
        GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP;
        GPIO_Init(GPIOA, &GPIO_InitStructure);       
       
                /* Configure CAN2 pin: RX */
        GPIO_InitStructure.GPIO_Pin = GPIO_Pin_5;
        GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
        GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU;
        GPIO_Init(GPIOB, &GPIO_InitStructure);
                /* Configure CAN2 pin: TX */
        GPIO_InitStructure.GPIO_Pin = GPIO_Pin_6;
        GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
        GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP;
        GPIO_Init(GPIOB, &GPIO_InitStructure);
}          

出0入0汤圆

 楼主| 发表于 2016-4-25 17:50:49 来自手机 | 显示全部楼层
没人遇到过这个问题吗?

出0入0汤圆

发表于 2016-4-26 01:15:20 | 显示全部楼层
本帖最后由 pcl 于 2016-4-26 01:17 编辑

引腳不對,can1複用 B8,B9 , 你的碼還是在原來的A11,A12

        GPIO_InitStructure.GPIO_Pin = GPIO_Pin_11;
        GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
        GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU;
        GPIO_Init(GPIOA, &GPIO_InitStructure);  

        /* Configure CAN1 pin: TX */
        GPIO_InitStructure.GPIO_Pin = GPIO_Pin_12;
        GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
        GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP;
        GPIO_Init(GPIOA, &GPIO_InitStructure);

改成
                /* CAN1 RX PB8 */
                GPIO_InitStructure.GPIO_Pin = GPIO_Pin_8;
                GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU;
                GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
                GPIO_Init(GPIOB, &GPIO_InitStructure);
                /* CAN1 TX PB9 */
                GPIO_InitStructure.GPIO_Pin = GPIO_Pin_9;
                GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP;
                GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
                GPIO_Init(GPIOB, &GPIO_InitStructure);

出0入0汤圆

发表于 2016-4-26 06:32:07 | 显示全部楼层
1.可以找官方的代码试试
2.用can的loop试试

出0入0汤圆

 楼主| 发表于 2016-4-26 09:21:44 | 显示全部楼层
本帖最后由 lhaoyue 于 2016-4-26 09:23 编辑
wychao 发表于 2016-4-26 06:32
1.可以找官方的代码试试
2.用can的loop试试


官方有F107的例程吗?没找到啊
我是用STM32Cube用HAL库的,我查查标准库。

出0入0汤圆

发表于 2016-4-26 09:27:57 | 显示全部楼层
引脚都配置的不对,6楼给你说了,
我上周刚刚调试107的CAN,我只用了CAN1 试试PD0 PD1引脚,没问题,
另外我是参考金龙 107开发板CAN例程搞的,你可以找一下看看

出0入0汤圆

发表于 2016-5-27 15:01:55 | 显示全部楼层
如果需要can转以太网转换器全套方案,我可以提供

出0入0汤圆

 楼主| 发表于 2016-5-30 11:35:07 | 显示全部楼层
zjtzlqr 发表于 2016-5-27 15:01
如果需要can转以太网转换器全套方案,我可以提供

您这有全套方案?

出0入0汤圆

发表于 2019-7-22 14:42:48 | 显示全部楼层
哈哈 时钟没使能
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-6-3 21:52

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表