完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
我在使用以下环境的项目中工作:
- LPC55S06JHI48 MCU - MCUXpresso IDE v11.7.1 [Build 9221] [2023-03-28] - SDK_2.x_LPC55S06 v3.10 我无法读取 CAN 协议寄存器内的时间戳值. 我的项目设置为使用 CAN 2.0B(扩展帧 - 29 位 ID)。目前我没有使用 CAN-FD。 我正在使用 mcan 驱动程序实现来读取 CAN RX 缓冲区。 用户手册 UM11424 说可以在 RXTS 字段中读取时间戳值(第 779 页)。 我知道有必要按照第 753 页上的说明配置时间戳计数器配置寄存器 (TSCC)。 但是,查看 fsl_mcan.c 实现,我找不到任何对 TSCC 寄存器的引用。似乎 mcan 驱动程序没有初始化这个寄存器,也没有任何方法来配置它。 查看 LPC55S06.h 文件,我找到了 TSCC 寄存器声明,如下所示: 我尝试使用寄存器上的直接调用来设置时间戳,但没有成功。我总是将时间戳读为零。 我的问题是:mcan驱动没有实现timestamp初始化步骤? 在 MCU 中没有外部计时器/计数器块的情况下,如何在收到的包中使用 CAN 时间戳? |
|
相关推荐
1个回答
|
|
mcan驱动确实没有提供初始化时间戳计数器的步骤。这意味着需要在自己的应用程序中实现时间戳的计数器初始化和读取,以确保正确读取CAN协议寄存器中的时间戳值。
以下是一些步骤,可用于在LPC55S06JHI48 MCU中使用MCUXpresso IDE和SDK_2.x_LPC55S06 v3.10实现CAN时间戳初始化和读取: 1. 首先需要配置时间戳计数器配置寄存器(TSCC),该寄存器用于配置CAN帧时间戳计数器的参数。此寄存器位于MCAN模块的容器寄存器中,可以使用LPC55S06JHI48 MCU提供的寄存器映射来直接访问。配置TSCC寄存器可以使用以下代码: MCAN->RAMn[TxBufIndex].TSCC = MCAN_RAMn_TSCC_TCP_MASK | MCAN_RAMn_TSCC_TSS_MASK | MCAN_RAMn_TSCC_TFE_MASK | ((CAN_TIME_STAMP_COUNTER_PRESCALER - 1) << MCAN_RAMn_TSCC_TCP_SHIFT); 这里,我们将TSCC寄存器配置为使用TCP分频器、时间戳溢出中断选项和时间戳使能选项。还需要在PRESCALER字段中设置CAN时间戳计数器的预分频器值。 2. 现在,可以在每次读取CAN帧时读取时间戳。为此,需要在MCAN帧缓冲区对象中配置帧缓冲区,以启用时间戳记录选项。我们可以在MCAN->RAMn[TxBufIndex].TSCC寄存器的TSS字段中启用时间戳记录选项,如下所示: MCAN->RAMn[TxBufIndex].TSCC |= MCAN_RAMn_TSCC_TSS_MASK; 3. 最后,在每个接收中断处理程序中,可以使用以下代码来读取CAN协议寄存器中的时间戳值: uint32_t timeStamp = ((CAN->RXGFC & CAN_RXGFC_FLSSA_MASK) << 19) | ((MCAN->RAMn[RxBufIndex].RXF0S & MCAN_RAMn_RXF0S_F0FL_MASK) * sizeof(MCAN_RX_FIFO0_t)); 这里,我们使用CAN_RXGFC_FLSSA字段和MCAN_RAMn_RXF0S_F0FL字段来计算接收帧的时间戳值。 |
|
|
|
只有小组成员才能发言,加入小组>>
1912个成员聚集在这个小组
加入小组我的项目我做主,使用GN+Ninja来完成构建系统(VSCode开发RT106X)
36368 浏览 0 评论
NXP IMX8应用处理器快速入门必备:技巧、使用、设计指南
4403 浏览 0 评论
6062 浏览 1 评论
6770 浏览 0 评论
NXP i.MX6UL开发板(linux系统烧录+规格+硬件+模块移植)使用手册
4220 浏览 0 评论
625浏览 2评论
求助,S32G上Core M启动后如何让Core A在Flash指定位置加载uboot?
621浏览 2评论
ESP32-WROVER-IE + LAN8720以太网,GPIO0电压只有1.6v,无法正常进入spi flash boot模式如何解决?
615浏览 2评论
求分享适用于PN7160 Android的NFC工厂测试应用程序
698浏览 2评论
802浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-28 17:00 , Processed in 1.143033 second(s), Total 48, Slave 41 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号