打印

影子寄存器

[复制链接]
394|7
手机看帖
扫描二维码
随时随地手机跟帖
沙发
yszong| | 2016-10-15 16:32 | 只看该作者
什么意思?不是很明白你说的什么,能再解释一下这个现象吗

使用特权

评论回复
板凳
wyjie|  楼主 | 2016-10-15 16:36 | 只看该作者

资料上说查看一个寄存器需要do
{
ECanaShadow.CANTA.all = ECanaRegs.CANTA.all;
}while(ECanaShadow.CANTA.bit.TA25 == 0); // Wait for TA5 bit to be set..

而不能
while(ECanaRegs.CANTA.bit.TA25 == 0);
为啥呢?

使用特权

评论回复
地板
wyjie|  楼主 | 2016-10-15 17:03 | 只看该作者
嗯,读一次就复位成0的

使用特权

评论回复
5
wyjie|  楼主 | 2016-10-15 17:05 | 只看该作者

编译成汇编后反复读和用影子寄存器反复读不一样么?

使用特权

评论回复
6
zhanghqi| | 2016-10-15 17:07 | 只看该作者
影子寄存器这玩意不要用吧最好

使用特权

评论回复
7
heweibig| | 2016-10-15 17:08 | 只看该作者
为什么这样写的最大可能,就是读可能这个状态为会变。

使用特权

评论回复
8
wyjie|  楼主 | 2016-10-15 17:12 | 只看该作者
搞定了,呵呵,犯了低级错误……结贴啦,多谢各位

使用特权

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

本版积分规则

927

主题

12706

帖子

5

粉丝