完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
针对于普通的直流电机驱动,直接变电压即可
但是实际一般达不到这么高的电压值 原理图: 程序: int K1=5; //把K1(正转)按钮连在数字端口5 int K2=6; //把K2(反转)按钮连在数字端口6 int K3=7; //把K3(停止)按钮连在数字端口7 int potpin = 3; // 把电位计连在模拟端口3 int A=2; //数字端口2、3控制电机启停和转向 int B=3; int PWMpin = 9; // 数字端口9输出PWM信号,控制电机转速 //初始化 void setup() { pinMode(K1,INPUT);//把数字端口5、6、7设置输入模式 pinMode(K2,INPUT); pinMode(K2,INPUT); pinMode(A,OUTPUT);//把数字端口2、3设置输入模式 pinMode(B,OUTPUT); } //主程序 void loop() { //如果按下K1(正转)按钮 if(digitalRead(K1)==LOW) { //电机正转 digitalWrite(A,HIGH); digitalWrite(B,LOW); } //如果按下K2(反转)按钮 if(digitalRead(K2)==LOW) { //电机反转 digitalWrite(A,LOW); digitalWrite(B,HIGH); } //如果按下K3(停止)按钮 if(digitalRead(K3)==LOW) { //电机停止 digitalWrite(A,LOW); digitalWrite(B,LOW); } int sensorValue = analogRead(potpin); //读取电位计采样值 sensorValue = sensorValue/4; // 采样值 0-1024 转换为 0-255 analogWrite(PWMpin, sensorValue);//把处理后的转换值以PWM信号形式输出 delay(20);//延时 } 把处理后的转换值以PWM信号形式输出 delay(20);//延时 } 但是,如果要实现精确控制的话,最好还是采用单片机的定时功能,滑动变阻器不仅难调也不准确,PWM显得更好一些 |
|
|
|
只有小组成员才能发言,加入小组>>
2443 浏览 0 评论
9131 浏览 4 评论
36808 浏览 19 评论
5033 浏览 0 评论
24793 浏览 34 评论
1545浏览 2评论
1766浏览 1评论
2213浏览 1评论
1571浏览 0评论
543浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-26 19:54 , Processed in 1.180987 second(s), Total 76, Slave 60 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (威廉希尔官方网站 图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号