历史上的今天
今天是:2025年02月07日(星期五)
2020年02月07日 | 示波器的制作图解
2020-02-07 来源:elecfans
步骤1:您需要什么?

1)LinkitONE板
2)微型USB电缆(至程序板)
3)要测试的传感器很多!
(我正在使用声音传感器,PIR运动传感器,空气质量传感器,DHT温度传感器,灰尘传感器等)。
第2步:连接传感器




在这里,您应该选择任何可以提供模拟读数的传感器。您可以使用世界上任何可用的模拟传感器!!!
声音传感器,光传感器,土壤湿度传感器,触摸传感器!!!更!
第3步:编写一些代码

这里的代码非常简单!没什么!
我们只是从传感器获取模拟读数,然后将其发送到计算机。然后计算机中的程序会将数据转换为实时图形。
代码:
-------- ----
#define ANALOG_IN 1
void setup()
{
Serial.begin(9600);//Serial.begin(115200);
}
void loop(){
int val = AnalogRead(ANALOG_IN);
Serial.write(0xff);
Serial.write((val 》》 8)&0xff);
Serial.write(val&0xff);
}
------------
好,现在刻录此代码发送到您的董事会。下一步,我们将为计算机编写另一个代码以可视化读数。
步骤4:开发图形界面

我们将使用处理软件来制作GUI部件。首先从www.processing.org下载处理程序并安装最新版本。
代码真的很简单,我们只是从序列中读取读数,然后绘制图表。请下载此步骤附带的代码。
代码:
---------
导入处理.serial。*;
串行端口;//从Serial类int val创建对象;//从串口接收的数据的int []值;浮动缩放;
void setup(){size(1280,480);//打开与开发板连接的端口,并使用相同的速度(9600 bps)port = new Serial(this,Serial.list()[0],9600);值=新的int [width];变焦= 1.0f;光滑(); }
int getY(int val){return(int)(height-val/1023.0f *(height-1)); }
int getValue(){int value = -1; while(port.available()》 = 3){if(port.read()== 0xff){value =(port.read()《《8)| (port.read());返回值; }
void pushValue(int value){for(int i = 0; i
void drawLines(){stroke(255); int displayWidth =(int)(width/zoom ); int k = values.length-displayWidth; int x0 = 0; int y0 = getY(values [k]); for(int i = 1; i
void drawGrid(){stroke(255 ,0,0); line(0,height/2,width,height/2);}
void keyReleased(){switch(key){case‘+’:zoom * = 2.0f; println(zoom); if((int)(width/zoom)《= 1)zoom/= 2.0f; break; case‘-’:zoom/= 2.0f; if(zoom 《1.0f)zoom * = 2.0f ; break;}}
void draw(){background(0); drawGrid(); val = getValue(); if(val!= -1){pushValue(val);} drawLines() ;}
--------
完成此操作后,请转到下一步并开始测试示波器!
步骤5:对其进行测试!

现在进行测试!
将其插入Linkit板,然后运行您在处理中制作的程序通过单击播放按钮!
您将看到读数实时更新!您可以使用其他传感器进行尝试!凉?再尝试一些:D
步骤6:测试声音传感器



这是声音传感器!
您可以边呼吸边看分析的读数。
步骤7:测试空气质量传感器



您还可以进行测试空气质量!程序绘制了一张关于我房间中空气质量的图表,该图表在30秒内发生了变化。
步骤8:测试PIR运动传感器



Wala!运动传感器!您将获得数字阅读!测试它会很有趣!
第9步:最终修饰!


酷!您还可以制作一个易于携带的简单框框,以便随身携带!
史海拾趣
|
现在手机中的射频信号通道越来越拥挤。蜂窝电话已经从双频向三频甚至四频快速发展。这些复杂手机还需要处理来自外围无线设备的各种信号,如蓝牙、Wi-Fi和GPS。而随着WiMAX和LTE(4G)的加入,这种复杂度将越来越高。在移动电话中,天线开关控制着天线 ...… 查看全部问答> |
|
我用这个方法,但是好像获取的大小有问题,不知道这个方法是不是正确的方法,还没有更好的办法? DDCAPS ddcaps; ddcaps.dwSize = sizeof DDCAPS; lpdd ...… 查看全部问答> |
|
大型ARM+linux+android嵌入式技术专题公益讲座 华清远见武汉华嵌中心将于2010年4月24日下午1:00-5:00在武汉大学联手ARM中国公司,开展“基于ARM平台的嵌入式系统设计专题讲座”。 详情请点击: http://www.embedhq.org/html/mianfei/2010/0408/382.html… 查看全部问答> |
|
LPCWSTR strDrvName=L\"\"; strDrvName=TEXT(\"NDS0:\"); HANDLE hHandle; hHandle ...… 查看全部问答> |
|
请问有人做过误码仪吗?最近在做一个误码仪,有个问题卡在那边,问题是要我产生误码,之后就是让我检测误码,码型为NRZ,RZ,AMI,HDB3码,关于NRZ,RZ码我就不知道了,这种码还能判断误码?… 查看全部问答> |
|
128M扩到512M,我用的是uboot+NK.nb0,uboot已经改好ram初始化部分,没有开mmu,在uboot下测试512内存读写正常,wince改了config.bib中ram大小,oemtable也改了内存映射,但是现在内核跑到oeminit跑完就死了,不好调试。试着用oemgetextensiondram( ...… 查看全部问答> |
|
渥瑞达“3G移动开发”免费试听课于北京交通大学举行,欢迎大家光临! 渥瑞达“3G移动开发”免费试听课于北京交通大学举行,欢迎大家光临! 渥瑞达“3G移动开发”免费试听课于北京交通大学举行,欢迎大家光临! 详情请参见 www.neworigin.net 同时欢迎大家与我们的609期学员交流!这期学员已与2月11日毕业 ...… 查看全部问答> |
|
【连载】【ALIENTEK MiniSTM32 开发板】STM32不完全手册-内部温度传感器实验(14) 开发板购买地址:http://shop62103354.taobao.com [ 本帖最后由 正点原子 于 2010-9-7 09:45 编辑 ]… 查看全部问答> |
|
今天在看书时发现一点疑惑,问题大致是这样的: 一个电路网络,要对其中一个2输入与门的输出(定义为tmp吧,其实此处并不存在端口或变量)进行一些赋值操作,。在Verilog编程中按说是应该把其定义为wire型变量,可是今天看的一个例子却定义成了reg ...… 查看全部问答> |




