这几天想做一个给金鱼自动喂食的装置,所以学习了下如何操控步进电机,现在做个记录。

使用Pretues仿真Arduino的话,可以参考:http://www.geek-workshop.com/thread-26325-1-1.html

步进电机的话,是通过给不同的相通电,形成电磁场,来驱动中间的转子。转子越多,每一步就可以越小,电机就越精确。

ULN2004A是供电模块,通过电平信号的配置来输出电压,通过配置1,2,3,4输入,来使得13,14,15,16输出电压驱动电机。

PS:如果要电机反转的话,就反序配置引脚。参见:http://www.elecfans.com/dianlutu/187/20170116475004.html

仿真结果:

代码:

/* Main.ino file generated by New Project wizard
*
* Created: Thu Sep 5 2013
* Processor: ATmega328P
* Compiler: Arduino AVR
*/ #define LED ( 13 )
#define MOTOR_PIN0 ( 0 )
#define MOTOR_PIN1 ( 1 )
#define MOTOR_PIN2 ( 2 )
#define MOTOR_PIN3 ( 3 ) void setup()
{ // put your setup code here, to run once:
pinMode( LED, OUTPUT );
pinMode( MOTOR_PIN0, OUTPUT );
pinMode( MOTOR_PIN1, OUTPUT );
pinMode( MOTOR_PIN2, OUTPUT );
pinMode( MOTOR_PIN3, OUTPUT );
} void loop()
{ // put your main code here, to run repeatedly:
/*digitalWrite( LED, HIGH );
delay( 500 );
digitalWrite( LED, LOW );
delay( 500 );*/ static int i = ; switch( i-- )
{
case :
digitalWrite( MOTOR_PIN0, HIGH );
digitalWrite( MOTOR_PIN1, LOW );
digitalWrite( MOTOR_PIN2, LOW );
digitalWrite( MOTOR_PIN3, LOW );
digitalWrite( LED, HIGH );
break;
case :
digitalWrite( MOTOR_PIN0, LOW );
digitalWrite( MOTOR_PIN1, HIGH );
digitalWrite( MOTOR_PIN2, LOW );
digitalWrite( MOTOR_PIN3, LOW );
digitalWrite( LED, LOW );
break;
case :
digitalWrite( MOTOR_PIN0, LOW );
digitalWrite( MOTOR_PIN1, LOW );
digitalWrite( MOTOR_PIN2, HIGH );
digitalWrite( MOTOR_PIN3, LOW );
digitalWrite( LED, HIGH );
break;
case :
digitalWrite( MOTOR_PIN0, LOW );
digitalWrite( MOTOR_PIN1, LOW );
digitalWrite( MOTOR_PIN2, LOW );
digitalWrite( MOTOR_PIN3, HIGH );
digitalWrite( LED, LOW );
break;
default:
break;
} delay(); if( > i )
i = ;
}

使用Pretues仿真Arduino驱动步进电机的更多相关文章

  1. arduino驱动步进电机

    https://learn.adafruit.com/adafruit-motor-shield-v2-for-arduino/install-software 1安装库 Adafruit_Motor ...

  2. arduino中驱动 步进电机

    参考:https://www.arduino.cn/thread-75936-1-1.html 知识点:    步进电机是一种将电脉冲转化为角位移的执行机构.通俗一点讲:当步进驱动器接收到一个脉冲信号 ...

  3. FPGA驱动步进电机

    步进电机 步进电机是将电脉冲信号转变为角位移或线位移的开环控制电机,是现代数字程序控制系统中的主要执行元件,应用极为广泛.在非超载的情况下,电机的转速.停止的位置只取决于脉冲信号的频率和脉冲数,而不受 ...

  4. arduino驱动安装

    方法一:使用官方提供的一键安装程序安装 打开Arduino在你电脑上的位置如果你的电脑是32位系统,就运行dpinst-x86.exe如果是64位系统,就运行dpinst-amd64.exe然后在弹出 ...

  5. 使用Arduino驱动基于ST7533芯片的TFT屏

    在合宙通信买了一个1.8寸的TFT屏,驱动芯片是ST7533,本来打算使用Air800直接驱动,但由于其他原因,放弃了.于是尝试使用arduino驱动,为了屏幕刷新速度更快,采用硬件SPI. 硬件连接 ...

  6. python代码实现树莓派3b+驱动步进电机

    python代码实现树莓派3b+驱动步进电机 之前买了个树莓派,刚买回来那会儿热情高涨,折腾了一段时间,然后就放那吃灰了.前几天忽然想起来这个东西了,决定再玩玩儿,于是就从某宝上购买了一套步进电机.驱 ...

  7. Arduino ULN2009驱动步进电机

    一.实物图 二.例子代码 注:代码来自老外 http://www.4tronix.co.uk/arduino/Stepper-Motors.php 功能:控制电机正反转 // This Arduino ...

  8. win8.1环境下安装arduino驱动问题解决方案

    1. Windows 键+ R, 输入 shutdown.exe /r /o /f /t 00 2.此时电脑会自动重启,进入一下画面,选择Troubleshoot (转载请注明原处:http://ww ...

  9. 最新 Arduino 驱动 12接口/户外 LED显示屏/LED点阵屏/LED单元板

    起因 现有的驱动LED显示屏的资料,比较好的只有这个.但是它驱动的是08接口的室内显示屏,而我要驱动的是12接口的户外显示屏.两种屏幕的区别在于户外屏幕点阵比较稀疏,而且二者的扫描方式,驱动方式都不太 ...

随机推荐

  1. Cocos Creator学习五:触摸和重力传感响应事件

    1.移动设备上主要涉及触摸响应事件以及重力传感响应事件的处理. 事件主要分两类: 针对节点事件处理的节点响应事件cc.Node.EventType(主要是触摸响应事件和鼠标响应事件): 针对全局系统事 ...

  2. Effective java 系列之更优雅的关闭资源-try-with-resources

    背景: 在Java编程过程中,如果打开了外部资源(文件.数据库连接.网络连接等),我们必须在这些外部资源使用完毕后,手动关闭它们.因为外部资源不由JVM管理,无法享用JVM的垃圾回收机制,如果我们不在 ...

  3. sunset

    may there be enough clouds in your life to make a beautiful sunset

  4. python django连接错误

    提示: connection.alias,django.db.migrations.exceptions.InconsistentMigrationHistory: Migration admin.0 ...

  5. python中OS模块方法

    常见函数: os.sep:取代操作系统特定的路径分隔符 os.name:指示你正在使用的工作平台.比如对于Windows,它是'nt',而对于Linux/Unix用户,它是'posix'. os.ge ...

  6. 世界各国GDP动态排名可视化实现(基于d3.js)

    一.说明 之前在抖音上看到GDP等各种排名的可视化,一直想知道是怎么实现的.之前也有研究过一次,但觉得太麻烦放弃了,昨天又心痒难耐研究了一翻. 先是看到这篇文章说是有人基于d3.js实现:https: ...

  7. jq鼠标事件

    鼠标事件是在用户移动鼠标光标或者使用任意鼠标键点击时触发的.   (1)click单击鼠标事件:click事件于用户在元素敲击鼠标左键,并在相同元素上松开左键时触发.        $('p').cl ...

  8. laravel5.5 env

    env 函数 读取的变量里面带有 # 号的情况下 数据会丢失

  9. DBLookupCombobox实现下拉联动

    这次用DBLookupCombobox实现省份-城市-地区的下拉联动,用以学习DBLookupCombobox的一些用法 效果图: 首先建立数据表(数据表形式可以多种多样:数据库表.文本.xml等,最 ...

  10. 新建Eclipse的web工程目录结构和MyEclipse相似的设置

    新建一个文件名为“org.eclipse.wst.web.prefs”的文件 里面设置的内容如下: “webContent=webRoot%proj%\bin= %webRoot%\WEB-INF\c ...