“第四十二课--Microduino 电机转速测量/zh”的版本间的差异
(Created page with "{{Language|Lesson_42--Microduino_Motor_Speed_Measurement}} {| style="width: 800px;" |- | ==目的== 本教程将教大家如何用Microduino OLED来显示电机的转速 ==...") |
(→视频) |
||
第88行: | 第88行: | ||
==视频== | ==视频== | ||
+ | http://v.youku.com/v_show/id_XNjg0MzY4MzA0.html |
2014年3月13日 (四) 05:10的版本
Language | English |
---|
目的本教程将教大家如何用Microduino OLED来显示电机的转速 设备
原理图程序#include "U8glib.h"
int potPin = A0;//电位器引脚定义
int motorPin = 9;//电机引脚定义
int potValue = 0;//电位器的数值
int motorValue = 0;//电机的数值
U8GLIB_SSD1306_128X64 u8g(U8G_I2C_OPT_NONE);//定义OLED连接方式
//显示速度
void draw(int speedNum) {
u8g.setFont(u8g_font_unifont);//字体1
u8g.drawStr( 0, 16, "Speed:");
u8g.setFont(u8g_font_7x13);//字体2
u8g.setPrintPos(0, 32);
u8g.print(speedNum);
u8g.print(" (rpm)");
}
void setup()
{
}
void loop()
{
//读取电位器的值
potValue = analogRead(potPin);
//映射为电机的速率值
motorValue = map(potValue, 0, 1023, 0, 200);
analogWrite(motorPin, motorValue);
u8g.firstPage();
do {
draw(motorValue);
}
while( u8g.nextPage() );
delay(2);
}
调试步骤一:把代码复制到IDE中,编译 步骤二:电路连接如下图: 步骤三:运行代码 步骤四:转动电位器,查看OLED显示
结果转动电位器,可以调整电机的转速,在本例中最大转速为200 视频 |