如何用语音模块SYN6288播报DHT11温湿度传感器传回来的数值
这两天用YSN6288语音播报温度传感器返回的数值。网上找了不少例程,但都没有合适的。商家给的资料里面只有直接合成中文的函数,但一遇到变量就把它当成英文字母播报了。后来找到一个可以播报整数(传入一个变量就可以读出里面整数的例子),但是又不能把"当前的温度数值是"和“度”很好的连接起来。这个例子是这样:
u8 SpeakerInt(int ida)
{ u8 i;
u8 negative=1; //负数标志位
u8 intLen=5;
u8 cdat[6]={0};
//if (ida < 0){ //若为负数取绝对值ida = abs(ida);
//negative = 1;
//}
cdat [0] = (char)(ida / 10000 ) ;
cdat [1] = (char)((ida % 10000) /1000);
cdat [2] = (char)((ida % 1000) /100);
cdat [3] = (char)((ida % 100) /10);
cdat [4] = (char)((ida % 10) /1);
for (i=0;i<5;i++){
cdat[i] = cdat[i] + 48;
}
if (cdat[0] == ‘0’){ intLen = 4;
if (cdat[1] == ‘0’){
intLen = 3;
if (cdat[2] == ‘0’){ intLen = 2;
if (cdat[3] == ‘0’)
intLen = 1;
}
}
}
if (negative == 1){
SYN_FrameInfo(0,“当前的温度是:”); delay_ms(1000);
}
SYN_FrameInfo(0,&cdat[5-intLen]); return 0;
}
后来我偶然间想到以前用过的一个函数sprintf(str,"%s%s",str1,str2)这个函数可以把各种类型的数据转换为字符串,还可以把多个字符串结合成一个字符串。(有关这个函数的更多用法可以百度)。我这里就是把 “当前的温度是:”,temperature,"度"这三个部分转为一个字符串,再送到语音合成函数进行播报,其中temperatureDHT11温湿度传感器传回的数值。
case 7: DHT11_Read_Data(&temperature,&humidity); //DHT11先传回数据
sprintf(temper_str,"%s%d%s",“当前的湿度为”,humidity,“度”);
//把中文和humidity湿度数据合成一个字符串放入数组temper_str中
while(BUSY); SYN_FrameInfo(0,temper_str); break;
把数组放到函数中进行播报。
case 8: DHT11_Read_Data(&temperature,&humidity);sprintf(temper_str,"%s%d%s","当前的温度为",temperature,"度");while(BUSY); SYN_FrameInfo(0,temper_str); break;
这个函数是放在了#include"stdio.h"头文件当中。
如何用语音模块SYN6288播报DHT11温湿度传感器传回来的数值相关推荐
- Esp8266 进阶之路19 【外设篇①】esp8266驱动 ds18b20、dht11 温湿度传感器,采集温湿度传感器到服务器。(附带Demo)
本系列博客学习由非官方人员 半颗心脏 潜心所力所写,不做开发板.仅仅做个人技术交流分享,不做任何商业用途.如有不对之处,请留言,本人及时更改. 序号 SDK版本 内容 链接 1 nonos2.0 搭建 ...
- ESP32 开发笔记(三)源码示例 8_DHT11_RMT 使用RMT实现读取DHT11温湿度传感器
开发板购买链接 https://item.taobao.com/item.htm?spm=a2oq0.12575281.0.0.50111deb2Ij1As&ft=t&id=62636 ...
- Android手机HC-05蓝牙连接Arduino nano获取DHT-11温湿度传感器数据
如果您觉得本文对您有用,希望您点赞,收藏并且把它分享出去,不明白的可以在评论区留言,我会一一解答,感谢您的支持!! 目标 Android手机HC-05蓝牙连接Arduino nano获取DHT-11温 ...
- 个人物联网(目前用到了树莓派、PMS7003攀藤g7传感器、DHT11温湿度传感器)
上周空气不好,突发奇想要搞个个人物联网系统,检测生存环境.手头有树莓派.NodeMCU esp8266.DHT11温湿度传感器.pm2.5检测需要专门的传感器,本以为也就几块钱,结果发现淘宝还挺贵.在 ...
- stc12c5a60s DHT11温湿度传感器
DHT11温湿度传感器 DHT11.h #ifndef __DHT11_H__ #define __DHT11_H__#ifndef uchar #define uchar unsigned char ...
- 传感器自学笔记第八章——DHT11温湿度传感器(附带自己写的很好用的51单片机DHT11代码模板,参数列表只有一个字符数组指针)
作者:GWD 时间:2019.06.26 DHT11温湿度传感器(单总线类) 一. 学习要点: 1.(重要)单总线类传感器检测高电平while(DHT11 == 1) temp |=0x01;出错,因 ...
- 51单片机控制DHT11温湿度传感器,并使用OLED屏幕显示
目录 前言 一.MCU主控选型 二.DHT11温湿度传感器 1.模块介绍 2.软件实现 DHT11.c DHT11.h 三.OLED显示屏 1.模块介绍 2.软件实现 OLED.c OLED.h OL ...
- 基于STM32的DHT11温湿度传感器设计
文章目录 前言 一.DHT11温湿度传感器是什么? 二.DHT11驱动程序详解 1.相关宏定义 2.输入输出GPIO配置 2.GPIO初始化设计 3.检测DHT11是否正常工作 4.读取DHT11数据 ...
- 《Arduino实验》实验二:DHT11温湿度传感器检测当前环境温湿度
更完整.更全面的Arduino实验存放在我的github上,有需要的可以到github上查看和下载. 当然如果你觉得有帮助,给一个小小的star和fork就谢谢您了. gtihub网址:https:/ ...
最新文章
- java修改 nsf中的数据_最新NSF申请指南中的一些重要改动
- LVS+Keepalived-DR模式负载均衡高可用集群
- should not buy processed foods on the street
- 2009-08-02 XEIM 2.8 beta 迅速发布
- mysql 修改表属主_mysql主从配置实现一主一从读写分离
- LaTeX —— 特殊符号与数学字体
- Sql JOIN 一张图说明
- 关于动态库和静态库的总结
- MATLAB数字水印技术实现
- @UPC 6605 @福建OI2018 [FJOI2018] @ 洛谷 P4578 所罗门王的宝藏 (矩阵行列规律)
- [0CTF 2016]piapiapia BUUCTF 详细writeup
- BGP路由属性和选路
- 如何将乱码转化为UTF-8
- svm和k-最近邻_使用K最近邻的电影推荐和评级预测
- 微信公众平台相关信息
- win7有杂音----彻底解决
- Fastjson解析错误---NumberFormatException: For input string: Nov 11, 2015 12:22:12 PM
- 放大电路的用途与成:低频电压放大器放大电路
- 031 Rust死灵书之Vec实现insert和remove
- python基础练习3(学python的多多少少听说过)