
uboot初始化IIC1,跳转到应用程序中后,先读一字节AT24C04的数据,然后初始化IIC1(未复位),再读一字节AT24C04时,有概率一直检测到IIC处于busy状态。
STM32F407的flash读写问题
keil调试阶段无法进行仿真,能进到仿真界面,但是无法执行程序,这个怎么解决?
STM32F4的IO口5V容忍问题
询问STM32F407两种USB可以实现的功能
TOF传感器(VL53L5),无法得到data ready
在CUBEMX生成的STM32F407VET6的I2S主机接收模式与I2S主机发送模式能正常运行,如何进行动态调整或者如何实现主机全双工?
STM32F407 多机RS485串口通讯+地址位唤醒+DMA空闲线接收,无法进入中断服务程序。
设置RDP等级为2的同时,有什么办法可以确保后续还能够烧录程序
STM32F407VET6 I2S 采用DMA传输问题
本身记录的这个函数也要运行一段时间,所以它的精度用来记录一些事件还行。
如果精确记录指令,那是达不到的,本身工具的输出频率就远低于主频的。
来记录和分析系统事件。个人对这个不太了解,有了解的人可以聊聊。
两个操作间有延时应该是可以理解的,至于具体多长延时合理,跟它的运行机制以及当前系统有关,每次对event recorder的调用
与完成执行肯定是有时间开销的。
我也是刚研究,加一行i++代码,运行时间会变成1.63us
但是这个空语句运行的时间不是确定的,会有几十纳秒波动
那我该怎样保证算出来的时间的准确性呢
用它的API指令放在语句前后,也会有1.5us左右的误差
我也是刚研究,中间加一个i++,运行时间为1.63us
我测试都是有波动的,误差感觉在几十ns
用API的指令测试也是
那怎么保证这个测量的时间的准确性呢
但是这个时间他好像也不是确定的,会有几十ns的误差,我这里是这样显示的
包括我用他自带的API的指令,自己减了一下也是1.5us左右
我加一行i++语句,显示时间是这么多,减去上面那个,差不多0.07us,70ns,我也感觉有点大了
但是每次这样计算就很麻烦,而且这个空语句运行也有误差,有没有大佬告知一下为啥啊,脑壳痛,这个计算时间准吗
好滴
要是想精确的测量一段代码的运行时间,各位大佬有啥好意见吗
试试用 DWT 计数器,这个是以内核频率计数的。
原来这样啊。
用STM32片内定时器多方便,又准确。其它分辨率不可能高于定时器的计数分辨率了,此时就不要对TIMER做分频了。
好滴,这个精确一点,我用过啦
定时器也好用,现在我觉得这个Event Recorder一点都不好用
刚刚用Event Recorder测一个50us中断,只用A0,显示47.7us左右,这个还可以接受,在随便加一个A1,两个都不对了,不知道为啥