STM8S的c语言指令中,循环左移的命令是什么?

[复制链接]
 楼主| tongxin076 发表于 2011-5-19 17:14 | 显示全部楼层 |阅读模式
STM8S的c语言指令中,循环左移的命令是什么?
香水城 发表于 2011-5-19 17:58 | 显示全部楼层
C语言中没有循环左移的操作。
machuan2008200 发表于 2011-5-19 18:09 | 显示全部楼层
1# tongxin076
machuan2008200 发表于 2011-5-19 18:10 | 显示全部楼层
1# tongxin076
machuan2008200 发表于 2011-5-19 18:10 | 显示全部楼层
1# tongxin076 顶起啊
sheng8 发表于 2011-5-19 18:15 | 显示全部楼层
顶起tongxin076
香水城 发表于 2011-5-19 18:20 | 显示全部楼层
你们在顶什么?:dizzy:
LDTEST 发表于 2011-5-19 19:22 | 显示全部楼层
打酱油!
lxyppc 发表于 2011-5-19 20:20 | 显示全部楼层
估计是同学吧
老鱼探戈 发表于 2011-5-19 20:44 | 显示全部楼层
只有左移语句(C语音中一般没有指令一说,汇编中才常用): RTemp<<=1;   //左移一位
mcu5i51 发表于 2011-5-20 08:45 | 显示全部楼层
嵌入汇编,没看过STM的指令表,不知道有没
 楼主| tongxin076 发表于 2011-5-20 09:46 | 显示全部楼层
10# 老鱼探戈
  您好,谢谢您的解答! 我是做一个GPIO的流水灯
temp=temp<<1;
    delay(1000);
    PD_DDR=temp;
    delay(1000);
    if(temp==0X80)
      
      PD_DDR=0X01;
      delay(1000);
      temp=PD_DDR;    这是我编写的程序,从第一个灯到第8个灯都在正常的时间间隔变换,但是从第8个返回第一个时是瞬间过去的,增大delay的值也只是改变1~8的变化时间。
 楼主| tongxin076 发表于 2011-5-20 09:48 | 显示全部楼层
2# 香水城
您好,谢谢您的解答! 我是做一个GPIO的流水灯
temp=temp<<1;
    delay(1000);
    PD_DDR=temp;
    delay(1000);
    if(temp==0X80)
      
      PD_DDR=0X01;
      delay(1000);
      temp=PD_DDR;    这是我编写的程序,从第一个灯到第8个灯都在正常的时间间隔变换,但是从第8个返回第一个时是瞬间过去的,增大delay的值也只是改变1~8的变化时间。我想怎样才能改变第8个到第一个的时间,跟之前的都一样呢?
z125239641 发表于 2011-5-20 10:27 | 显示全部楼层
你用if判断 到了第8个就重新亮第一个,并且直接将值写给I/O口。但之前用的变量好好的不用了。还把I/O赋值给变量。PD_DDR是地址能赋值吗?仔细去看书上指针是怎么回事
在第8个到第一个之间加个延时,先记住 给变量赋值,再变量写给I/O
z125239641 发表于 2011-5-20 10:29 | 显示全部楼层
PD_DDR是地址,不能被当做值赋给其他地址
 楼主| tongxin076 发表于 2011-5-23 10:16 | 显示全部楼层
14# z125239641
大侠,我只是初学者,不用if的话,亮到第8个灯后就不再亮了!请给明确的修改一下!谢谢了!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

0

主题

5

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部