一板网电子技术论坛

风筝
发表于: 2019-6-27 11:57:45 | 显示全部楼层

在使用BLE HM-10模块时,您可能会遇到一些非常令人沮丧的问题,例如您无法发送或接收AT命令,或者您无法将HM-10与智能手机配对。如果您遇到这些问题,那么您的BLE HM-10模块肯定是HM-10模块的克隆版本。然而,在刷写新的固件后,它就像一个真正的BLE HM10模块,可以用作原装蓝牙模块。


什么是克隆的HM-10模块?

克隆的HM-10模块与真正HM-10模块类似。但为了在制造过程中节省额外成本,制造商拆除了外部振荡器并为外部振荡器留出了空间。制造商使用HM-10模块的内部晶振来节省成本。此外,固件与正版HM-10模块不同。

HM10 BLE-4-Module.jpg


BLE HM-10模块是基于Texas Instrument的CC2540或CC2541构建的蓝牙低功耗(BLE)模块。中国制造商济南华茂科技是开发板和固件的开发商。制造商已在官方文档中声明市场上有几种克隆。


如何区分Genuine和Clone HM10 BLE模块

有两种类型的BLE HM-10模块,真正的和克隆。为了确定真正的和克隆的HM-10模块之间的差异,有一些要点可以做到这一点。

1.第一点是通过观察HM-10模块。如果HM-10板上有32KHz的晶体振荡器,那么它就是真正的另一个它是克隆的HM10。

Genuine-and-Clone-HM10-BLE-Modules.jpg


2.第二种方法是将HM10与任何串行模块连接并发送AT命令。如果HM-10没有回复AT命令,则它是克隆的HM-10模块。


如何更改或刷新克隆HM-10 BLE模块的固件

为了更换固件,我们真的需要一些焊接。更改HM10模块的固件后。您将能够访问其所有功能。有两种方法可以刷新克隆的HM10模块:

1.第一种方法使用德州仪器的SmartRF闪存编程器。

2.第二种方法使用Arduino作为HM-10的烧写器。


在本篇文章中,我们将使用第二种烧写HM-10模块固件的方法,即Arduino作为HM-10的编程器。因此,让我们开始使用Arduino UNO作为编程器来烧写HM-10模块的步骤。如前所述,需要焊接将HM-10连接到Arduino。我们需要将电线焊接到HM-10的DEBUG_CLOCK、DEBUG_DATA、RESET_N引脚。在下一节中解释完整的过程。


需要的组件

●    Arduino(UNO,Pro Mini)

●    USB转TTL转换器,用于将Arduino连接到PC

●    CC2541板:HM-10,CC41

●    一些跳线

●    Arduino IDE

●    CCLoader Arduino Sketch

●    HM-10固件(提取Zip文件)


HM-10引脚分布图

HM-10-Pinout.png


电路原理图

首先,在HM-10板引脚焊接跳线,然后连接到Arduino的电路,以烧写HM10 BLE模块内的固件。

Circuit-Diagram-for-Flashing-the-Firmware-on-Clone-HM-10-BLE-Module-using-Arduino-Uno.png

Circuit-Hardware-for-Flashing-the-Firmware-on-Clone-HM-10-BLE-Module-using-Arduino-Uno.jpg


使用Arduino Uno在HM10蓝牙模块中更新固件的步骤

1.首先,使用Arduino IDE下载并上传Arduino Uno上的CCloader Sketch。此zip文件包含与闪存固件相关的所有文件(.bin文件、CCloaderArduino.ino、CCLoader.exe)。

> 使用Arduino IDE打开草图

> 设置波特率、电路板、COM端口、编程器等。

> 编译并将草图上传到UNO Board。


2.在HM-10板上焊接电线后,将HM-10 / CC2541板连接到Arduino:

Soldered-HM-10-BLE-Module-for-Flashing.jpg


3.现在电路连接已准备就绪,接下来的步骤是使用Windows CCloader.exe烧录HM-10固件。将所有文件保存在同一文件夹中,即CCloader.exe、CC2541hm10v540.bin(本例中,我已将其保存在用户>桌面> HM10中)。需要提取CC2541hm10v540.bin文件,因为它将以Zip格式下载。

4.现在,打开命令提示符并导航到“CCloader.exe”所在的文件夹。在我的例子中它是C:\ Users \ Abhiemanyu Pandit \ Desktop \ HM10

Steps-to-Update-Firmware-in-HM10-Bluetooth-Module.png

5.以如下格式编写和执行命令

  1. CCLoader.exe <COM Port> <Firmware.bin> 0
复制代码

注意:用COM端口号替换COM端口(例如2,3,4,5)。不要写COM5或COM4只写端口号。同时使用您的文件名替换不包含<>符号的Firmware.bin文件。请注意,如果您使用的是Arduino Uno,请使用“0”,如果您使用的是其他Arduino,例如Micro然后将0改为1


在本例中,命令类似:

  1. C:\Users\Abhiemanyu Pandit\Desktop\HM10>CCloader.exe 4 CC2541hm10v540.bin 0
复制代码

您还可以更改固件名称和CCloader名称。如果您更改CCloader.exe  - > CCloader123.exe和CC2541hm10v540.bin  - > CC2541.bin与COM端口5的名称,则命令如下所示:

  1. C:\Users\Abhiemanyu Pandit\Desktop\HM10>CCloader123.exe 5 CC2541.bin 0
复制代码

您必须将Firmware.bin文件放在CCloader所在的同一文件夹中。


6.执行上述命令后,固件将开始上传,等待它完成。完成后,命令提示符如下所示。

Updating-HM10-Firmware-using-Arduino.png

Upload-New-Firmware-into-HM10-using-Arudino.png


现在它已全部完成并且新固件已成功安装,CC2541现在拥有正版HM-10固件。


7.  现在,如果要升级或降级固件,则无需再次执行相同的步骤。只需将HM-10模块与带有Rx、Tx、Vcc、GND的USB转TTL转换器连接,并执行正常步骤以升级固件。


以上就是关于使用固件更改和烧录HM-10模块的完整内容。请注意,在烧写固件后,HM-10的板载LED会停止发光,但这并不意味着您的HM-10无法正常工作。固件没有LED代码,也可能是引脚号不同。如果您有任何疑问或建议,请在本帖下面进行回复。

跳转到指定楼层
lzk3352669
发表于: 2019-7-8 09:04:13 | 显示全部楼层

所需文件要在哪下载?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题 584 | 回复: 1186



手机版|

GMT+8, 2021-12-2 17:21 , Processed in 0.024720 second(s), 6 queries , Gzip On, MemCache On. Powered by Discuz! X3.4

YiBoard一板网 © 2015-2021 地址:河北省石家庄市长安区高营大街 ( 冀ICP备18020117号 )

快速回复 返回顶部 返回列表