这样用ACC对吗

2019-08-05 20:03发布

sbit ACC_7 = ACC^7;    //先定义

   for ( i=8; i>0; i-- )
       {
               ACC_7=DIO;
               SCLK = 0;
               ACC=ACC>>=1;
               SCLK = 1;
                   }
其中DIO是单片机引脚,用ACC_7读出的数值
是FF,但是我用if语句判断引脚,不用ACC_7读就是对的
,难道这ACC用法不对?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
9条回答
liliang9554
1楼-- · 2019-08-05 23:13
这里可能for ( i=8; i>0; i-- ) 会用到ACC,这样就会覆盖下面的ACC值

C里面一般不要去操作寄存器
heweibig
2楼-- · 2019-08-05 23:41
用了C,除非你特牛,否则动到寄存器,死得难看。
liliang9554
3楼-- · 2019-08-06 05:24
要在C语言中直接访问工作寄存器(R0~R7,A,B等等),你就得考虑后果。
wuhany
4楼-- · 2019-08-06 10:18
 精彩回答 2  元偷偷看……
jiahy
5楼-- · 2019-08-06 15:35
没听说过用C还要用ACC的
zhaoxqi
6楼-- · 2019-08-06 16:01
看来我错了。。。

一周热门 更多>