发新帖我要提问
123
返回列表
打印
[STM32F1]

到底执行哪个?

[复制链接]
楼主: zwll
手机看帖
扫描二维码
随时随地手机跟帖
41
zwll|  楼主 | 2022-8-7 10:06 | 只看该作者 回帖奖励 |倒序浏览
用上dma了,我那个是主接收,应该是使用不了iic中断的,我现在的具体操作我是这么做的,我的那个主接收读取数据花费700us之多是放在一个触发中断里面的,是有3次单个字节的读取加上一次16和字节的读取,耗时最大的是在后面的16字节上,而前面的单个字节的读完之后后面还要cpu介入去判断条件然后去处理的,所以肯定要cpu,所以我把dma用在了后面的16个字节读取上了,现在只要进入到了后面的dma读取时候,我用while等待去等,在这个等待里面,我那个10khz的中断可以打断它,这样就不算cpu浪费了,这个10khz的中断,优先级就应该要最高才行,除了这个10k中断其他的cpu也不需要做啥事情,之间遇到的问题就是那个读三个单独字节的那个iic过程,那里如果10k的中断的持续时间过长会导致硬件iic挂掉,具体测试的是30us以上的中断打断就会工作一段时间之后挂掉,,20几us就没事。所以保持这个打断硬件iic的中断时间在30us以下,比较保险

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则