0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何设置TC397的QSPI模块工作在CPH =1协议模式?

LI1323882 来源:MCU频道 2023-05-17 09:29 次阅读

问题描述

客户在调试QSPI模块过程中,将TC397的QSPI模块的CPOL位设置为1,但是示波器显示时钟引脚输出信号的空闲状态并不是高电平,在debug模式下,可观察到CPOL位已设置为1,这是怎么回事呢?

2a359828-f410-11ed-90ce-dac502259ad0.png

图1

设置TC397的QSPI模块工作在CPOL=1, CPH =1协议模式

解决过程

SpiIf_initChannelConfig()函数在初始化QSPI channel时,提供了很多配置参数项,其中就有clockPolarity,但是单单设置clockPolarity= SpiIf_ClockPolarity_idleHigh,虽然会将CPOL位设置为1,但是捕获的波形显示空闲状态电平并未变成高电平。

这是由于SpiIf_initChannelConfig()函数的默认参数项设置IDLE时序阶段时长为0,使得帧传输间隙缺少IDLE时序阶段,所以需要设置csInactiveDelay > 0(如下所示)来插入IDLE时序阶段,如下图所示。

voidSpiIf_initChannelConfig(SpiIf_ChConfig*config,SpiIf*driver)
{
config->driver=driver;
config->baudrate=0;
config->mode.enabled=1;
config->mode.autoCS=1;
config->mode.loopback=0;
config->mode.clockPolarity=SpiIf_ClockPolarity_idleHigh;
config->mode.shiftClock=SpiIf_ShiftClock_shiftTransmitDataOnLeadingEdge;
config->mode.dataHeading=SpiIf_DataHeading_msbFirst;
config->mode.dataWidth=8;
config->mode.csActiveLevel=Ifx_ActiveState_low;
config->mode.csLeadDelay=SpiIf_SlsoTiming_0;
config->mode.csTrailDelay=SpiIf_SlsoTiming_0;
config->mode.csInactiveDelay=SpiIf_SlsoTiming_2;
config->mode.parityCheck=0;
config->mode.parityMode=Ifx_ParityMode_even;
config->errorChecks.baudrate=0;
config->errorChecks.phase=0;
config->errorChecks.receive=0;
config->errorChecks.transmit=0;
}
2a52086e-f410-11ed-90ce-dac502259ad0.png

图2



审核编辑:刘清

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 示波器
    +关注

    关注

    111

    文章

    5660

    浏览量

    181783
  • QSPI
    +关注

    关注

    0

    文章

    38

    浏览量

    11961
  • CPOL
    +关注

    关注

    0

    文章

    9

    浏览量

    9991

原文标题:如何设置TC397的QSPI模块工作在CPOL=1, CPH =1协议模式

文章出处:【微信号:MCU频道,微信公众号:MCU频道】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    Tc397中如何用Tim捕捉时间戳?

    请问各大神Tc397中如何用Tim捕捉时间戳?
    发表于 01-22 08:09

    请问TASKING v6.2.r1版本可以在线调试TC397吗?

    TASKINGv6.2.r1版本可以在线调试TC397吗?新建的TC397 Demo工程,发现Debug Configration里面只有Tricore 1.6.2 Instruction Set Simulator这一选项
    发表于 01-25 07:00

    如何通过RGMII接口将TC397连接到Marvell 88Q5152?

    我们的计划是通过 RGMII 接口将 TC397 连接到 Marvell 88Q5152,以满足我们的应用要求。 过去,Linux系统上,我们设置了一个固定链接来直接指定速度和双工模式
    发表于 01-26 06:05

    求助,为什么miniWiggler的JTAG信号映射与设备端(TC397)不一致?

    /TMS mapping on device side. ” 具体的说,minWiggler的TDO与DAP1是同一个信号;而tc397的TMS与DAP1是同一个信号。 我们希望设备
    发表于 02-01 06:47

    TC397QSPI模块的CPOL设置1,为什么示波器显示时钟引脚输出信号的空闲状态并不是高电平?

    TC397QSPI模块的CPOL设置1,但是示波器显示时钟引脚输出信号的空闲状态并不是高电平,请问是为什么?
    发表于 02-01 08:34

    TC397的TOM和STM会冲突怎么解决?

    TC397 我们打开STM中断和TOM模块功能,档两个模块单独工作没有问题,档两个同时工作,运行2秒多,系统中断就不跑了,各位大侠有什么解决
    发表于 02-01 06:17

    SCR模式下如何通过TC397唤醒TLF35584进入NORMAL模式

    我通过TC397SPI把TLF35584进入了SLEEP模式,然后TC397也进入了standby模式,SCR模式下我如何通过
    发表于 02-02 08:11

    TC397 ASCLIN_SPI模式可以使用DMA吗?

    TC397 ASCLIN_SPI模式可以使用DMA吗?IDLL库该API里面逻辑没有DMA操作。
    发表于 02-02 12:23

    TC397 QSPI波特率异常问题怎么解决?

    1. TC397 datasheet 描述QSPImax波特率50M;2.英飞凌官方qspi demo SPI_DMA_1 for KIT
    发表于 02-02 14:25

    tc397怎么开启DCache?

    请教下各路大神,有没有哪位做过TC397上开启DCache的经验,怎么开启,需要注意些什么,有官方例程最好
    发表于 02-02 16:52

    TC397 CAN不能进入normal模式怎么处理?

    各位大佬好,请问TC397 CCCRn.INIT无法清零的问题大家遇到过吗?使用TC387/TC397APPKIT硬件,CAN驱动是通过EB生成的。调试时CCCRn.INIT不能清零,无法进入normal
    发表于 02-04 07:08

    TC397怎么配置CAN为扩展帧类型?

    TC397怎么配置CAN为扩展帧类型
    发表于 02-04 07:37

    TC397供电是几V?

    TC397(3V3)供电是几V?
    发表于 02-04 08:25

    TC397软件复位是只能执行一次吗?

    TC297软件复位可以正常使用,TC397的执行软件复位后只能正常复位一次,然后就一直处于复位状态,程序不再运行,这是什么原因,还有什么其他操作设置
    发表于 02-05 07:16

    AURIX TriCore学习笔记六:TC397开发环境搭建

    AURIX TriCore学习笔记六:TC397开发环境搭建
    发表于 11-13 20:21 37次下载
    AURIX TriCore学习笔记六:<b class='flag-5'>TC397</b>开发环境搭建