“指南针”的版本间的差异

来自Microduino Wikipedia
跳转至: 导航搜索
Pkj讨论 | 贡献
程序
第20行: 第20行:
 
==程序==
 
==程序==
  
compassMicroduino
+
https://github.com/Microduino/Microduino_Tutorials/tree/master/Microduino_Processing/compassMicroduino
  
compass_simulator
+
https://github.com/Microduino/Microduino_Tutorials/tree/master/Microduino_Processing/compass_simulator
  
 
==调试==
 
==调试==

2014年6月3日 (二) 08:24的版本

目的

本教程将教大家如何用Microduino-10DOF模块测到的磁场强度数据在Processing中显示一个指南针。

设备

  • 其他硬件设备
    • USB数据连接线 一根

原理图

直接使用Microduino-10DOF上的HMC5883L磁场强度传感器

程序

https://github.com/Microduino/Microduino_Tutorials/tree/master/Microduino_Processing/compassMicroduino

https://github.com/Microduino/Microduino_Tutorials/tree/master/Microduino_Processing/compass_simulator

调试

步骤一:按着原理图搭建硬件环境,像这样:

Compass simulatorConnectionDiagram.jpg


步骤二:解释一下代码:

本例需要两端的代码,Processing端和Microduino端

Microduino:

//得到磁场强度数据后输出到串口以便Processing显示

 void loop()
 {
   mag.getHeading(&mx, &my, &mz);
   Serial.print(mx);
   Serial.print(",");
   Serial.println(my); 
 }

Processing:

//得到第一个串口的数据,并定义如果有换行就缓存

 // is always my  Arduino, so I open Serial.list()[0].
 // Open whatever port is the one you're using.
 myPort = new Serial(this, Serial.list()[0], 9600);
 myPort.bufferUntil('\n'); // Trigger a SerialEvent on new line

//把从Microduino接收到的数据取出来后以不同颜色的曲线图的形式显示在屏幕上,并标上标尺

函数说明:

//绘制磁场指针 arrow(int x1, int y1, int x2, int y2, color c)

//判断是否可转换为数字 isNumeric(String str)

步骤三:下载代码并编译通过。

步骤四:运行后,用一块磁铁改变一下磁场,看看指针是否变化。

结果

屏幕上会显示一个简单的指南针,指针会随着磁场走,像这样:


视频