打印

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

[复制链接]
6263|15
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
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

使用特权

评论回复
5
machuan2008200| | 2011-5-19 18:10 | 只看该作者
1# tongxin076 顶起啊

使用特权

评论回复
6
sheng8| | 2011-5-19 18:15 | 只看该作者
顶起tongxin076

使用特权

评论回复
7
香水城| | 2011-5-19 18:20 | 只看该作者
你们在顶什么?:dizzy:

使用特权

评论回复
8
LDTEST| | 2011-5-19 19:22 | 只看该作者
打酱油!

使用特权

评论回复
9
lxyppc| | 2011-5-19 20:20 | 只看该作者
估计是同学吧

使用特权

评论回复
10
老鱼探戈| | 2011-5-19 20:44 | 只看该作者
只有左移语句(C语音中一般没有指令一说,汇编中才常用): RTemp<<=1;   //左移一位

使用特权

评论回复
11
mcu5i51| | 2011-5-20 08:45 | 只看该作者
嵌入汇编,没看过STM的指令表,不知道有没

使用特权

评论回复
12
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的变化时间。

使用特权

评论回复
13
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个到第一个的时间,跟之前的都一样呢?

使用特权

评论回复
14
z125239641| | 2011-5-20 10:27 | 只看该作者
你用if判断 到了第8个就重新亮第一个,并且直接将值写给I/O口。但之前用的变量好好的不用了。还把I/O赋值给变量。PD_DDR是地址能赋值吗?仔细去看书上指针是怎么回事
在第8个到第一个之间加个延时,先记住 给变量赋值,再变量写给I/O

使用特权

评论回复
15
z125239641| | 2011-5-20 10:29 | 只看该作者
PD_DDR是地址,不能被当做值赋给其他地址

使用特权

评论回复
16
tongxin076|  楼主 | 2011-5-23 10:16 | 只看该作者
14# z125239641
大侠,我只是初学者,不用if的话,亮到第8个灯后就不再亮了!请给明确的修改一下!谢谢了!

使用特权

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

本版积分规则

0

主题

5

帖子

1

粉丝