“电阻计”的版本间的差异
(Created page with "{| style="width: 800px;" |- | ==目的== 本教程将教大家如何用processing显示电阻计值的曲线图,电阻计由Microduino实现。 ==设备== *'''Microduino...") |
(→程序) |
||
| (未显示2个用户的5个中间版本) | |||
| 第1行: | 第1行: | ||
| + | {{Language | Resistance_meter}} | ||
{| style="width: 800px;" | {| style="width: 800px;" | ||
|- | |- | ||
| 第7行: | 第8行: | ||
==设备== | ==设备== | ||
| − | *'''[[Microduino-Core]]''' | + | *'''[[Microduino-Core/zh]]''' |
| − | *'''[[Microduino- | + | *'''[[Microduino-USBTTL/zh]]''' |
*其他硬件设备 | *其他硬件设备 | ||
| 第16行: | 第17行: | ||
**面包板 一个 | **面包板 一个 | ||
**跳线 一盒 | **跳线 一盒 | ||
| − | |||
| − | |||
==原理图== | ==原理图== | ||
| 第27行: | 第26行: | ||
==程序== | ==程序== | ||
| − | + | [https://github.com/Microduino/Microduino_Tutorials/tree/master/Microduino_Processing/ResistanceMeter ResistanceMeter] | |
| + | |||
| + | [https://github.com/Microduino/Microduino_Tutorials/tree/master/Microduino_Processing/processingResistanceMeter processingResistanceMeter] | ||
==调试== | ==调试== | ||
| 第59行: | 第60行: | ||
//得到第一个串口的数据,并定义如果有换行就缓存 | //得到第一个串口的数据,并定义如果有换行就缓存 | ||
| − | // is always my | + | // is always my Microduino, so I open Serial.list()[0]. |
// Open whatever port is the one you're using. | // Open whatever port is the one you're using. | ||
myPort = new Serial(this, Serial.list()[0], 9600); | myPort = new Serial(this, Serial.list()[0], 9600); | ||
2014年10月29日 (三) 07:16的最新版本
| Language | English |
|---|
目的本教程将教大家如何用processing显示电阻计值的曲线图,电阻计由Microduino实现。 设备
原理图
程序调试步骤一:按着原理图搭建硬件环境,像这样:
本例需要两端的代码,Processing端和Microduino端 Microduino: //使用滤波算法计算出电阻值数据后输出到串口以便Processing显示 //filter Algorithm
float filter()
{
float sum = 0;
for(int count = 0; count < N; count++)
{
sum += r;
delay(5);
}
return (float)(sum / N);
}
Processing: //得到第一个串口的数据,并定义如果有换行就缓存 // is always my Microduino, 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接收到的数据以曲线图的形式显示在屏幕上,并标上标尺 String val = myPort.readStringUntil('\n');
if (val != null) {
if ("Infinity!!".equals(val)) {
unit="resistancetoo big";
}
else {
if ("K ohm".equals(val)) {
unit="K ohm";
}
else if (" ohm".equals(val)) {
unit=" ohm";
}
else {
val = trim(val);
println(val);
resistance=Float.parseFloat(val);
}
}
}
vals[vals.length-1] = 200-resistance;
//Display scale
text ( "200-", 370, 10);
text ( "--", 370, 50);
text ( "100-", 370, 100);
text ( "--", 370, 150);
text ( "0-", 370, 200);
//show current num
text ( resistance+unit, 0, 10);
步骤三:下载代码并编译通过。 步骤四:把待测电阻放到上图中黄色和黑色线的中间,看看processing中的电阻曲线值 结果曲线图会显示当前的电阻值。
视频 |


