这个问题,我在论坛发过帖子,也在群里问过,问题还是没能解决,于是恳请FAE支持。& R2 G8 j$ o5 C6 o+ u! b9 k 在看STM32F0的用户手册中发现一个困惑不已的时序,如下图所示,其中红色线条是我自己画的。 以我的理解,EV4这个事件应该发生在红线那个时间点,而手册中却不是这样,这是什么原因?是文档的作者刻意为了体现时钟延展的功能而设计的?还是说实际上就是文档中所示的? |
STM32固件库分享,超全系列整理
三创电子(Tcreate)-STM32F030核心板代码
STM32F0 ADC(DMA中断)多通道,注释超详细
FreeRTOS在STM32F030上的移植
基于STM32移植而引发的疑问经验分享
分享STM32F051中文参考手册(重制书签版)
游名:STM32F0+Trinamic智能步进驱动芯片TMC5160(最高20A)参考原...
【MCU实战经验】+STM32F030的步进电机加减速
STM32F0的中文技术参考手册(标签处理过)
基于STM32F030硬件SPI经验分享
评分
查看全部评分
TXE位在DATA2那段不是立刻拉高,是等到DR中的数据转移到移位寄存器时拉高,然后DR空,TXIS也置位,这时就发生EV4事件,写入DATA3,紧接着TXE拉低。EV4事件应当发生在类似EV3的位置,而不是官方文档中跑到DATA2的ack信号之后,除非在之前没有来得及处理才会到官方文档中的位置。不知道我理解的对不对
至于官方文档中的时序图data2转移到移位寄存器后要不要立刻写data3,这是软件处理的问题,可以这时候写,也可以等对方应答后再写,但EV4事件是发生在data2转移到移位寄存器后就发生
如果按您说的一定要等到对方应答后再写,那么该时序图中的EV5事件也不用写入data4了
我没看明白你说的意思,首先你第一个修改的红色线,TXD为什么在Data2会下降?肯定是在收到ACK之后才开始处理下一个数据呀
其实我是想表达的时官方文档的那个时序图有问题,真正的EV4并不是发生在官方文档指出的那个位置,而是我画的红线第一处与官方时序不同的那个位置,至于什么时候处理EV4这是另一回事,可以在官方指出的那个位置处理。EV4发生在什么位置与什么时候处理是两回事,所以我觉得官方的文档会在一定程度误导读者,请您指点
所以就说,看你什么时候放那个data3了
写入data3可以在我画的红线第一次与官方文档不同的位置,也可以在官方文档所指的位置,但EV4这个事件,是发生在data2转移至移位寄存器后立刻就发生的,官方文档并没有强调这一点,这对读者的理解是存在误导的,会让人误以为EV4就是在官方文档所指的位置发生。
EV3是data2,EV4是data3呀.....
这个我知道啊,我表达的是对的啊