我想问下,在cla中,程序运行,一般都是执行三条指令后,才执行运算结果吗
比如
MMOV32 MR0,@_ClatoCpuVar.A
MNOP
MNOP
MNOP
MNOP—是不是程序执行到了这一步后,_ClatoCpuVar.A才能赋值给MR0啊?
jiaming zhang1:
不是,应该是第一步就赋值了,后面三部空延时,有相应的作用,不可以少。
具体的内容看看这个参考。
希望可以帮到你。
我想问下,在cla中,程序运行,一般都是执行三条指令后,才执行运算结果吗
比如
MMOV32 MR0,@_ClatoCpuVar.A
MNOP
MNOP
MNOP
MNOP—是不是程序执行到了这一步后,_ClatoCpuVar.A才能赋值给MR0啊?
guo white:
你好,请问CLA汇编指令集去哪里能够找到?迫切期待您的帮助,谢谢。
我想问下,在cla中,程序运行,一般都是执行三条指令后,才执行运算结果吗
比如
MMOV32 MR0,@_ClatoCpuVar.A
MNOP
MNOP
MNOP
MNOP—是不是程序执行到了这一步后,_ClatoCpuVar.A才能赋值给MR0啊?
mangui zhang:
这个肯定是第一句就赋值了的 有代码映射到控制器内部
也就是一些寄存器状态的变化 这些变化中有些是需要时间的
也就是在覆新值之后需要时间去稳定 代码中就需要加空循环等待稳定后再做其他操作
我想问下,在cla中,程序运行,一般都是执行三条指令后,才执行运算结果吗
比如
MMOV32 MR0,@_ClatoCpuVar.A
MNOP
MNOP
MNOP
MNOP—是不是程序执行到了这一步后,_ClatoCpuVar.A才能赋值给MR0啊?
Joey Mao:
回复 mangui zhang:
是的,第一句执行完MR0就赋值成功了
空循环还有一个作用就是确保MR0的值已经被写入内存在它被重新读之前
我想问下,在cla中,程序运行,一般都是执行三条指令后,才执行运算结果吗
比如
MMOV32 MR0,@_ClatoCpuVar.A
MNOP
MNOP
MNOP
MNOP—是不是程序执行到了这一步后,_ClatoCpuVar.A才能赋值给MR0啊?
jiaming zhang1:
回复 guo white:
是这样的,个人觉得你的问题主要出在对汇编这东西不了解,或者了解太少。
首先,急着找符合你要求的CLA汇编指令集,我觉得不能解决问题。
可以找一本基础的单片机汇编原理方面的书籍,或者微机原理上的书,把基本的汇编指令和原理都搞清楚。
然后还是要看你用到的手册,根据实际问题再考虑时序和具体的指令。
这样可能需要时间,如果着急的话,还是找身边懂的人,会快一点。
希望可以帮到你!
我想问下,在cla中,程序运行,一般都是执行三条指令后,才执行运算结果吗
比如
MMOV32 MR0,@_ClatoCpuVar.A
MNOP
MNOP
MNOP
MNOP—是不是程序执行到了这一步后,_ClatoCpuVar.A才能赋值给MR0啊?
user3900194:
回复 guo white:
你到ti官网上下载《TMS320x2803x Piccolo 控控制制律律加加速速器器 (CLA) 参参考考指指南,即可
我想问下,在cla中,程序运行,一般都是执行三条指令后,才执行运算结果吗
比如
MMOV32 MR0,@_ClatoCpuVar.A
MNOP
MNOP
MNOP
MNOP—是不是程序执行到了这一步后,_ClatoCpuVar.A才能赋值给MR0啊?
user3900194:
回复 mangui zhang:
谢谢你的耐心解答,我在ccs单步调试时,即MDEBUGSTOP,确实是在程序运行到第四个NOP时, MR0的值才被 @_ClatoCpuVar.A更新。这是为何呢
我想问下,在cla中,程序运行,一般都是执行三条指令后,才执行运算结果吗
比如
MMOV32 MR0,@_ClatoCpuVar.A
MNOP
MNOP
MNOP
MNOP—是不是程序执行到了这一步后,_ClatoCpuVar.A才能赋值给MR0啊?
hai sun:
回复 user3900194:
探索者
谢谢你的耐心解答,我在ccs单步调试时,即MDEBUGSTOP,确实是在程序运行到第四个NOP时, MR0的值才被 @_ClatoCpuVar.A更新。这是为何呢
我想问下,在cla中,程序运行,一般都是执行三条指令后,才执行运算结果吗
比如
MMOV32 MR0,@_ClatoCpuVar.A
MNOP
MNOP
MNOP
MNOP—是不是程序执行到了这一步后,_ClatoCpuVar.A才能赋值给MR0啊?
user3900194:
回复 hai sun:
那我单步调试是无法看到立马赋值的结果了?必须制止几步比如三步以上才能看到?
我想问下,在cla中,程序运行,一般都是执行三条指令后,才执行运算结果吗
比如
MMOV32 MR0,@_ClatoCpuVar.A
MNOP
MNOP
MNOP
MNOP—是不是程序执行到了这一步后,_ClatoCpuVar.A才能赋值给MR0啊?
user3900194:
回复 hai sun:
那我单步调试是无法看到立马赋值的结果了?必须制止几步比如三步以上才能看到?