k30u蓝牙支持的协议(KT6368A蓝牙芯片双模用户手册)

概述1.1 简介KT6368A芯片是一款支持蓝牙双模的纯数据芯片,蓝牙5.1版本。芯片的亮点在超小尺寸,超级价格。以及简单明了的透传和串口AT控制功能。大大降低了嵌入蓝牙在其它产品的开发难度和成本

同时支持SPP和BLE 。但是只能任选其中一个协议使用。

备注:这款芯片最大的特点,就是成本低,使用简单,生产简单。无其他。同时支持低功耗详见3.7章节

1.2 硬件说明

k30u蓝牙支持的协议(KT6368A蓝牙芯片双模用户手册)(1)

细节

参数说明

UART接口

标准串口,TTL电平,波特率可设,连接PC需要电平转换[如:CH340G--USB转TTL]

输入电压

建议给3.3V的电压【2.2V--3.4V】

额定电流

芯片上电启动是20mA,马上进入低功耗广播20uA 和唤醒4mA交替。 连接成功就一直都是4mA

低功耗电流

芯片算的是平均电流,因为内部是不断的低功耗、唤醒交替进行

工作温度

[-40度] -- [80度]

湿度

5% ~ 95%

主芯片型号

KT6368A[SOP8][管装出货]-----KT6328A[SOP8][管装出货]

1.3 芯片功耗初步说明

1、我们目前分KT6368A 和 KT6328A两个版本

序号

操作说明

第一步

搭建好芯片的外围电路,供电3.3V即可。蓝牙天线可以直接焊一根线即可

第二步

查询芯片的2脚是否开机有1秒钟的高电平输出,接个指示灯出来

第三步

连接好电脑的串口助手,看看芯片的TX脚是否有数据返回,115200的波特率

第四步

做自己实际的板子,搭配MCU进行调试

1.5 硬件设计--脚位说明

序号

Layout的注意事项

UART注意点

  1. 我们芯片内部的IO电压是3.3V 。主要看1脚的输入电压
  2. 和外部的MCU相连接时,RX和TX请串电阻,大概100欧姆就可以了。MCU超过3.3V的IO电平,那么这个电阻可以加大到1K。
  3. 芯片的8脚是KT6368A的TX,连接MCU的RX。 7脚是我们的RX,连接MCU的TX

电源注意点

芯片的供电电压,最高位为3.4V 。一定不能超过这个电压,最好给3.3v

2脚注意点

第2脚,为连接状态脚。连接成功输出高电平。未连接则是高组态。调试时建议接一个指示灯出来。或者连接到外部MCU 。注意下拉一个10K电阻到地

细节描述

  1. 请严格按照我们给出的供电电压,去供电 。电源这一块没什么太大的讲究
  2. 蓝牙天线,按照我们给出的封装画就行。技术很成熟了,基本上距离都超过15M
  3. 芯片的7/8脚两个必须预留测试点,这个是升级接口,以防万一要升级

升级的测试点排列,建议是 1/7/8/3 这4个脚顺序排列。引出测试点,很重要

1.6 硬件设计--蓝牙天线的说明

k30u蓝牙支持的协议(KT6368A蓝牙芯片双模用户手册)(2)

(1)、注意芯片的蓝牙天线引脚,出去,要预留安全间距

(2)、天线四周,一定要注意,包地处理

(3)、天线周边一定要隔空,不要铺绿油,背面和正面不要有金属

1.7 硬件设计--蓝牙搭配的晶振说明

(1)、由于蓝牙对频偏要求比较高,所以晶振的品质对蓝牙的性能至关重要,选型过程中

必须保证晶振的一致性和稳定性。晶振的频率偏差必须≤±10ppm,负载CL 推荐12pF。

(2)、体积无要求的,推荐我DEMO上面的晶振,成本低,性能好

(3)、体积要求小的,推荐24M-3225的,成本稍高,性能好

建议直接用我们配套的晶体,相信比外面随意采购的要优惠和质量保障

串口通讯协议

AT串口指令作为一种在控制领域常用的通信,我们进行了优化和定制,这样大大简化了用户使用的难度,请严格按照我们给出的指令格式进行操作

3.1 通讯格式

支持异步串口通讯模式,通过串口接受上位机发送的命令通讯标准:115200 bps --- 用户可以通过串口指令设置详见3.2数据位 :8 停止位 :1 校验位 :none 流控制 :none

注意:所有的指令的设计,都是有规律的,不是随意划分的,可以对照下面找一下规律

控制指令格式:AT <CMD>[<param>]\r\n ---- 所有的都是字符,不是十六进制数

数据反馈格式:<IND>[<param>]\r\n

数据反馈格式:<IND>[<param>]\r\n

数据特性

详细说明

AT

控制指令是控制主机给BT201的控制命令,以“AT ”开始

<CMD>

后面紧跟<CMD>控制 ,通常是2个字符

指令

[<param>]

如果CMD后面有参数,则紧跟着[<param>]

\r\n

最后以”\r\n”结束,字符型为换行,windows就是回车键。十六进制为0x0D,0x0A

<IND>

1、数据反馈是蓝牙把各种状态和数据信息反馈给主机,以<IND>作为开头

,<IND>是反馈指

数,则紧跟<IND>之后继续传输<param>参数。

2、后面紧跟着的是芯片回传的参数

这里<CMD>重点说明:

由于芯片内部是跑的系统,主体的程序划分如下:

功能划分

命令

备注

公共指令特性

AT C?

公共指令是以AT C开头,后面的“?”就是具体细化的功能命令

音乐指令特性

AT A?

音乐指令是以AT A开头,后面的“?”就是具体细化的功能命令

蓝牙指令特性

AT B?

蓝牙指令是以AT B开头,后面的“?”就是具体细化的功能命令

这里<CMD>重点说明:

由于芯片内部是跑的系统,主体的程序划分如下:

举例

命令

备注

控制指令1

AT CZ\r\n

代表系统复位

查询返回的结果1

QA 01

详见4.4.1 返回的查询信息永远是Qn xx 其中n和前面是相对应的

查询返回的结果2

QG 01

详见4.2.12

3.2 通讯指令举例

公共部分--控制指令 -- 说明

CMD

对应的功能

详细说明

AT CT

设置波特率

后面有参数,详见3.3 举例:AT CT01/r/n

AT UT

设置蓝牙BLE的广播间隔

后面有参数,详见3.11 举例:AT UT01/r/n

AT CZ

芯片复位

芯片软件复位,详见3.3 举例:AT CZ/r/n

AT CW

芯片恢复出厂设置

恢复出厂设置,清除所有之前记忆的参数 ,详见3.3 举例:AT CW/r/n

AT CL

芯片低功耗设置

详见3.7章节

AT CR

芯片上电回传信息关闭

详见3.10章节 .注意默认是开启的

AT BM

设置BLE蓝牙名称

详见3.4章节

AT BN

设置BLE的MAC地址

详见3.4章节

AT BD

设置SPP蓝牙名称

详见3.4章节

AT BS

设置BLE连接密码

详见3.4章节 ,此功能没有实现,主要在于手机的兼容性不行

AT QT

查询系统的波特率

详见3.3章节.返回的数据为

AT QL

查询系统的低功耗状态

详见3.7章节.返回的数据为QL 00

AT TM

查询BLE蓝牙名称

详见3.5章节

AT TN

查询BLE蓝牙地址

详见3.5章节

AT TD

查询SPP蓝牙名称

详见3.5章节

AT TS

查询BLE蓝牙连接密码

保留

测试推荐的指令

AT BM1234\r\n -- 设置BLE的名称

AT BN112233445566\r\n --ble的地址

AT BD223344\r\n -- 设置SPP的名称

AT CT01\r\n

AT CZ\r\n

AT CW\r\n

AT QT\r\n

AT TM\r\n

AT TN\r\n

AT TD\r\n

k30u蓝牙支持的协议(KT6368A蓝牙芯片双模用户手册)(3)

3.3 指定芯片的波特率和复位和恢复出厂设置【CT】[CZ][CW]

AT CT01\r\n == 9600

AT CT06\r\n == 256000

AT CT11\r\n == 31250

AT CT02\r\n == 19200

AT CT07\r\n == 512000

AT CT12\r\n == 2400

AT CT03\r\n == 38400

AT CT08\r\n == 230400

AT CT13\r\n == 4800

AT CT04\r\n == 57600

AT CT09\r\n == 460800

AT CT05\r\n == 115200

AT CT10\r\n == 1000000

1、一旦设置了波特率之后,芯片会记忆。下一次开机,波特率就变成了您所设置的.当然可以查询[AT QT]

2、设置完波特率之后,请等待1秒钟,再发送复位[AT CZ],或者断电一下即可

3、如果要恢复默认的波特率,请发送恢复出厂设置的命令,此时芯片会自动擦除所有的配置

4、由于我们芯片的主频很高,所以尽量把串口的波特率调高,越高越好

3.4 设置BLE蓝牙的名称和地址[BM][BN][BD]

AT BMBLE-1234\r\n

设置蓝牙名称为“BLE-1234”

AT BN112233445566\r\n

设置BLE的地址。手机端显示的地址是:66 55 44 33 22 11

AT BDSPP-1234\r\n

设置蓝牙名称为“SPP-1234”

1、设置蓝牙名称之后,需要让芯片复位,发指令或者断电上电都可以,这样会显示新的蓝牙名称。我们默认的蓝牙名为“KT6368A-BLE”。设置的蓝牙名最长为“30”个字节,请不要超过这个范围

2、如果AT指令修改蓝牙名称之后,注意,你的手机端可能没有同步更新,还是显示之前的名称

  1. 、因为你只修改了蓝牙的名称,蓝牙的MAC地址是没有变化的,所以手机端那边是不会更新名字
  2. 、你要做的就是,换一台手机搜索试试,或者之前的手机删掉配对信息,重新在搜索

(3)、只要设置了蓝牙名,蓝牙名一定是更新过来了的,不用怀疑。芯片上电也会返回蓝牙名给您查看

3.5 查询BLE蓝牙的名称和地址[TM][TN][TD]

AT TM\r\n

返回TM 1234\r\n 代表蓝牙名为1234

AT TN\r\n

返回TN 12345678AABB\r\n BLE的蓝牙地址:0xBB、0xAA、0x78、0x56、0x34、0x12

AT TD\r\n

返回TD SPP1234\r\n 代表蓝牙名为SPP1234

  1. 这里重点描述一下蓝牙的MAC地址:BLE和SPP 的MAC地址是共生的,所以设置一个就行了
  2. 、芯片在第一次通电的时候,会自动生成蓝牙的MAC地址,并且是随机生存。这样做的好处是免除了 单独设置地址的问题
  3. 、同样经过优秀的算法,出现重复的概率是百万分之一。蓝牙的mac地址是标准的,6个字节

2、SPP的地址,是在BLE地址的最高字节加1处理的 。所以只用设置BLE的地址即可。SPP的地址也就没做查询指令,可以自己计算一下

3.6 芯片上电信息和串口调试助手

k30u蓝牙支持的协议(KT6368A蓝牙芯片双模用户手册)(4)

测试环境:KT6368A测试板 串口软件:串口调试助手_aithinker_serial_tool_v1.2.3

  1. 接收窗口,芯片返回给电脑的数据。这个是固件的版本以及最后修改的日期

==》这个数据的返回,无任何意义。主要是方便客户,上电测试串口是否连接正常,以及查看芯片运行状态

==》芯片上电是一定会返回的,如果没有返回,说明硬件连接有误

TM KT6368A-BLE-1.7

代表的是当前芯片的BLE的名称,以及对应手册的版本为1.7

TN 220CB1C8A22C

代表的是当前芯片的BLE的地址

TD KT6368A-SPP-1.7

代表的是当前芯片的SPP的名称,以及对应手册的版本为1.7

TS 220CB1C8A22D

代表的是当前芯片的SPP的地址 此地址是根据BLE的地址计算得来的

T4 01

代表的是当前BLE功能是打开的,详见3.8章节

T5 01

代表的是当前SPP功能是打开的,详见3.8章节

QL 00

代表的是当前是正常工作模式,详见3.7章节

这里面的很多返回的信息,用户可以不必关注,因为这个存在的目的是方便客户初次调试的时候看

3.7芯片低功耗指令说明【CL】

AT CL00\r\n

不进入低功耗模式。下次上电有效 。设置之后注意要重新上电

AT CL01\r\n

进入低功耗模式 。下次上电有效。设置之后注意要重新上电 --- 芯片默认进入此状态,不用设置

  1. 这个指令,是记忆型的,发送指令成功之后,芯片就存起来。下次上电就切换了。同时发了这个指令芯片会自动复位
  2. 这个指令,由于很多地方受限,所以默认是关闭的
  1. 设置低功耗之后。上电芯片的UART还是会主动返回相关的数据 。
  2. 、但是所有的AT指令全部失效了,因为芯片会进入低功耗,所有的外设全部关闭
  3. 、当连接成功之后,芯片就处于正常工作状态。但是此时只具备透传的功能
  4. 、所以需要设置AT指令的地方,必须切换回非低功耗模式,也就是AT CL00\r\n

4、当然芯片,出厂上电默认是,正常工作模式。

  1. 如果进入低功耗模式,芯片的所有IO口,都是高阻态。这点很重要
  2. 如果可以的话,芯片的2/7/8脚,接上拉电阻。来确定我们的IO状态
  3. 、因为有的客户反映,芯片进入低功耗模式之后。他的MCU不断的收到FF的数据
  4. 、所以这种应用,尽量的用KT6328A的2脚来确定,芯片是否连接。未连接则不接收任何数据
  1. 设置为低功耗模式之后,芯片在未连接状态下 。开机的前5秒可以识别AT指令,5秒之后就不能识别AT指令
  2. 、因为要低功耗,所以芯片的所有外设全部关闭
  3. 、但是很多客户的应用可能是在低功耗状态下需要修改一些参数。所以设定5秒超时之后才进入低功耗

而这5秒之类,是可以正常识别AT指令的

  1. 、如果需要AT指令设置参数,尽量在连接状态下发送 。因为连接之后,我们自动退出低功耗模式

序号

电流

说明

AT CL01

状态,进入低功耗工作模式

开机瞬间

11mA

1、芯片开机需要初始化外设。瞬间电流比较大

2、这个时间维持300ms,就进入低功耗状态了

工作状态-未连接

20uA

4mA 交替

3、芯片正常工作状态,正常对外广播,处于一个睡眠、唤醒广播、睡眠这样的周期性状态 。目的为了节省功耗

4、周期500ms。100ms广播一次,400ms睡眠

5、广播一次电流就是4mA。进入睡眠,就变成20uA

工作状态-以连接

4.3mA

6、当连接成功之后,芯片就不再进入睡眠。而是一次处于工作状态了

AT CL00 进入正常工作模式

开机瞬间

25mA

1、芯片开机需要初始化外设。瞬间电流比较大

2、这个时间维持300ms,就进入5mA工作状态

不管连接还是未连接。

5mA

3、芯片一直处于工作状态。电流很小的波动,忽略不计

k30u蓝牙支持的协议(KT6368A蓝牙芯片双模用户手册)(5)

  1. 可以看到开机瞬间的电流在5mA ,随后降到4mA 等待几秒之后,就进入低功耗广播状态了
  2. 低功耗的广播状态,平均电流是185.4uA
  3. 最低的时候,是20uA 。由于此uA表软件采样率不够,所以曲线上面体现不出来

k30u蓝牙支持的协议(KT6368A蓝牙芯片双模用户手册)(6)

AT VER2.0-20211111

TM KT6328A-BLE-2.0 --- 手机端会搜索到这个名字

TN 3031E54D77D9

T4 01

T5 00

QL 01 -- 进入低功耗模式

3.8芯片BLE使能和SPP使能[B4][B5][T4][T5]

AT B401\r\n

开启BLE的功能。当然AT B400\r\n则是关闭了

AT B500\r\n

关闭SPP的功能。当然AT B501\r\n则是开启了

AT T4\r\n

查询BLE功能是否开启。芯片会返回T4 01或者T4 00

AT T5\r\n

查询SPP功能是否开启。芯片会返回T5 01或者T5 00

  1. 关闭BLE功能之后,必须重新上电,此功能才生效 。当然开启也是一样的
  2. 只用设置一次,芯片自动保存参数,下一次不用设置了
  3. 关闭BLE功能之后,手机就搜不到BLE的名称了
  1. 关闭SPP功能之后,必须重新上电,此功能才生效 。当然开启也是一样的

只用设置一次,芯片自动保存参数,下一次不用设置了。关闭SPP功能之后,手机就搜不到SPP的名称了

3.9芯片返回的错误信息说明【ER】

ER 1\r\n

接收的数据帧不对

ER 2\r\n

接收的命令不存在,也就是你发的AT KK这样的字符串查找不到

ER 3\r\n

接收的AT指令,没有收到回车换行,也就是\r\n

ER 4\r\n

发送的指令给的参数超范围了,或者指令的格式不对 。请检查您的AT指令

ER 7\r\n

MCU发送数据给手机,但是手机端没有打开notify 。在ble连接成功状态下

ER 8\r\n

保留--无意义

芯片内部对一些错误的状态,会进行实时的反馈。具体的请对照上面的表格

重点描述一下notify [监听],手机端的测试APP连接上蓝牙芯片之后,必须打开notify。蓝牙芯片才能发送数据给手机。手机发数据给蓝牙芯片,用write这个特征就足够了。

3.10芯片上电回传信息关闭指令【CR】

AT CR00\r\n

关闭上电的回传信息 。设置之后注意要重新上电

AT CR01\r\n

开启芯片上电的回传信息 。下次上电有效。设置之后注意要重新上电

  1. 有的客户反馈,芯片上电主动返回的信息,很烦人。所以我们就新增一个指令来关闭这个

k30u蓝牙支持的协议(KT6368A蓝牙芯片双模用户手册)(7)

  1. 注意,这个默认芯片出厂是打开的。关闭之后会存起来,就永久的关闭了
  2. 同时,也会关闭芯片主动返回的OK 或者ER X的回传信息

3.11 指定芯片的BLE的广播间隔【UT】

目前此功能,仅限于KT6328A的版本,也就是单模BLE的低功耗版本

对应的指令

代表的含义

参考的功耗

AT UT00\r\n

0--对应--250ms 广播间隔

平均功耗是300uA

AT UT01\r\n

1--对应--500ms 广播间隔

平均功耗是180uA

AT UT02\r\n

2--对应--750ms 广播间隔

平均功耗是140uA

AT UT03\r\n

3--对应--1000ms 广播间隔

平均功耗是100uA

AT UT04\r\n

4--对应--1500ms 广播间隔

平均功耗是70uA

AT UT05\r\n

5--对应--2000ms 广播间隔

平均功耗是62uA

AT UT06\r\n

6--对应--3000ms 广播间隔

平均功耗是40uA

AT UT07\r\n

7--对应--4000ms 广播间隔

平均功耗是30uA

k30u蓝牙支持的协议(KT6368A蓝牙芯片双模用户手册)(8)

1、一旦设置了广播间隔参数之后,芯片会记忆。下一次开机,广播间隔就变成了您所设置的.不支持查询

2、但是芯片每次上电会主动的返回当前的连接间隔参数,详见上面的截图

3、如果要恢复默认的广播间隔,请发送恢复出厂设置的命令,此时芯片会自动擦除所有的配置

4、具体的间隔时间,还是要根据自己的产品,来定义。因为广播间隔越长,手机搜索到的时间就越长

蓝牙透传的详细说明--BLE

目前支持BLE纯数传,芯片可以实现透传。目前BLE和SPP均只能作为从。也就是“SERVER”端。

请注意,一旦蓝牙被连接之后,芯片自动进入透传模式。不再识别AT指令 。一定要在app里面去搜索

BLE的透传说明

1、单次吞吐的数据最大为1024个字节,支持16位或者128位的UUID --- 128位的需要特别定制

2、如果使用BLE作为数传,请连接模块的“KT6368A-BLE”这个蓝牙名

3、当然可以自己修改BLE的蓝牙名以及MAC地址了,通过AT指令

4.2 BLE的UUID说明

1、主UUID是“FFF0”

2、特征1的UUID是“FFF1”,特征是“WRITE_WITHOUT_RESPONSE ”“NOTIFY”

3、特征2的UUID是“FFF2”,特征是“READ ”“NOTIFY”

4、特征3的UUID是“FFF3”,特征是“WRITE_WITHOUT_RESPONSE”

  1. 如果需要特别的UUID,可以联系我们定制。-- 请注意列清楚需求,特征,uuid等等信息,越详细越好

BLE透传效果演示:https://v.qq.com/x/page/q07660m1bta.html

4.3 BLE的测试说明

1、安卓手机的ios手机[苹果],推荐使用“BLE调试宝”软件

2、苹果的可以直接在“APP Store”里面搜索下载

3、安卓的,我们会在资料包里面提供安装的程序

4、请注意,安卓的手机也是可以测试BLE的,测试BLE不是一定只能用苹果的手机

5、安卓的BLE不是不能用,而是不好用,安卓的版本必须是在4.3版本以上的才支持BLE

6、正因为安卓的BLE不好用的原因,所以才会有双模,安卓用SPP。苹果用BLE

7、因为苹果如果要用SPP,这需要买MFI认证芯片,超级贵,目前也没人用了

8、如果默认没有修改过蓝牙名称的,连接“KT6368A-BLE”这个蓝牙名

9、BLE测试说明演示视频:https://v.qq.com/x/page/o0766ubm78n.html

4.4 BLE的手机端app测试说明--lightblue测试

k30u蓝牙支持的协议(KT6368A蓝牙芯片双模用户手册)(9)

k30u蓝牙支持的协议(KT6368A蓝牙芯片双模用户手册)(10)

k30u蓝牙支持的协议(KT6368A蓝牙芯片双模用户手册)(11)

k30u蓝牙支持的协议(KT6368A蓝牙芯片双模用户手册)(12)

第一步:

  1. 启动lightblue的app
  2. 这里是安卓测试环境
  3. Ios的界面略有不同
  4. 要打开定位权限
  5. 当然也有很多其他的测试app ,操作略有不用

第二步

  1. 连上芯片之后的界面
  2. 可以看到名字和服务
  3. 点击“箭头”

第三步:

  1. 找到需要的服务
  2. 也就是FFF1
  3. 点击

第四步:

  1. 打开notify
  2. 这样KT6368A收到数据之后,就可以发送给手机了
  3. 手机发数据,直接发就行了,KT6368A会直接串口转发出去

1、注意测试的时候,最好打开手机的定位权限,因为很多app需要这个权限

2、无论是用户自己开发app还是微信小程序,操作的步骤和上面截图也是一样的

3、推荐用户只用第一个特征,也就是FFF1 .他的特征是写和监听,足够使用了

4、基础的问题,请自行百度解决。其实这些描述,网上也是很容易找的,不复杂

4.5 BLE的大数据量测试

k30u蓝牙支持的协议(KT6368A蓝牙芯片双模用户手册)(13)

k30u蓝牙支持的协议(KT6368A蓝牙芯片双模用户手册)(14)

上位机通过uart单次发送1832

个字节的数据

这个是接收完成的截图

总共的耗时:220ms的样子

以上测试的数据,是建立在我们芯片设置的连接间隔基础上的测试

其实缩短连接间隔,也是可以加快数据的通信。但是同时也增加的功耗

注意,这里手机收到的数据,还是基本遵循20个字节分包。因为我们芯片内部默认设置的最大包的长度是20个字节

正常的流程,是APP那边连接完蓝牙芯片之后,可以主动发起请求MTU【最大通信包长度】--网上可以自己搜搜

设置了MTU之后,单次的数据包,就不再是20个字节了。从而加快的数据交互的速度

4.6 BLE的广播包数据说明--advertisData

这里我们在广播包里面,添加了芯片蓝牙的MAC地址

对比右边的截图,即可知道规律

这里我们称之为:advertisData

做这个的目的,有如下原因

  1. 微信小程序开发:无法直接获取蓝牙芯片的mac地址,没有相应的API,所以可以通过这个获取到,具体网上可以搜一下
  2. APP开发--IOS端,也没办法直接获取MAC地址,也是通过这个方式得到蓝牙芯片的MAC地址
  3. APP开发--安卓端,没有这个问题,直接通过API时可以获取到蓝牙芯片的mac地址的。所以用不用这个功能,都无所谓

k30u蓝牙支持的协议(KT6368A蓝牙芯片双模用户手册)(15)

蓝牙透传的详细说明-- SPP

Spp走的还是经典蓝牙的2.1的协议,不推荐使用了,新产品建议直接使用BLE 。要在系统里面先连接KT6368A-SPP

SPP的透传说明

1、单次吞吐的数据最大为1024个字节。需要连接“KT6368A-SPP-04”

2、如果使用SPP作为数传,请不要主动连接模块的“KT6368A-BLE”这个蓝牙名,或者自己设置的BLE蓝牙名

3、注意SPP是属于经典蓝牙里面的一个子链路而已。

4、SPP数传和BLE是互斥的,如果你只用SPP的数传,那么请关闭掉BLE。

SPP的透传效果演示说明SPP透传效果演示:https://v.qq.com/x/page/b0766jqw0p5.htmlSPP的透传测试说明

1、安卓手机的测试使用“蓝牙串口”这个app,可以在“应用宝”里面下载

2、如果默认没有修改过蓝牙名称的,连接“KT6368A-SPP”这个蓝牙

3、SPP测试说明演示视频:https://v.qq.com/x/page/e0766bz15fw.html

SPP的大数据量的透传演示视频:

https://v.qq.com/x/page/c0843j975hl.html

测试的方法,可以看一下我们资料包里面的视频演示。

关于AT指令和透传数据的详细说明

1、目前我们的串口指令,支持AT指令,同时支持蓝牙数据透传

  1. AT指令,是存在于整个芯片的生命周期,只要芯片初始化蓝牙之后,那么蓝牙数据透传,就会一直在后台运行,无论是连接还是未连接状态,都支持AT指令
  2. 但是请留意,我们还有一个低功耗的模式,详见3.7章节的详细说明

问题1

什么是蓝牙透传,有什么特点呢?

答疑

  1. 蓝牙数据透传,指上位机MCU通过串口,发任何的数据,蓝牙芯片收到之后会直接转发给手机端
  2. 同时,手机端发送任何的数据,蓝牙芯片都会通过串口下发给MCU,通过串口uart的形式

3、我们的方案中,蓝牙透传,是不需要任何的指令或者设置的

问题2

芯片是如何区分AT指令和透传的数据呢?

答疑

  1. 对于MCU发送的指令,只要不是正常的AT指令,我们都会透传出去,举例说明如下:

MCU端发送的数据

说明

AT CT00\r\n

这个就是正常的AT指令,是不会被透传出去的。KT6368A会直接处理

AT CT00

这个就是异常的指令,是会被透传出去的,因为没有加换行,KT6368A也会返回ER 7

KT CT00\r\n

这个也会被透传出去,因为他不是AT指令开头

1234AT CM00\r\n

这个也会被透传出去,因为他的起始数据不是AT开头。AT的指令仅仅只是在中间,所以会被透传

12121212121212kkk

这个就是纯粹的透传数据了,所以会被透传至手机

至于这些透传的数据,如何去处理,就留给聪明的您去自由发挥啦

  1. 对于手机端发送的数据,则更容易理解 --- SPP和BLE透传说明
  2. 、任何数据都是透传下去的。哪怕手机端发送的AT CT00\r\n这种正常的指令,也是被透传的

蓝牙芯片收到之后,也是不会处理的,只会串口输出给MCU

常见问题集锦

问题0

KT6368A是什么?有什么功能?特点是什么?适用于什么场景?配什么晶振呢?

KT6368A批量有优惠吗? 蓝牙天线预留的元器件怎么办,焊还是不焊?

回答

  1. KT6368A芯片属于蓝牙芯片,支持蓝牙5.1版本BLE。同时支持2.1版本的SPP功能
  2. KT6368A芯片支持连接手机,进行数据的双向交互,俗称“蓝牙透传”。通过UART接口

==》支持常用的AT指令,如:设置名称、设置地址、设置波特率等等。详见手册

  1. KT6368A芯片最大的特点,就是成本低,使用简单,SOP8的封装,也便于生产
  2. KT6368A芯片,适用于纯数据通讯的场合,如:客户自己开发APP、微信小程序等等
  3. 目前KT6368A的程序,只做了从机版本,只能和手机连接
  4. 搭配24M的晶振,参数是12pF的负载,精度是10ppM 。当然可以是3225封装或者其他

晶振的选择,直接影响的是蓝牙的频偏,也就是蓝牙距离,所以别随便用,到时候搜不到蓝牙名,就又跑来问为什么了,我们有提供晶振的样品。可以顺便拿几个回去测试

晶振的电容不用焊,建议预留,我们开机芯片会自动校准晶振的负载电容,软件处理的

8、芯片批量基本没什么优惠了,价格超级敏感的,请选择其它

9、蓝牙天线脚,预留的元器件,做样品直接不焊,接一个C1的电容即可。批量建议预留,预防做认证,或者天线要求极高的场合 。只接C1电容蓝牙距离也是妥妥的超过10米以上

问题1

KT6368A有测试板吗? 拿到芯片如何开始测试呢? 有什么硬件上的注意事项?

回答

芯片是SOP8封装的,总共的引脚就很少很少,使用也很简单。暂时没有测试模块

k30u蓝牙支持的协议(KT6368A蓝牙芯片双模用户手册)(16)

  1. 1脚供电。然后对地焊一个105的电容就够了。或者不接也行。量产加上
  2. 蓝牙天线,直接焊一根线就可以了,连接到芯片的4脚。实际做产品就加个2p7电容
  3. 主要是晶振比较难焊,不要紧,可以配套我们给的晶振,M49 2脚的焊一下就可以了
  4. 剩下的就是串口了,因为是3.3V的电平,所以3.3V的mcu直接直连即可
  5. 初次调试,建议使用串口调试助手调试 。USB转TTL的选用CH340G,某宝很多
  6. 为什么我们不做测试版,主要是成本的原因,所以麻烦客户自己动手

问题2

KT60368A支持微信小程序吗 ? 默认的uart波特率是多少?

回答

1、微信小程序,只是用到了BLE而已。也就是说支持BLE就可以支持微信小程序

2、芯片是BLE5.0的协议,微信小程序需要客户自己开发。我们只是透传,无其他作用

3、芯片给的uart缓存是1K字节 。默认的波特率是115200

问题3

KT6368A这颗芯片供电电压多少V?电流多少? 透传的速率是多少BLE和SPP

回答

  1. 建议给3.3V的电压【2.2V--3.4V】。
  2. 开机瞬间电流是26mA。稳定大概1秒左右,就降到4mA左右
  3. 芯片给的uart的缓存是1K字节,默认波特率是115200
  4. 对于BLE的速率,我们没有做完整的测试,需要高速传输的请自己测试一下
  5. SPP的传输,建议是单次最高不超过512字节一包数据 ,传输速率建议自己测
  6. BLE的传输速率,由于不同手机版本,都会有差别。所以速率没办法统一说明,用户自己测

问题4

如何区分AT指令和串口透传数据? 如何知道蓝牙是否连接?

回答

  1. AT指令,只在蓝牙未连接的状态有效。
  2. 只要蓝牙连接成功之后,就进入透传了,AT指令无效了。

3、这个要看芯片的第2脚。未连接输出低电平。连接成功输出高电平

4、当然,你可以接一个指示灯来看。或者也可以连接到mcu的gpio上面

问题5

如何确定芯片是否工作正常呢?以及串口接线正常呢?

回答

  1. 芯片上电瞬间,2脚会输出1秒钟高电平,然后马上拉低 。所以接1个指示灯来看一下状态。
  2. 芯片上电串口是一定会返回信息的。注意是一定,如果没收到,说明串口有问题

问题6

支持单芯片出货吗? 芯片是什么参数?什么包装?芯片出货稳定吗

回答

  1. 芯片是sop8封装,管装,100片一管 。当然量大可以自己去编带
  2. 芯片出厂会烧录好固件,用户可以直接使用
  3. 芯片出货很稳定,因为这个是大品类的应用,如自拍杆、防丢器、等等量大的产品用的多

所以成本就很低,

4、另外不支持讲价。价格也没什么空间了,请留意

问题7

支持修改uuid ,以及蓝牙名和蓝牙MAC地址吗

回答

  1. 支持修改蓝牙名 ,以及蓝牙MAC地址
  2. 当然也支持,AT指令读取 。Uuid暂时不支持客户自己修改,后期会加上

问题8

支持单芯片出货吗? 芯片是什么参数?什么包装

回答

  1. 芯片是sop8封装,管装,100片一管 。当然量大可以自己去编带
  2. 芯片出厂会烧录好固件,用户可以直接使用

问题9

硬件设计,有什么需要注意的地方吗?

回答

  1. 请严格按照我们给出的供电电压,去供电 。电源这一块没什么太大的讲究
  2. 蓝牙天线,按照我们给出的封装画就可以了。因为技术很成熟了,所以基本上距离都超过15M
  3. 芯片的7/8脚两个必须预留测试点,这个是升级接口,以防万一要升级
  4. 升级的测试点排列,建议是 1/7/8/3 这4个脚顺序排列。引出测试点,很重要

问题10

支持买几个样品,帮我修改波特率到9600吗?

回答

  1. 原则上不支持修改,因为几个样品,客户自己动手发AT指令改一下。我们默认是115200
  2. 实在要修改,收人工费500。

问题11

支持按照我们特定的uuid,以及服务,然后修改出样品吗?

回答

  1. 原则上,不支持修改。因为样品阶段是给客户测试功能的。用户可以先做硬件,后期确实是做产品的,我们会配合修改的。

测试芯片的性能。不可能几块钱的东西,我们都要工程师参与配合修改,这样效率太低了

2、实在需要修改的,可以,收人工费500修改

,

免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com

    分享
    投诉
    首页