完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
本帖最后由 一只耳朵怪 于 2018-6-14 11:53 编辑
测AD中断的执行时间,发现对结构体或者共同体变量做赋值操作会耗费不少总线时间。 比如:DCA_L[Order_IndexA].bit.ORDER = i; //其中DCA_L是局部的共同体变量 想请问下:这个语句相对于普通变量的赋值语句,执行时间要长很多吗?为什么呢? 如果我想减少执行时间,能做什么改进?比如把局部变量定义成全局的会不会好些 请大神赐教,我也会做试验,到时反馈给大家~ |
|
相关推荐
8个回答
|
|
你好,首先可以分析一下这个赋值语句所生成的汇编代码,从代码角度来分析为何会耗费这么多时钟周期。
|
|
|
|
另外,你是如何测量的赋值语句,这个时间?看看测量方法是否得当。
|
|
|
|
我是通过拉高拉低测试引脚的电平来看代码执行时间的,从之前的一些测试数据来看,测试结果应该是可信的。 |
|
|
|
一个结构体的赋值语句,耗时应该很小,这样测量在时间级上也不对称啊 |
|
|
|
抱歉,之前忘了说明了,我是一整串类似的赋值语句一起测试的,有60、70句赋值。总共执行时间达到了十几微秒。 |
|
|
|
首先、通过CCS工具可以查一下具体耗费的时钟周期。 |
|
|
|
赋值语句优化的问题,感觉很难有大的改变。毕竟比较简单、单一。 所以看看能否成程序设计的角度看看,可以优化一下。 |
|
|
|
谢谢您的回答! 上午实际测试了,发现单纯赋值语句耗时没有之前认为的大(之前把小部分算法代码的执行时间也算在里面了,今天优化了这部分算法才节省了执行时间)。 当然,共同体的操作相对于普通变量会多耗时点,后面有机会再具体了解了 |
|
|
|
只有小组成员才能发言,加入小组>>
348 浏览 1 评论
543 浏览 2 评论
NA555DR VCC最低电压需要在5V供电,为什么用3.3V供电搭了个单稳态触发器也使用正常?
787 浏览 3 评论
MSP430F249TPMR出现高温存储后失效了的情况,怎么解决?
658 浏览 1 评论
对于多级放大电路板,在PCB布局中,电源摆放的位置应该注意什么?
1140 浏览 1 评论
AT32F407在USART2 DMA发送数据时,接包接到了要发送的数据,程序还是处于等待传输完成的标识判断中,为什么?
78浏览 29评论
265浏览 23评论
请问下tpa3220实际测试引脚功能和官方资料不符,哪位大佬可以帮忙解答下
261浏览 20评论
请教下关于TAS5825PEVM评估模块原理图中不太明白的地方,寻求答疑
209浏览 14评论
两个TMP117传感器一个可以正常读取温度值,一个读取的值一直是0,为什么?
67浏览 13评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-27 01:09 , Processed in 1.251721 second(s), Total 94, Slave 76 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号