[AT32F405]

【AT-START-F405测评】CAN功能开发

[复制链接]
128|0
手机看帖
扫描二维码
随时随地手机跟帖
chen000000009|  楼主 | 2024-5-15 23:58 | 显示全部楼层 |阅读模式
#申请原创#

AT32F405带一路CAN,支持CAN2.0B
下面介绍如何在AT32F405上使用CAN功能。工程还是使用上一篇文章生成的工程。
这里改用PB8 PB9作为CAN的引脚
65af6638a92623a3b9618d36ee63b6d6
对应datasheet的描述
4d1c567a67da5ef93312a476dec23058
默认生成的工程里面已经添加了所需的文件,进入到at32f402_405_wk_config.c,开启中断接收功能
27681df6ee8fd0583618efc8e43c66a9
其中CAN_RF0MIEN_INT为接收中断,CAN_ETRIEN_INTCAN_EOIEN_INT为错误中断,CAN_TCIEN_INT为发送完成中断
下面填充中断接收函数,即可实现接收功能
c614c3d172625faf47abf26b24d87ed0
调用can_message_receive函数可以进行can帧的接收
然后测试一下发送,这里在main循环中调用can的发送功能,将收到的can帧发送出去
d7a633eb654d174fd213e59376bb4b0e
注意其发送和接收的API结构体不同,要转换一下
然后找一个CAN收发器的模块,来测试一下,注意CAN收发器的电平要为3.3V的,可以使用TI的SN65HVD230
接线是收发器的TX接MCU的TX 收发器的RX接MCU的RX,然后找一个CAN模拟盒,接收发器的CANH和CANL脚
这里使用CAN分析仪发送20帧内容,然后看到CAN分析仪也收到了20帧报文,且内容和发送的一致,说明CAN收发功能都正常
aad312e3f98fa7a1604e4999487bdbfe

使用特权

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

本版积分规则

27

主题

762

帖子

2

粉丝