diff --git a/readme.md b/readme.md index 385ffa3..1e216c1 100644 --- a/readme.md +++ b/readme.md @@ -1,35 +1,39 @@ #### 支持的设备类型 - -- L10/L11 + 只要为同一类型则协议均是通用 +- L10/L11/L12 - H01BT/H01PRO - F01/F01PRO -- F08 +- F08/F08B -- G02 +- G01 - H03 - H018 +- B02PRO/B03PRO/B07PRO -- HD01BT/F01B +- HD01BT/F01B/H09B/H09TC/H08TC/Meta10/HB02/H08B -- L01/L02/L03/L01B/L05 +- L01/L02/L03/L01B/L05/J02/J01/EKS9919/EKS9918/J02B -- L08 +- L08/L06 - PCH01W +- H10TC +#### 协议对应文档,及时更新 + 如果上面未找到对应设备类型可在此链接查看最新信息 + +[品传蓝牙模块](https://pbcmmzj3pe.feishu.cn/mindnotes/bmncnHB7qkM3bBocuktOEdNP6ib#mindmap) #### 算法/推送文档地址  [品传设备平台](https://console-docs.apipost.cn/preview/3ec81051c6579c1d/9854ba99c0860340) -#### -#### 协议对应文档 +#### 蓝牙Demo + 只要为同一类型则协议均是通用,demo也是通用 -[品传蓝牙模块](https://pbcmmzj3pe.feishu.cn/mindnotes/bmncnHB7qkM3bBocuktOEdNP6ib#mindmap) - -#### +[Demo](http://git.ybhdmob.com:3000/pckj/BluetoothDemo) \ No newline at end of file diff --git a/蓝牙秤/DHM301A-段式液晶人体秤通讯协议-品传小程序.doc b/蓝牙秤/DHM301A-段式液晶人体秤通讯协议-品传小程序.doc new file mode 100644 index 0000000..6619b8f --- /dev/null +++ b/蓝牙秤/DHM301A-段式液晶人体秤通讯协议-品传小程序.doc @@ -0,0 +1,212 @@ + + DHM301A段式液晶人体秤通讯协议 + +|2023-02-08 |人体秤小程序通讯协议第一次修订 | +| |说明:串口通讯波特率为115200 | +| |人体秤工作模式:独立工作模式(用户自主测量,打| +| |印) | +| |小程序控制模式(命令测量、打印) | +| |人体秤测量模式:身高体重体脂模式(人体秤上电默| +| |认) | +| |身高体重模式 | +| |人体秤测量模式可由小程序命令控制切换。 | +| |身高体重体脂模式下,体脂测量结束后需小程序返回| +| |数据用以人体秤显示、播报。 | +| |打印命令,一次命令内容不超过1k字节,可以分多次| +| |发送,多次发送时间间隔最少200ms。 | +| | | + +数据为ASCII码 +通讯格式:RS232串口,波特率115200,数据位8位,停止位1位,无奇偶校验 +数据以字符’$’结束 + +握手指令: +上位机发送:61$ +人体秤返回:6$ +指令说明:验证数据通讯正常 + +模式指令: +上位机发送:80$ +人体秤返回:8$ +指令说明:80$ + 为命令模式,即上位机控制模式,此模式下,人体秤收到测量命令后开始测量 + 。(小程序控制模式) + 81$ +为自动模式(人体秤上电默认),即用户手动输入年龄性别后,开始测量。 + +测量模式指令: +上位机发送:M0$ +人体秤返回:M$ +指令说明:M0$ 为身高体重体脂测量模式(人体秤上电后默认模式) + M1$ 为身高体重测量模式 + +开始测量指令: +上位机发送:K130$ +人体秤返回:(测量结果) +指令说明: + +|数据 |说明 | | +|K |数据开头 |固定不变 | +|1 |性别数据 |此例为男性 | +| |1表示男 | | +| |0表示女 | | +|30 |年龄数据 |此例为30岁,年龄范围限制10-80 | +|$ |数据结束 |固定不变 | + +人体秤每次测量完成后立即通过串口(或蓝牙)发送测量结果。发送数据格式如下: +身高体重模式: + W0665H1735$ +或 w6650H1735$ +说明:W字符开始的为体重分辨率0.1kg,此例为66.5kg,173.5cm + w字符开始的为体重分别率0.05kg,此例为66.50kg,173.5cm +体重分辨率人体秤菜单可以设置。 + + +身高体重体脂模式: +W0665H1735F02030147161405500703160508509320914525239710507429084808044$ +或 +W6650H1735F02030147161405500703160508509320914525239710507429084808044$ +数据说明: +W0665:表示体重66.5kg +w6650:表示体重66.50kg +H1735:表示身高173.5cm +F02030147161405500703160508509320914525239710507429084808044:为人体成分数据 + + +人体成分数据说明 +|数据 |长度(字节|说明 | | +| |) | | | +|F |1 |人体成分数据开 |固定不变 | +| | |始 | | +|0203 |4 |脂肪率数据 |此例为脂肪率20.3% | +| | | |正常参考范围:男性 10.0%-19.9% | +| | | |女性 20.0%-29.9% | +|0147 |4 |脂肪量数据 |此例为脂肪量14.7kg | +|1614 |4 |基础代谢数据 |此例为基础代谢1614Kcal | +|0550 |4 |体水分率数据 |此例为体水分率55.0% | +|07 |2 |体水分率评分数 |此例为体水分率评分07,正常范围7-9 | +| | |据 | | +|0316 |4 |骨骼肌率数据 |此例为骨骼肌率31.6% | +|05 |2 |骨骼肌率评分数 |此例为骨骼肌率评分05,正常范围7-9 | +| | |据 | | +|085 |3 |内脏脂肪指数数 |此例为内脏脂肪指数8.5 | +| | |据 | | +|09 |2 |内脏脂肪指数评 |此例为内脏脂肪指数评分09,正常范围| +| | |分数据 |小于10 | +|32 |2 |骨矿含量数据 |此例为骨矿含量3.2kg | +|09 |2 |骨矿含量评分数 |此例为骨矿含量评分09,正常范围7-9 | +| | |据 | | +|145 |3 |细胞外液数据 |此例为细胞外液14.5kg | +|252 |3 |细胞内液数据 |此例为细胞内液25.2kg | +|397 |3 |总水分量数据 |此例为总水分量39.7kg | +|105 |3 |蛋白质数据 |此例为蛋白质10.5kg | +| | | |正常参考范围:15.4%-20.8% | +| | | |体重的百分比 | +|074 |3 |无机盐数据 |此例为无机盐7.4kg | +| | | |正常参考范围:3.2%-5.8% | +| | | |体重的百分比 | +|29 |2 |身体年龄数据 |此例为身体年龄29岁 | +|0848 |4 |综合评分数据 |此例为综合评分84.8 满分100| +|08044 |5 |人体阻抗数据 |此例为人体阻抗804.4Ω | + + +最后结束字符’$’. + +体脂测量结果反馈指令: +上位机发送:F020301471614$ +人体秤返回:F$ +说明:此命令为体脂模式下,人体秤测量结束后,上传测量结果,然后上位机需再次下 +发脂肪率、脂肪量和基础代谢3个数据用以人体秤显示并播报。 +指令数据说明: +|数据 |长度(字节)|说明 | | +|F |1 |人体成分数据 |固定不变 | +|0203 |4 |脂肪率数据 |此例为脂肪率20.3% | +|0147 |4 |脂肪量数据 |此例为脂肪量14.7kg | +|1614 |4 |基础代谢数据 |此例为基础代谢1614Kcal | + + +最后结束字符’$’. + +打印机设置类指令: +1) 字体指令: +上位机发送:PT0$ +人体秤返回:P$ +指令说明:PT0$ + 设置打印字体24点阵,即字体24x24,一行可以打印32个字符(16个汉字 + )。 + PT1$ + 设置打印字体32点阵,即字体32x32,一行可以打印24个字符(12个汉字 + )。 + 人体秤上电默认24点阵字体 + + +2) 行间距指令: +上位机发送:PR003$ +人体秤返回:P$ +指令说明:该命令用于设置相邻两行字符的纵向间距(行间距),字符PR和$固定不变, + 中间3个字节表示点行,003表示3点行,1点行=0.125mm,点行范围为:000到25 + 5。 + 人体秤上电默认003点行 + +3) 允许/禁止上划线打印指令: +上位机发送:PU1$ +人体秤返回:P$ +指令说明:PU1$ 允许上划线打印 + PU0$ 禁止上划线打印 + 人体秤上电默认0,禁止上划线打印 + +4) 允许/禁止下划线打印指令: +上位机发送:PD1$ +人体秤返回:P$ +指令说明:PD1$ 允许下划线打印 + PD0$ 禁止下划线打印 + 人体秤上电默认0,禁止下划线打印 + +5) 打印内容指令: +上位机发送:PPxxxxxxxx$ +人体秤返回:P$ +指令说明:字符PP和$固定不变,中间为打印内容,整个指令长度不超过1k字节。可以分 + 多次命令打印,多次命令时间间隔最少为200ms。最后一次打印指令时建议内容 + 后面加4行空白行,即4个回车换行,以便打印机走纸,将打印内容完全漏出打 + 印机。 + +打印类指令说明:先设置打印机,再发送打印内容。若设置不变,下次打印可直接发送 + 打印内容。 +测量流程说明: +测量流程分两种模式,模式1为上位机控制模式,此模式下,只有上位机发送测量命令, +人体秤才开始,否则不测量。模式2为人体秤自动测量模式,此模式下,上位机发送测量 +命令无效,用户直接输入年龄性别后开始测量。 +模式1: + 小程序蓝牙配对成功 人体秤待机 + + 握手指令 身高体重体脂模式 测量指令 收到上位机测量命令 + + 发送80$指令 选择测量模式 身高体重模式 测量身高体重 +(控制/小程序模式) 体脂模式 + 测量体脂 测量完成 + 身高体重模式 + 测量结束上传测量结果 测量结束上传测量结果 + + 小程序返回体脂数据 小程序命令打印 + (用以人体秤显示播报) + 人体秤打印测量结果 + + 人体秤待机 + +说明:在蓝牙正常连接后,握手指令和80$指令发送一次即可,即测量完成后,再次测量 +时,可直接从“选择测量模式”开始,若测量模式不变,则可以从“测量指令”开始。 +模式2: + 人体秤待机 + + 用户输入年龄性别,按确认键 + + 人体秤开始测量身高体重 + + 身高体重测量结束,提示测量脂肪 + + 脂肪测量结束,显示并播报测量结果 + (身高体重,脂肪切换显示,频率2秒) + + 人体秤上传测量数据 + + 人体秤待机 diff --git a/蓝牙秤/PCHD200-人体秤通讯协议-郑州品传.doc b/蓝牙秤/PCHD200-人体秤通讯协议-郑州品传.doc new file mode 100644 index 0000000..6095d96 --- /dev/null +++ b/蓝牙秤/PCHD200-人体秤通讯协议-郑州品传.doc @@ -0,0 +1,26 @@ + + PCHD200人体秤通讯协议 + +数据为ASCII码 +通讯格式:RS232串口,波特率4800,数据位8位,停止位1位,无奇偶校验 + +人体秤每次测量完成后立即通过串口发送测量结果。发送格式如下: + +身高体重数据: +|数据|W |0665 |H |1735 |$ | +|说明|体重 |66.5kg|身高 |173.5cm|结束字符 | +| |数据 | |数据 | | | + + +或 +|数据|w |6425 |H |1735 |$ | +|说明|体重 |64.25k|身高 |173.5cm|结束字符 | +| |数据 |g |数据 | | | + +数据分两种,一种以W字符开始,另一种以w字符开始(用以区分体重显示分辨率),均 +以$字符结束 +W开始的数据为体重显示分辨率0.1kg +w开始的数据为体重显示分辨率0.05kg +例如:W0665H1735$ + 或 + W6425H1735$ diff --git a/蓝牙秤/PCHD300-人体秤通讯协议-郑州品传-20230204.doc b/蓝牙秤/PCHD300-人体秤通讯协议-郑州品传-20230204.doc new file mode 100644 index 0000000..d4154df --- /dev/null +++ b/蓝牙秤/PCHD300-人体秤通讯协议-郑州品传-20230204.doc @@ -0,0 +1,88 @@ + + PCHD300段式液晶人体秤通讯协议-定制流程 + +数据为ASCII码 +通讯格式:RS232串口,波特率4800,数据位8位,停止位1位,无奇偶校验 +数据以字符’$’结束 + +握手命令: +上位机发送:61$ +人体秤返回:6$ +说明:验证数据通讯正常 + +模式指令: +上位机发送:80$ +人体秤返回:8$ +说明:80$ +为命令模式,即上位机控制模式,此模式下,人体秤收到测量命令后开始测量。 + 81$ 为自动模式,即用户手动输入年龄性别后,开始测量。 + +开始测量命令: +上位机发送:K130$ +人体秤返回:(测量结果) +说明: +|数据 |说明 | | +|K |数据开头 |固定不变 | +|1 |性别数据 |此例为男性 | +| |1表示男 | | +| |0表示女 | | +|30 |年龄数据 |此例为30岁,年龄范围限制10-80 | +|$ |数据结束 |固定不变 | + +人体秤每次测量完成后立即通过串口(或蓝牙)发送测量结果。发送数据格式如下: +W0665H1735F02030147161405500703160508509320914525239710507429084808044$ +或 +w6650H1735F02030147161405500703160508509320914525239710507429084808044$ +数据说明: +W0665:表示体重66.5kg +w6650:表示体重66.50kg +H1735:表示身高173.5cm +F02030147161405500703160508509320914525239710507429084808044:为人体成分数据 + +人体成分数据说明 +|数据 |说明 | | +|F |人体成分数据开始 |固定不变 | +|0203 |脂肪率数据 |此例为脂肪率20.3% | +|0147 |脂肪量数据 |此例为脂肪量14.7kg | +|1614 |基础代谢数据 |此例为基础代谢1614Kcal | +|0550 |体水分率数据 |此例为体水分率55.0% | +|07 |体水分率评分数据 |此例为体水分率评分07,正常范围7-9 | +|0316 |骨骼肌率数据 |此例为骨骼肌率31.6% | +|05 |骨骼肌率评分数据 |此例为骨骼肌率评分05,正常范围7-9 | +|085 |内脏脂肪指数数据 |此例为内脏脂肪指数8.5 | +|09 |内脏脂肪指数评分数|此例为内脏脂肪指数评分09,正常范围小| +| |据 |于10 | +|32 |骨矿含量数据 |此例为骨矿含量3.2kg | +|09 |骨矿含量评分数据 |此例为骨矿含量评分09,正常范围7-9 | +|145 |细胞外液数据 |此例为细胞外液14.5kg | +|252 |细胞内液数据 |此例为细胞内液25.2kg | +|397 |总水分量数据 |此例为总水分量39.7kg | +|105 |蛋白质数据 |此例为蛋白质10.5kg | +|074 |无机盐数据 |此例为无机盐7.4kg | +|29 |身体年龄数据 |此例为身体年龄29岁 | +|0848 |综合评分数据 |此例为综合评分84.8 | +|08044 |人体阻抗数据 |此例为人体阻抗804.4Ω | + +最后结束字符’$’. + +测量流程说明: +测量流程分两种模式,模式1为上位机控制模式,此模式下,只有上位机发送测量命令, +人体秤才开始,否则不测量。模式2为人体秤自动测量模式,此模式下,上位机发送测量 +命令无效,用户直接输入年龄性别后开始测量。 + +模式1: 模式2: + 人体秤待机 人体秤待机 + + 收到上位机测量命令 用户输入年龄性别,按确认键 + + 人体秤开始测量身高体重 人体秤开始测量身高体重 + +身高体重测量结束,提示测量脂肪 身高体重测量结束,提示测量脂肪 + +脂肪测量结束,显示并播报测量结果 脂肪测量结束,显示并播报测量结果 +(身高体重,脂肪切换显示,频率2秒) +(身高体重,脂肪切换显示,频率2秒) + + 人体秤上传测量数据 人体秤上传测量数据 + + 人体秤待机 人体秤待机