|
本帖最后由 huangyanga 于 2019-3-15 16:12 编辑 这个帖子https://www.stmcu.org.cn/module/forum/forum.php?mod=viewthread&tid=616508的问题,没有人回答,我后来自己大概搞清楚了: 原来所谓时间触发模式,就是开启CAN硬件中的一个16位计数器,这计数器在每个 CAN 位时间递增,用来形成时间戳,这样接收到的每一帧都会有一个16字节的计数器值,存在CAN_RDTxR寄存器里面。而这里的位时间 ,就是CAN发送每位数据的时间,也就是波特率。比如CAN配置的波特率1Mbps,那么位时间就是1us,CAN计数器的时间元就是1us。所以时间触发模式并不是字面意思,用时间触发CAN收发,而是对时间进行计数、记录。 而开启这个模式的方式是,将 CAN_MCR 寄存器的 NART 位置 1。 按照这个配置,目前测试发现,CAN启动后,该计数器就开始启动,到达65535就归零。实际如果跑1M波特率,65毫秒计数就复位了,这个时间戳能用的时间不长。另外启动一个TIM定时器,与CAN同步启动,记录时间戳的复位圈数,这样同时使用或许有实际应用效果。 |
STM32
超强工具——STM32CubeMX 你会用吗?
集结出发! STM32全国研讨会系列之一:ST智能门铃中国首秀
关于STM32启动文件的几个小问题
【银杏科技ARM+FPGA双核心应用】STM32H7系列35——USB_VCP_FS
【银杏科技ARM+FPGA双核心应用】STM32H7系列28——USB_HID
粉丝分享 | 图说CRC原理应用及STM32硬件CRC外设
STM32L151进入低功耗,并由RTC唤醒的故事
[转]stm32控制NFC模块(PN532)源码(P2P,模拟卡,读写卡等
STM32G070RB+LVGL移植
微信公众号
手机版
好消息是看介绍H7(如果记错了就是MP1或G0)的一些产品支持CAN-FD和一路TTC功能。
有些应用需要知道每帧收发时的准确时间,比如我现在做一个CAN日志记录器,时间戳就很有用,比RTC要准,毕竟是CAN硬件层记录下来的时间。
哦,还没用过H7