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

来自Microduino Wikipedia
跳转至: 导航搜索
(Created page with "{| style="width: 800px;" |- | ==目的== 本教程将教大家如何用Microduino-10DOF模块测到的磁场强度数据在Processing中显示一个指南针。 ==设备== *...")
 
Pkj讨论 | 贡献
设备
第9行: 第9行:
 
*'''[[Microduino-Core]]'''
 
*'''[[Microduino-Core]]'''
 
*'''[[Microduino-FT232R]]'''
 
*'''[[Microduino-FT232R]]'''
'''[[Microduino-10DOF]'''
+
*'''[[Microduino-10DOF]'''
  
 
*其他硬件设备
 
*其他硬件设备
**USB数据连接线  一根  
+
**USB数据连接线  一根
 
 
  
 
==原理图==
 
==原理图==

2014年5月19日 (一) 06:42的版本

目的

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

设备

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

原理图

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

程序

见 compassMicroduino

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)

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

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

结果

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


视频