zhanghuanqian 发表于 2016-4-5 10:55:48

基于UNO的STA蓝牙示波器

本帖最后由 zhanghuanqian 于 2016-4-9 12:35 编辑

蓝牙示波器项目采用Arduino、蓝牙模块、电压传感模块与手机APP通讯实现的软硬件结合的项目。其硬件如下:
        Arduino UNO;
        蓝牙模块HC-05;
        电压传感模块(可自行用7501=7.5k及3002=30k焊接);
        杜邦线若干。
(一)        原理图及实物图如下:

图 1 电路原理图


图 2 实物图

(二)        Arduino源代码
UNO源码:
#include <SoftwareSerial.h>
SoftwareSerial BT(8,9);//8->HC-05 TXD9->HC-05 RXD
int analogpin=A5;            //电压值输入
int val;
float val1;
void setup() {
// put your setup code here, to run once:
//Serial.begin(9600);//调试用
//Serial.println("BLUETOOTH is ready!");
BT.begin(9600);//HC-05的波特率,太高了用软串口会有问题
}
void loop() {
val=analogRead(analogpin);//采集电压并赋给val
val1=val/40.92;
// Serial.print(millis()/1000.0,3);//调试用
//Serial.print(",");
// Serial.println(val1,2);
BT.print(millis()/1000.0,3);//数据格式:时间,电压值\n
BT.print(",");
BT.print(val1,2);
BT.print("\n");
// delay(5);//延时采集
}(三)        手机端APP
其运行如图3所示。可对蓝牙进行扫描及连接。
可以调节量程、时间周期、图像显示方面采用散点图显示、折线图、差值图显示方式。
   
a)启动后扫描到蓝牙界面

b)示波界面
图 3.软件界面

(四)        试验
图3b)为21V实验电路采集的数据波形;理论波形见图4所示。从图中可以看出,示波器的采集效果还是不错的。


图 4 理论图形

APP源码:采用E4A编写,只适用于安卓系统,部分代码截图见图5^_^APP 1.0版本下载:https://yunpan.cn/cq8MLcNx78v6W访问密码 8487

图 5 部分代码截图

(五)        总结、扩展
1.与UNO端相比,例子的难点在手机端APP开发,在于将接收的字节型数据转换为数值数据再进行绘图。
2.手机端APP凡满足“*,*\n”这种格式的所有数据(例如温湿度值等)都可以作图,只需要修改量程即可实现。
牛刀小试,大侠莫怪!
2016/4/1   That’s a joke, No!
大象无形

Cupid 发表于 2016-4-5 13:32:06

恩不错,值得学习

Hackerpro 发表于 2016-4-6 10:08:03

不错,赞一个

zhanghuanqian 发表于 2016-4-6 13:07:36

谢谢各位:lol

底线 发表于 2016-4-7 09:43:21

厉害,,,,,
页: [1]
查看完整版本: 基于UNO的STA蓝牙示波器