查看: 9211|回复: 10

pcDuino 上运行motor shield

[复制链接]
  • TA的每日心情
    郁闷
    2013-6-3 09:22
  • 签到天数: 29 天

    连续签到: 1 天

    [LV.4]偶尔看看III

    发表于 2013-3-18 17:51:03 | 显示全部楼层 |阅读模式
    分享到:
    本帖最后由 pcduino 于 2013-3-18 19:26 编辑


    motor shield 是Arduino控制器兼容的电机驱动扩展板,让motor shield 成为pcDuino的电机扩展板,在pcDuino开发应用平台上快速上手,操作步骤如下:
    一、在protol Shield上的线路连接
    1.jpg
    2.jpg
    二、线路连接好之后,打开LXTerminal,进入目录

    3.jpg
    4.jpg
    三、输入命令,打开代码
    5.jpg

    四、代码打开成功之后,输入make进行编译,出现可执行文件
    6.jpg
    五、运行代码,成功之后电机转动
    7.jpg
    8.jpg

    #include <core.h>

    #define pinI1     8  //define IN1 interface
    #define pinI2     11 //define IN2 interface
    #define speedpinA 3  //enable motor A
    #define pinI3     12 //define IN3 interface
    #define pinI4     13 //define IN4 interface
    #define speedpinB 4 //enable motor B
    #define spead     200 //define the spead of motor

    void forward()
    {
         analogWrite(speedpinA,spead);//input a simulation value to set the speed
         analogWrite(speedpinB,spead);
         digitalWrite(pinI4,HIGH);//turn DC Motor B move clockwise
         digitalWrite(pinI3,LOW);
         digitalWrite(pinI2,LOW);//turn DC Motor A move anticlockwise
         digitalWrite(pinI1,HIGH);
    }
    void backward()
    {
         analogWrite(speedpinA,spead);//input a simulation value to set the speed
         analogWrite(speedpinB,spead);
         digitalWrite(pinI4,LOW);//turn DC Motor B move anticlockwise
         digitalWrite(pinI3,HIGH);
         digitalWrite(pinI2,HIGH);//turn DC Motor A move clockwise
         digitalWrite(pinI1,LOW);
    }
    void left()
    {
         analogWrite(speedpinA,spead);//input a simulation value to set the speed
         analogWrite(speedpinB,spead);
         digitalWrite(pinI4,HIGH);//turn DC Motor B move clockwise
         digitalWrite(pinI3,LOW);
         digitalWrite(pinI2,HIGH);//turn DC Motor A move clockwise
         digitalWrite(pinI1,LOW);
    }
    void right()
    {
         analogWrite(speedpinA,spead);//input a simulation value to set the speed
         analogWrite(speedpinB,spead);
         digitalWrite(pinI4,LOW);//turn DC Motor B move anticlockwise
         digitalWrite(pinI3,HIGH);
         digitalWrite(pinI2,LOW);//turn DC Motor A move clockwise
         digitalWrite(pinI1,HIGH);
    }
    void stop()
    {
         digitalWrite(speedpinA,LOW);// Unenble the pin, to stop the motor. this          should be done to avid damaging the motor.
         digitalWrite(speedpinB,LOW);
         delay(2000);
    }

    void setup()
    {
      pinMode(pinI1,OUTPUT);
      pinMode(pinI2,OUTPUT);
      pinMode(speedpinA,OUTPUT);
      pinMode(pinI3,OUTPUT);
      pinMode(pinI4,OUTPUT);
      pinMode(speedpinB,OUTPUT);
    }

    void loop()
    {
      left();
      delay(2000);
      stop();
      right();
      delay(2000);
      stop();
      forward();
      delay(2000);
      stop();
      backward();
      delay(2000);
      stop();
    }


    回复

    使用道具 举报

  • TA的每日心情
    奋斗
    2016-8-25 12:42
  • 签到天数: 692 天

    连续签到: 1 天

    [LV.9]以坛为家II

    发表于 2013-3-18 19:31:52 | 显示全部楼层
    非常不错,顶一个!
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    郁闷
    2013-3-18 20:48
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]初来乍到

    发表于 2013-3-18 21:14:21 | 显示全部楼层
    很好、厉害,顶一个!!!!!!!!!!!!
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    发表于 2013-3-18 23:30:06 | 显示全部楼层
    看好。。。。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    发表于 2013-3-18 23:31:22 | 显示全部楼层
    好家伙,发一条还带温习数学
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    发表于 2013-3-18 23:32:13 | 显示全部楼层
    好好好好好好好、、、、、、、、、、、、
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    发表于 2013-6-25 09:08:12 | 显示全部楼层
    看好,学习。但是在ubuntu下怎么搭建pcduino的环境呀?
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    郁闷
    2013-6-3 09:22
  • 签到天数: 29 天

    连续签到: 1 天

    [LV.4]偶尔看看III

     楼主| 发表于 2013-6-25 09:12:49 | 显示全部楼层
    xiao_shuai_de 发表于 2013-6-25 09:08
    看好,学习。但是在ubuntu下怎么搭建pcduino的环境呀?

    板子上已经预装了ubuntu系统的
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    发表于 2013-6-25 09:16:52 | 显示全部楼层
    pcduino 发表于 2013-6-25 09:12
    板子上已经预装了ubuntu系统的

    对的,不是板子上的那个系统,而是我用我的电脑跟板子进行通信,在我电脑上调试板子,就像51单片机那样的
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    郁闷
    2013-6-3 09:22
  • 签到天数: 29 天

    连续签到: 1 天

    [LV.4]偶尔看看III

     楼主| 发表于 2013-6-26 09:14:45 | 显示全部楼层
    xiao_shuai_de 发表于 2013-6-25 09:16
    对的,不是板子上的那个系统,而是我用我的电脑跟板子进行通信,在我电脑上调试板子,就像51单片机那样的 ...

    简单调试用串口就行,复杂的需要做nfs,要用到串口和网线。你的电脑系统是ubuntu的话,还需要安装几个软件再做一些配置,比如安装minicom,搭建tftp服务。pcDuino对应的也有一些需要配置。
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /4 下一条

    手机版|小黑屋|与非网

    GMT+8, 2024-11-19 19:43 , Processed in 0.218368 second(s), 34 queries , MemCache On.

    ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

    苏公网安备 32059002001037号

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.