切换到宽版
  • 13062阅读
  • 129回复

[无线]制作TC35661蓝牙透传转接板,继续榨干一元pos机价值 [复制链接]

上一主题 下一主题
离线2545889167
 

发帖
11537
M币
46556
专家
225
粉丝
4485
— 本帖被 香瑶 设置为精华,作者+3000M币+5专家(2017-11-17) —
好多坛友说,看不懂在干嘛。那我就简单说说是在干嘛。

前段时间风靡一时的一元POS上面有不少这种蓝牙模块,如图:

但是这个模块不能直接使用,因为他需要通讯协议。然后本贴的目的就是制作一个转接板,通过协议解析能使这个蓝牙模块能用来做串口的数据透传



----------------------------------------------分割线---------------------------------------------------
以下是原贴:


本来半年前就做好的东西了,因为各种各样的原因拖到现在才得闲发出来,算是让大伙久等了


相信大家之前都撸了不少一元pos机吧。
上面有款蓝牙模块tc35661,因为需要协议栈才能使用,所以困扰了不少人,大家基本的处理方法都是弃之堆灰。
直到论坛大神@yht7891984   给出了初始化和协议转接的方法,见:
stm32驱动蓝牙pos机里面的蓝牙模块 tc35661:http://bbs.mydigit.cn/read.php?tid=1682908
于是这个芯片得以能玩转。然而因为需要一些编程水平,所以大家的选择还是继续让这个模块继续堆灰。
于是我就有了个想法,做个透传模块,于是有了这个帖子:
不用拆芯片,不用调程序,直接在pos机板上玩TC35661蓝牙模块|http://bbs.mydigit.cn/read.php?tid=1690088

但是这样离方便使用,可以零基础玩转还有一些距离,为了达到最终完美,于是就有了本贴

首先需要找一款有两个串口的MCU,而且要体积小,成本低,于是选择了efm32tg110这个芯片(具体为什么成本低,楼下细说)
这款芯片的手册截图
arm cortex m3内核 运行在32mhz(强大运算足够处理大数据量下的协议栈)
32k flash+4kram
两个串口(这是最关键的)
有一路12位dac,两路12位adc(麻雀虽小,五脏俱全),方便和蓝牙搭配做便携式小设备
体积小,qfn封装
功耗低
等等


原理图


pcb

pcb的面积很小,就是一个正常蓝牙模块大小+天线+排针占用的面积
30mm*16mm



没有用上的引脚全部引出,其中包括完整的dac和adc,这样的好处是,以后如果有余力开发,可以直接用这个最小蓝牙板做一个无线的测量仪器,或者无线小控制器


打好的pcb


焊接完成的模块正面


焊接完成的模块背面


上电以后,可以在手机或者带蓝牙的电脑上搜搜到蓝牙模块 默认名称是 POSYSTORAGE_TC35661
设备地址码是唯一的,防止冲突(使用了单片机的唯一uid)


连接成功,正常通讯中
电脑通过串口发送mydigit


手机通过蓝牙发送2545889167 posystorage



正常联机的各种状态指示信息
第一行提示当前波特率
第二行提示已经初始化成功啦
第三行提示蓝牙已连接
第四号提示蓝牙已断开



板子正面有个LED
在初始化过程中快速闪烁。当初始化成功后,转为慢闪
当连接后,变成常亮。断开连接则为慢闪
制作TC35661蓝牙透传转接板,继续榨干一元pos机价值
板子有6个排针孔。
vcc和gnd是电源,不多说
rx tx为透传串口
swd和sck为板载mcu调试和程序下载接口。也可做普通io使用
楼下继续


[ 此帖被2545889167在2017-11-18 14:43重新编辑 ]
本文内容包含图片或附件,获取更多资讯,请 登录 后查看;或者 注册 成为会员获得更多权限
本帖最近打赏记录:共47条打赏M币+655专家+7
壹切皆有可能 M币 +13 謝謝分享 昨天 23:48
shcqma M币 +8 優秀文章 昨天 10:38
senya21 M币 +30 優秀文章 12-15
gavinfree 专家 +1 優秀文章 12-09
gavinfree M币 +5 優秀文章 12-09
沙漠臭屁虫 M币 +13 謝謝分享 11-28
sxsndhl M币 +30 優秀文章 11-27
hongo 专家 +1 優秀文章,加砖家! 11-27
cpuid M币 +30 優秀文章 11-21
gumpcn M币 +8 優秀文章 11-20
离线2545889167

发帖
11537
M币
46556
专家
225
粉丝
4485
只看该作者 1楼 发表于: 11-16
BT指令的详细解释

为了方便使用,实现一键零基础操作,我就搞了个BT指令集(参考市面上的某些无线模块的AT指令集)。这样一些简单的配置,比如模块改名或者更改波特率什么的就不需要程序编译程序,直接BT指令操作就行。

BT指令的使用方法:首先连接串口,给蓝牙模块上电,等待初始化完成(指示灯由快闪变为慢闪为初始化成功,或者串口提示初始化成功)

不用连接蓝牙(即在非连接状态下)
输入BT和BT+xxx指令来实现操作。
注意,所有的指令均不需要换行,不需要加回车
比如说,输入BT

回复BT OK!
表示串口正常,指令正确,工作正常


输入BT_ABOUT 显示关于信息,版本信息,设备mac,固件版本,作者信息
1.0版本的消息

1.1版本的消息


输入BT_LIST
将罗列 BT指令集支持的所有指令


BT_MSG_ON打开提示信息
如果打开了提示信息,会提示初始化状态,是否联机得到信息




BT_MSG_OFF关闭提示信息
所有提示信息均不显示
这样的好处是,如果是外接MCU使用,就可以真正透传消息,而不受提示信息的干扰

BT_RES_FAC 恢复原始出厂状态,没啥好讲的
蓝牙名称恢复TC35661_POSYSTORAGE
波特率恢复115200
默认消息提示打开


BT_HELP 帮助信息,提示有些BT指令怎么使用,比如说,怎么设置串口波特率和结束符,奇偶校验什么的


BT_RENAME 更改蓝牙的名称。更改后下次上电生效


BT_UART_BPS 更改波特率。更改后下次上电生效



如果输入了错误指令,会这样提示。比如说输了小写什么的



[ 此帖被2545889167在2017-11-17 02:02重新编辑 ]
本文内容包含图片或附件,获取更多资讯,请 登录 后查看;或者 注册 成为会员获得更多权限
本帖最近打赏记录:共16条打赏M币+222专家+1
hongo M币 +9 原創內容 11-27
ppyuyi M币 +8 優秀文章 11-20
snowman007 M币 +20 - 11-17
huaweiwx M币 +20 - 11-17
xu6965319 专家 +1 - 11-17
xu6965319 M币 +20 - 11-17
链接 M币 +13 謝謝分享 11-17
chenzoutie M币 +1 優秀文章 11-17
wska M币 +13 謝謝分享 11-17
200birds M币 +13 - 11-17
12
离线2545889167

发帖
11537
M币
46556
专家
225
粉丝
4485
只看该作者 2楼 发表于: 11-16
开始讲述制作心路历程

之前楼上不是说了,一直在苦苦寻觅 “两个串口,而且要体积小,成本低的MCU”
找了一久,突然一日在某论坛商家看见一款拆机的板子,价格便宜(为了避免打广告嫌疑,就不说商家明和价格了)
卖家的图



这个板子,上面有一个似MCU的芯片,没有主丝印,数了下24脚,封装应该是QFN24
然后就开始脑洞了~
以下几个条件判断出了大概80%的概率是efm32的MCU
如图
1、封装是QFN24,能对应上
2、芯片侧面所有脚都是io或者电源,没有gnd脚,说明gnd只有中间大焊盘有
3、电源引脚能对上三,其中两个104的电容颜色是一样的,另外一个是105,不是一个材质(颜色有微差异)



这样确定下来可能有三款芯片
efm32tg110


efm32zg110


和efm32hg110



三款是属于不同的产品系列线,但是引脚和封装都是一样的,看外观无法辨别。

犹豫许久,决定买来碰碰运气
因为便宜嘛,买少了邮费不划算,所以买了一小包

体积很小的pos机(又是pos机,摔~~~~~)



拆开,第一个拆的有点失败哈,太暴力了,不过主要元件没事

各部分拆开对照图
22合一友情上镜~~


后面的电池基本没电了


板子正面


板子背面

小6脚芯片特写。到现在我也不知道这是啥功能
反正不是猪脚,不重要,不管了


右上角有个双运放
注意到板子是4年前的老东西了,怪不得电池都没电了



继续排除走线,发现和efm32吻合度99%,所有电源脚都能对上,切引出来调试接口,就是图上上锡的那两个焊盘


[ 此帖被2545889167在2017-11-17 00:23重新编辑 ]
本文内容包含图片或附件,获取更多资讯,请 登录 后查看;或者 注册 成为会员获得更多权限
本帖最近打赏记录:共11条打赏M币+139专家+1
壹切皆有可能 M币 +13 謝謝分享 昨天 23:48
沙漠臭屁虫 M币 +13 謝謝分享 11-28
hongo M币 +9 謝謝分享 11-27
cushion M币 +20 優秀文章 11-19
snowman007 M币 +20 这么多PPos,这是炫富啊 11-17
xu6965319 M币 +20 優秀文章 11-17
q版虎斑猫 M币 +13 - 11-17
链接 M币 +13 謝謝分享 11-17
200birds M币 +9 - 11-17
411183343 M币 +9 这叫一小包? 11-17
12
离线2545889167

发帖
11537
M币
46556
专家
225
粉丝
4485
只看该作者 3楼 发表于: 11-16
继续

掏出自制jlink(做个小巧漂亮的jlink调试器|http://bbs.mydigit.cn/read.php?tid=2037182)

按手册接线开始测试

配套好simplicity和jlink软件


一联机,果然大惊喜,啊hhhhhh
赚翻了赚翻了
果然赌对了

这样看不出来是吧,我圈圈重点
看到没 energy micro


energy micro被silion lab收购



这尼玛不就是efm32 哈哈哈哈哈哈
图上说芯片被锁住了,那就尝试解锁 使用unnlock efm32gxxxx指令


解锁成功 so easy~~



再次联机


看到没有 arm cortex m3内核,这样果断确定是efm32tg110


因为只有他是cortex m3内核,另外两个是cortex m0内核

继续来确定下芯片容量
使用jflash

先选该系列最大容量,尝试能不能读写成功


显然是可以的


没问题~~




最终确定型号EFM32TG110F32
得到整个“赌”芯片中最好的结局,三个系列中配置最好的mcu,通型号中储存空间最大的,哈哈哈~


继续玩,焊接个led上去,尝试成功点灯



吧外壳都拆掉,元件进行分拣,方便保存

这些是不要的垃圾


[ 此帖被2545889167在2017-11-17 01:06重新编辑 ]
本文内容包含图片或附件,获取更多资讯,请 登录 后查看;或者 注册 成为会员获得更多权限
本帖最近打赏记录:共14条打赏M币+196专家+1
hongo M币 +9 以資鼓勵 11-27
ppyuyi M币 +15 原創內容 11-20
moontree M币 +13 謝謝分享 11-19
jsyz_lyk M币 +30 優秀文章 11-18
xu6965319 M币 +20 優秀文章 11-17
q版虎斑猫 M币 +13 - 11-17
okout2003 M币 +20 - 11-17
链接 M币 +13 謝謝分享 11-17
200birds M币 +9 - 11-17
newnet1234 专家 +1 謝謝分享 11-17
12
离线2545889167

发帖
11537
M币
46556
专家
225
粉丝
4485
只看该作者 4楼 发表于: 11-16
接楼上继续
先说说怎么靠使用Simplicity Studio 来进行快速的,简单的,图形化傻瓜配置的点灯实验,以方便快速测试
首先下载安装并打开Simplicity Studio,新建工程
选择本贴的猪脚efm32tg110f32


选择Simplicity configurator program,图形化配置工程


名字随便写


选择led引脚


配置为推挽


main函数很简单


很简单,是不是

  1. #include "em_device.h"
  2. #include "em_chip.h"
  3. int main(void)
  4. {
  5.         int i;
  6.   CHIP_Init();
  7.   enter_DefaultMode_from_RESET();
  8.   while (1)
  9.   {
  10.           for(i = 0; i < 200000; i++);//做延时作用
  11.           GPIO_PinOutToggle(gpioPortC, 15);//翻转LED
  12.   }
  13. }
然后,编译下载,就可以看见led开始卖力的闪烁了


好了,说是制作心路历程,现在说的有点跑题了,拉回来哈
拿出之前玩efm32tg剩下的转接板。反正引脚都一样,直接往上怼呗

这里吐槽下垃圾板厂的v割工,都吧丝印割没了你知道么。精度这么差,哎~



拆下芯片

焊接过程略过不表
qfn总体不怎么好焊接,需要耐心和细心


背面全是容阻元件。这MCU电源脚奇多


日常成功点灯


这里放下这个小核心板的原理图和pcb截图




背面用丝印画了个mini小壁虎,结果实物出来,这都啥玩意啊?四不像?




继续哈,拆完芯片的板子不能浪费

来跑下走线,方便在板玩耍
跑走线第一步,日常先上锉刀嘛


最终标注出所有io的走线结果,这里还需要感谢坛友 @shi988  



好了,一个破板子研究了半天,终于要步入正题了
开始研究蓝牙透传
初期测试是这样的



楼下继续
[ 此帖被2545889167在2017-11-17 01:27重新编辑 ]
本文内容包含图片或附件,获取更多资讯,请 登录 后查看;或者 注册 成为会员获得更多权限
本帖提到的人: @shi988
本帖最近打赏记录:共6条打赏M币+75专家+1
hongo M币 +9 我很贊同 11-27
moontree M币 +13 謝謝分享 11-19
snowman007 M币 +20 - 11-17
xu6965319 M币 +20 優秀文章 11-17
q版虎斑猫 M币 +13 - 11-17
链接 专家 +1 謝謝分享 11-17
离线2545889167

发帖
11537
M币
46556
专家
225
粉丝
4485
只看该作者 5楼 发表于: 11-16
继续哈
调通透传程序以后

画了1.0版本的转接板
打样归来如图

开始焊接蓝牙转接板


拆下芯片+转接板背面


tc35661模块来自某pos板子



焊接过程略过不表


焊完才发现,疏忽大意阴沟里面翻船了
引脚接错了,只能靠飞线补救了


好吧,修改好再打一版,哎
v1.1来了


这次就不用飞线了嘛,舒服


可以用直排针这样焊,能比弯排针显著减小体积,不过也牺牲了些许牢固程度


因为板子位置有限。部分元件标注了参数值
剩下没标的,都是104电容 100nF
图中红圈圈中
板子上的元件,除了106电容,基本都可以从原芯片的小板子上拆到




为了保护元件,建议套个热缩管
左边的板子是拆完有用元件后的样子~




最后来个大合影

[ 此帖被2545889167在2017-11-17 01:38重新编辑 ]
本文内容包含图片或附件,获取更多资讯,请 登录 后查看;或者 注册 成为会员获得更多权限
本帖最近打赏记录:共17条打赏M币+256专家+2
沙漠臭屁虫 M币 +13 謝謝分享 11-28
hongo M币 +9 精彩回帖 11-27
yanxue11 M币 +20 时间成本太大…… 11-26
weizaisifang 专家 +1 謝謝分享 11-19
weizaisifang M币 +20 謝謝分享 11-19
moontree M币 +13 謝謝分享 11-19
liupengge M币 +20 牛的不是一点点~ 11-18
snowman007 M币 +20 - 11-17
xu6965319 M币 +20 優秀文章 11-17
q版虎斑猫 M币 +13 - 11-17
12
离线2545889167

发帖
11537
M币
46556
专家
225
粉丝
4485
只看该作者 6楼 发表于: 11-16
最后一楼

因为原作者程序是开源发布的,那么我也一样吧源代码开源啦
没m币的朋友可以私聊我~
源代码


固件和原理图



全贴完,喜欢就狂砸m吧
另外,回帖的都会给加m哦

[ 此帖被2545889167在2017-11-18 14:49重新编辑 ]
本文内容包含图片或附件,获取更多资讯,请 登录 后查看;或者 注册 成为会员获得更多权限
本帖最近打赏记录:共19条打赏M币+238专家+1
hongo M币 +9 我很贊同 11-27
柱栅管 M币 +8 優秀文章 11-25
zhaoyu850412 M币 +15 原創內容 11-25
xiaodaishu M币 +8 超超级赞,你的小粉丝 11-22
jacketcat M币 +15 優秀文章 11-21
niub0 M币 +8 我觉得,我应该加个分再走。。。 11-21
螺丝钉 M币 +1 優秀文章 11-20
city2046 M币 +30 優秀文章 11-20
好呆呆 M币 +8 優秀文章 11-19
weizaisifang M币 +13 謝謝分享 11-19
12
在线jpdd521

发帖
22902
M币
9299
专家
15
粉丝
321
只看该作者 7楼 发表于: 11-16
前排插队撒。
本帖最近打赏记录:共3条打赏M币+41
xiaodaishu M币 +8 超超级赞,你的小粉丝 11-22
snowman007 M币 +13 鄙视占沙发的 11-17
2545889167 M币 +20 - 11-17
离线cushion

发帖
6672
M币
12897
专家
37
粉丝
1052
只看该作者 8楼 发表于: 11-17
一下子已经是八楼了
本帖最近打赏记录:共2条打赏M币+22
2545889167 M币 +20 - 11-17
爱我家 M币 +2 精彩回帖 11-17
离线caat

发帖
161
M币
86
专家
1
粉丝
14
只看该作者 9楼 发表于: 11-17
不错,几好玩!珍贵的一贴献给你了!
本帖最近打赏记录:共1条打赏M币+13
2545889167 M币 +13 - 11-17
快速回复
限80 字节
温馨提示:欢迎交流讨论,请勿发布纯表情、纯引用等灌水帖子;以免被删除
 
上一个 下一个