|
本帖最后由 digital2Fox 于 2023-5-14 15:45 编辑
前一阵子看有坛里有人发了个NRF52的电子价签,不觉得心动了。于是去黄鱼上搜,但是没搜到。
不过搜到了另一款也是蓝牙的,见下图。
DA14585,网上看号称功耗最低。但是这个芯片如果被厂商写了OTP后就玩不转了。
我看卖家拆开的图上有个U3,应该是SPI flash。如果没有FLASH芯片或其它存储芯片,那么OTP是肯定写了的。
报着试试的心态买了几个。
收到后就拆,如卖家所言,很容易拆。
纽扣电池的电压为0,不可思议,是不是厂家的硬件电路一直在漏电?
墨水屏的型号为HINK E029A01,有现成的驱动,这也是购买的动力之一。
首先需要确定管脚,拿着万用表,在小小的电路板上,量呀量呀量,量出小小的管脚定义。
最上排
TP4 RST (mcu)
TP2 GND
TP8 P0_5
TP7 P0_4
TP1 VBAT3V
TP3 VDD
中间
TP9 VBAT3V
TP10 GND
TP6 SWDIO
TP5 SWCLK
EPD
BUSY P2_0
RST P0_7
DC P0_5
CS P2_1
SDI P0_6
SCK P0_0
PED_POWER P2_3
另外还有两个脚没焊元件,可以猜出来是一个LED和一个按键
D1 通过R4连接 P2_5 正逻辑
回字形的丝印是个按键,通过R5和P2_4连接
可惜我手艺差,这么小的元件焊不了。
U3量了一下管脚,和常见的SPI FLASH一样的,但是网上搜不到具体型号。
接下来焊上SWD,连接JTAG。居然没发现设备!心一下凉了,难道被锁OTP了?SWD被关闭了?
再连上串口看看,像是有反应,又像是没反应。用smartsnippe和KEIL不停地试,有几次倒是能发现设备。
猜到可能是杜邦线松了,只好焊上线。
终于JTAG可以连接正常了。
调试点灯程序,有点小折腾,也算是跑起来了。
最不解的是程序固化。
按照网上说的好像挺简单的啊,用smartsnippet工具SPI FLASH烧写就行。
可是我却一次次失败。甚至读取FLASH都失败了,读到的全是0.
然后想到TP8和FLASH共用管脚,是不是要拔掉串口?
是不是要手动复位?(一开始,我都是拔电复位,这可能是个错误操作)
EPD也共用了SPI,拔掉EPD试试。
在有一次连着串口时居然读取,写入FLASH成功了。可以想再试一下又不行了。
先不管固化了,搞得太郁闷。在网上搜墨水屏代码时看到了这个哥们发的:
https://oshwhub.com/article/ru-h ... i-kuan-xin-xin-pian
是相同品牌,但是是2.13寸的,他买的不带墨水屏的板子加外壳好便宜啊。
我看板子基本一样,2.9寸的丝印把管脚定义隐藏了。我比较了一下我们的定义,居然变了好多。
直接抄他的代码(他也用的微雪的驱动 ),再改改,没花多久把墨水屏点亮了。
总结:
DA14585也是一个强大的MCU,IO配置很灵活,既然黑水屏能点亮,用蓝牙来传图只是时间问题。
这个价签的优点是无损拆开,下完程序可以装回去。
缺点是用的元件好小,想飞线扩展接口的话,对我这种焊接菜鸟不友好。
问题(已解决):
SPI FLASH通信成功率太低,谨慎怀疑是DA工具对这板子的FLASH型号兼容性不好(参数有差异)。
理论上调试一个SPI程序可以读到板子上的FLASH厂家型号。
知道FLASH型号后,就可以自己写程序把软件固化到SPI FLASH里了。
补充: smartSnippet toolbox 降级到5.0.10后可以下载到FLASH了,太坑人了
附上源码,放到blink同目录6.0.18.1182.1\projects\target_apps\peripheral_examples\blinky
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
打赏
-
查看全部打赏
|