如何配置和使用STlink给 LPTD001烧录固件
1 硬件连接
如下图,正确连接 转接板、排线(注意排线的接插方向)、节点电源线(节点需要供电)
2驱动及STM32 ST-LINK Utility安装
2.1安装软件路径:
2.2驱动安装
请根据电脑系统版本选择相应的驱动文件,安装过程略。
2.3 STM32 ST-LINK Utility软件安装
STM32 ST-LINK Utility集成开发环境的安装比较简单(基本上就是一路Next下去)。还是按照常规安装教程(截图)讲述一下吧,以上面下载的“STM32 ST-LINK Utility v4.0.0 setup.exe”软件为例讲述。
操作系统要求:
Windows XP、Windows 7、Windows 10
256M内存及以上、30M硬盘以上
1.解压软件,双击“STM32 ST-LINK Utility v4.0.0.exe”,进入准备安装(解压)过程。
2.进入安装向导,点击“Next”。
3.同意许可,点击“Yes”。
4.选择安装路径(这里默认),点击“Next”。
5.进入安装过程,不到一分钟时间。
6.安装最后提示“安装驱动”,点击“下一步”,最后点击“完成”安装完成。
7.点击“Finish”完成上位机软件及ST-LINK驱动的安装。
8.查看版本:打开软件-> Help - > About, 可以看见版本是更新了的。
2.4、基本使用方法
1.Keil和IAR生成hex的配置
STM32 ST-LINK Utility软件主要是下载程序(可执行hex文件),因此需要编程工具生成hex文件才行,下面将讲述常用工具Keil和IAR生成hex的配置。
A.Keil生成hex配置
Project ->Options for Target -> Output 勾选上“Create HEX File”(如下图)
B.IAR生成hex配置
Project ->Options -> Output Coverter -> 勾选上“Generate additional output”、选择输出格式为“Intel extended”,再次设置输出名称就配置好了(如下图)。
2.读取STM32内部FLASH及芯片信息
使用ST-Link连接硬件(STM32芯片),打开STM32 ST-LINK Utility软件,连接芯片:Tarage -> connect或直接点击连接快捷按钮(如下图)。
【读取FLASH信息的前提是没有添加读保护】
点击“连接按钮”之前可以设置读取FLASH的起始地址、读取长度和数据显示的宽度。
3.打开程序(hex)
在上一步连接好芯片,并正确识别芯片之后,打开需要下载的程序(hex)文件。打开hex文件可以从菜单栏(File -> Open File)打开,也可以直接讲hex文件拖动到FLASH区域(就像从电脑复制文件到U盘一样)。
4.下载程序(hex)
在上一步打开hex文件完成之后,点击“下载”(可以Taraget -> Program,也可以直接点击下载快捷按钮,如下图)
弹出信息确认窗口,如hex文件路径、验证方式等,确认信息无误后点击“Start”开始下载程序。
【如:我将可执行hex文件命名为“ExecutableFile.hex”,位于桌面】
下载过程时间长短与程序大小有关,一般都很快,出现“Verification...OK”,说明下载成功。
如何在网关侧查看数据流等调试信息
注:以下操作均以假设用户了解linux相关开发操作为前提。
1、使用ftp工具登录网关并在下图路径下找到gps_pkt_fwd.c文件,并下载此文件。
2、打开gps_pkt_fwd.c文件,定位找出下图标注的两行代码,取消注释,如下图。保存后,上传替换掉原文件。
3、ssh登录并重启网关,重新连接网关。
4、如下图使用make命令编译lrgateway。
5、编译完成后,执行 sudo systemctl stop lrgateway.service 命令,关闭lrgateway自动服务。
6、执行./gps_pkt_fwd手动开启lrgateway服务。
7、此时节点发送数据,就会打印出网关上行与下行的调试信息,如下图。(前提是按照指导手册已经完成节点及NS相关配置并且已经可以完成节点ns的双向通信测试)
关于lora的七个你不得不知的“谣言”
LoRa和LoRaWAN作为低功率广域网(LPWAN)的典型代表正迅速引起全球的关注,网关正在世界各地涌现。 对于普通大众来说,LoRa的能力和潜力不是神秘就是完全不可思议。 是时候消除一些关于LoRa和LoRaWAN的“谣言”了。
1、Lora就是Lorawan ?!
LoRaWAN是基于网络的通信协议和系统架构,而LoRa是实现远距离通信链路的物理无线电层。 LoRaWAN协议和网络架构直接影响节点的电池寿命,网络容量,服务质量,安全性以及网络服务的各种应用。
LoRa是将数据调制为电磁波的技术。 它使用一种称为CSS(Chirp Spread Spectrum)扩频技术的传输方法,对频率调制的“chirps”中的数据进行编码。这种传输方法已用于军事和太空通信几十年。
2、Lora信号不能真正传输10KM?!
在典型的LoRaWAN网络中,覆盖范围取决于许多因素:室内/室外部署,消息的有效负载,使用的天线等。平均而言,在部署有室外网关的城市环境中,您可以预期长达2至3公里 全覆盖,而在农村地区可以达到5到7公里。 在极限条件下,可以达到 702 km!
(请参考
https://www.thethingsnetwork.org/article/ground-breaking-world-record-lorawan-packet-received-at-702-km-436-miles-distance)
LoRa的范围取决于““radio line-of-sight”。400-900 MHz范围的无线电波可能会“绕射”一些障碍物,但会被吸收或反射。理论上 这意味着只要没有物理障碍阻挡它,信号就可能达到地平线。 提高LoRa设备的高度 - 例如将它们放置在屋顶或山顶上,将最大化它们的通信范围。其他因素,如天线增益,也将对通信范围产生巨大影响。
3、现在没有办法使终端设备工作10年以上?!
LoRaWAN的独特功能之一是电池寿命长。 为了达到这个目的,设备通常被编程为当不传送消息时进入深度睡眠模式,从而最大限度地延长电池寿命。 当然任何节点的寿命仍然取决于电池的容量,但长时间睡眠会大大延长充电周期。
另外,基于LoRa TM扩频调制技术,它的远距离优势得益于调制增益,而不是靠增大发射功率(那将消耗更多电能)。该射频芯片的电流消耗如下:休眠<0.2uA,空闲=1.6mA,接收=12mA,发射(最大功率)=120mA.
4、lorawan安全性不高?!
安全一直是任何无线技术的重要方面。 LoRaWAN利用两层安全性:一个用于网络,另一个用于应用程序。 网络安全确保了网络中节点的真实性,而应用层的安全性确保了网络运营商无法访问最终用户的应用数据。
另外一个好处是低功耗CSS扩频信号非常难以检测和截取。
5、我必须付费使用lorawan 系统?!
如果你是一个LoRaWAN爱好者,全球范围内有一个开放免费平台“The Things Network”,
全球500多个城市有超过24,000开发者在使用。在网络覆盖范围内,你只需要一个终端设备就可以免费接入lorawan网络。 如果您在没有覆盖的地区,您也可以随时设置一个基站接入网络。当然国内有类似的平台,给开发者提供免费试用。
此外,你也可以使用自己的电脑随时搭建一个属于自己的lorawan NS 服务器,快速启动自己的物联网应用。
6、如果没有GPS接收机无法实现lorawan节点定位跟踪功能?!
LoRaWAN可以为低功耗广域网提供定位解决方案,为一系列电池供电的应用终端提供所需的位置信息。任何正在工作的LoRaWAN终端都支持定位功能,而不需要增加额外的BOM成本,并且不需要额外的处理能力。
当一个LoRaWAN终端的上行数据被三个或三个以上基站接收到,那么它就可以被定位。这些上行数据并不需要是特定的位置信息,它们可以普通的LoRaWAN数据帧结构。多个基站同时接收到相同的上行数据,则终端的位置信息就可以通过多点定位技术得到。下图是多点定位的过程示意图。
7、随着NBIOT的普及lora将没有自己的生存空间?!
LoRa与NB-IoT并不只是竞争,说起LoRa,很多人会将其与NB-IoT做对比,因为两者都是国内目前最具代表性的LPWAN技术,它们的技术参数差异不大,难免会让人进行 “既生瑜、何生亮”的对比。但事实上,LoRa与NB-IoT之间的关系并不是简单的竞争,如果说,LoRa在国内也有运营商级别覆盖的网络,这个时候可以理解为竞争关系,但事实上,国内LoRa并没有运营商的网络,这个时候LoRa更多的是担任对NB-IoT进行补充的角色,是合作的关系。
相比于NB-IoT提供主干网络,LoRa在未来的物联网时代更像是扮演一个“wifi”的角色,LoRa网络主要在两个层次对于NB-IoT网络进行补充。
第一个层次是物理空间进行网络覆盖补充,因为在未来的物联网应用场景中,有大量的应用是运营商的网络无法覆盖的,比如说地下管廊还有偏远山区等等,这些环境的网络连接就需要LoRa等网络连接更为合适。
第二个层次是商业层次的补充,物联网项目的商业需求复杂多变,有一些物联网项目并不需要公网,而是希望采用私有化的网络进行连接,更加符合自己的商业利益,比如说数据的安全性,成本的考虑等等,这个层次的商业需求也是LoRa网络相比于NB-IoT的优点所在。
LORAWAN开发中常见问题集锦(FAQ)-第一期
1.问:什么是LoRa?
答:LoRa是低功耗广域网通信技术中的一种,是Semtech公司采用和推广的一种基于扩频技术的超远距离无线传输技术,是Semtech 射频部分产生的一种独特的调制格式。 LoRa射频部分的核心芯片是SX1276和SX1278。这类芯片集成规模小、效率高,为LoRa无线模块带来高接收灵敏度。而网关芯片则采用的是集成度更高、信道数更多的SX1301。用SX1301作为核心开发出的LoRa网关,可以与许许多多的LoRa模块构成多节点的复杂的物联网自组网。
2.问:开发套件对开发者有何帮助呢?
答:用我们的套件可以评估和测试lorawan协议下的数据通信格式、通信距离、信号质量评估等;并且我们提供sx1301网关模块的设备驱动,用户可以将网关核心模块集成到兼容该驱动的任意linux系统上;同时提供终端节点的SDK,可用于二次开发。
其中终端节点SDK提供源代码,加速二次开发。
3.问:这个套件提供硬件原理图和芯片手册么?
答:提供网关应用扩展板原理图和芯片资料(包含芯片手册);终端节点提供接硬件接口引脚定义资料和原理图。
4.问:sx1301核心网关模块提供什么硬件接口?
答:模块带有USB和SPI接口用于和HOST主机的通信,USB和SPI两者二选一。
5.问:这套评估套件目前支持的工作频率是?
答:目前默认是470Mhz工作频段,如需其他频段请咨询客服。
6.问:sx1301核心网关模块可以和单片机通信么?比如STM32。
答:目前不支持直接和普通单片机通信,只能配合linux嵌入式开发平台使用。
7.问:sx1301核心网关模块接口定义是?
答:网关接口如下图,详细资料见套件配套光盘资料。
8. 网关和终端的通讯距离是是多少?
答:无遮挡5~8公里,市区情况下2~3公里。
9. 你们LoRAwan网关,理论上可以支持到多少个终端模块?
答:lorawan网关支持设备数量跟设备发包频次、数据包大小、平台处理能力等密切相关要综合考虑 ,理论支持10万。
10、购买你们的开发套件提供什么样的技术支持?
答:首先产品具有完备的技术使用手册,只要按照手册一步一步操作即可跑通流程,针对产品本身使用提供全程技术支持;其次针对终端节点提供SDK源码包供二次开发使用,提供基础使用指导服务,不提供具体开发指导服务;
11、 网关模块、终端模块是否可以单独购买?
答:单独的1301网关模块、终端节点模块原则上只针对批量用户和购买过套件的客户。
12、 贵公司是否承接项目定制开发?
答:我公司承接lorawan相关项目定制,需要出具需求文档,由技术人员评估后,再由商务人员跟您回复。
13、 网关模块是否支持连接其他网络服务器?
答:开发套件的网关是连接我们的网络服务器,如果连接至其他的网络服务器,需要在网关上安装与要连接的网络服务器对应的SDK,该工作由客户自己或网络服务器厂家完成。
14、 开发套件支持的lorawan协议版本是?
答:lorawan1.0.1
15、 开发套件实现了classA、classB、classC吗?
答:目前实现了classA和classC
16、你们网关源码 是官方github上开源的吗?
答:网关是基于官方github上源码优化的,解决了多个官方BUG并进行了多处优化。
17、我看你们这个套件里还有树莓派,你们是拿来做什么的?
答:树莓派是网关的主控板,基于linux系统的,用于控制SX1301网关模块。
18、你们的系统是必须要NS(网络服务器)才能使用的?NS(网络服务器)是否可以不用?
答:现在开发套件演示操作起来必须配合NS。如果需要省掉现有的NS有两个解决办法:
1,使用嵌入式本地NS,即在网关的linux主板板上实现嵌入式NS服务,如有需求请联系客服进行定制化开发服务;2,不使用lorawan协议,通过修改终端和网关应用代码,通过自有协议,实现类似功能。
19. 问:这个套件提供NS(网络服务器)么?
答:提供NS(网络服务器)云平台系统,并配合套件提供不一年使用期限的免费账号用于套件的评估测试。
20. 问:LoRa是扩频技术吗?
答:LoRa是一种扩频技术,但它不是直接序列扩频。直接序列扩频通过调制载波芯片来传输更多的频谱,从而提高编码增益。而LoRa调制与多状态FSK调制类似,使用未调制载波来进行线性调频,使能量分散到更广泛的频段。
21. 问: LoRa是Mesh网络、点对点传输还是星形网络?
答:LoRa调制技术本身是一个物理层(PHY layer)协议,能被用在几乎所有的网络技术中。Mesh网络虽然扩展了网络覆盖的范围,但是却牺牲了网络容量、同步开销、电池使用寿命。随着LoRa技术链路预算和覆盖距离的同时提升,Mesh网络已不再适合,故采用星形的组网方式来优化网络结构、延长电池寿命、简化安装。LoRa网关和模块间以星形网方式组网,而LoRa模块间理论上可以以点对点轮询的方式组网,当然点对点轮询效率要远远低于星形网。
22. 问:LoRa技术与SIGFOX,NWave的区别在哪里?
答:总的来说,LoRa技术采用的是一种扩频技术;SIGFOX公司使用窄带BPSK调制技术;NWave公司使用Weightless标准,与SIGFOX公司使用的技术较为相似。
目前使用超窄带技术的公司可供选择的收发器芯片较多,而LoRa仅能使用Semtech提供的芯片。
23. 问:什么是LoRa网关?
答:LoRa网关位处LoRa星形网络的核心位置,是终端和服务器(Server)间的信息桥梁,是多信道的收发机。LoRa网关有时又被称为LoRa基站或LoRa集中器,虽然定义不同,但其实是同一含义。
LoRa网关使用不同的扩频因子,不同的扩频因子两两正交因而理论上可以在同一信道中对多条不同扩频因子的信号进行解调。网关与网络服务器间通过标准IP进行连接,终端通过单跳与一个或多个网关进行通讯,所有的终端通讯都是双向通讯,同时也支持软件远程升级等。
目前来说,定义不同,网关类型也不同。例如,按照应用场景不同可分为为室内型网关和室外型网关;按照通讯方式不同可分为全双工网关和半双工网关;而按照设计标准不同可分为完全符合LoRaWAN协议网关和不完全符合LoRaWAN协议网关。我们新一代网关为室外型,全双工,并且完全符合LoRaWAN协议。完全符合LoRaWAN协议的LoRa网关及LoRa终端能够实现互联互通,这具有很大意义!
24.问: LoRa网关的容量有多大?单个网关能连多少个终端?
答:网关容量是指在一定时间内网关接收数据包数量的能力。理论上来说,单个SX1301芯片拥有8个信道,在完全符合LoRaWAN协议的情况下最多每天能接收1500万个数据包。如果某应用发包频率为1包/小时,单个SX1301芯片构成的网关能接入62500个终端节点。当然,这只是一个理论值,网关接入终端数量最终还是与网关信道数量、终端发包频率、发包字节数和扩频因子息息相关。
25. 问: LoRa网关接入的节点数目取决于哪些因素?
答:LoRa网关接入的节点数取决于LoRa网关所能提供的信道资源以及单个LoRa终端占用的信道资源。LoRa网关如果采用Semtech标准参考设计,网关采用SX1301芯片,那么信道数是固定的8个上行信道1个下行信道。物理信道数确定了, LoRa网关所能提供的信道资源也就确定了。
单个LoRa终端占用的信道资源与终端占用信道的时间一致,也就与终端的发包频率、发包字节数以及LoRa终端的扩频因子息息相关。当LoRa终端的发包频率和发包字节数上升,该终端占据信道收发的时间就会增加,就占用了更多的信道资源。而当LoRa终端采用更大的扩频因子时,信号可以传的更远,但是代价是传递单位字节的信息会花费更多的时间。
26. 问:什么是LoRa终端或节点?
答:LoRa终端是LoRa网络的组成部分,一般由LoRa模块和传感器等器件组成。LoRa终端可使用电池供电,能够远程定位。每一个符合LoRaWAN协议的终端都能与符合LoRaWAN的网关直接通讯,从而实现互联互通。
27. 问:采用LoRa技术,我可以使用哪些ISM频段?
按理论来说,你可以使用150 MHz 到 1 GHz频段中的任何频率。但是Semtech的LoRa芯片并不是所有的sub-GHz的频段都可以使用,在常用频段(如433MHz,470MHz~510MHz,780MHz以及欧美常用的868MHz和915MHz都属于常用频段)以外的一些频率并不能很好的支持。目前在中国提供433MHz,470-510MHz频段网关。
28. 问:LoRa网关使用免费频段,会不会容易受到频率干扰?
答:抗干扰能力取决于LoRa技术本身的特性和网关的设计。LoRa技术本身拥有超高的接收灵敏度(RSSI)和超强信噪比(SNR)。以我们的LoRa网关与LoRa模块为例,其接收灵敏度达到惊人的-142dBm,而超强的信噪比可以让网关和终端工作在噪声门限以下20dB。此外,网关使用跳频技术,通过伪随机码序列进行频移键控,使载波频率不断跳变而扩展频谱,防止定频干扰。
29.问: LoRa的数据传输速率是多少?
答:LoRaWAN协议定义了一系列的数据传输速率,不同的芯片可供选择的速率范围不同,例如SX1272支持0.3-38.4kbps,SX1276支持0.018-38.4kbps的速率范围。目前我们能实现0.3-37.5kbps的传输速率。
30. 问:使用LoRa设备发送或接收的数据长度有限制吗?
有限制,理论来说SX127x系列芯片有256 Bytes的FIFO,发射或接收256 Bytes都行得通。 但是,并不是在任何传输速率下LoRa模块的负载长度都能为256 Bytes。在传输速率较低的情况下,一次传输256 Bytes需要花费的时间极长(可能需要花费几秒甚至更长),这不利于抗干扰和交互,因此在技术处理上一般建议用户将一条长数据分割成数条小数据来进行传输。
31. 问:什么是速率自适应(ADR)?
答:速率自适应(Adaptive Date Rate, ADR)是调整数据传输速率来保证可靠数据传输、优化网络性能、扩充网络容量的一种技术。当节点靠近网关时,数据传输速率可以更快、发射功率也更低。而在链路预算边缘处的节点,其数据传输速率更慢,发射功率更高。ADR方法能适应不同的网络构造,支持不同的路径损耗,可以最大化终端的电池使用寿命和整体的网络容量,LoRa网络能够从整体上管理每个终端的数据传输速率和扩频因子。
32. 问:就LoRa设备而言,其天线所能实现的发射功率是多少?
答:从芯片管脚输出的功率为+ 20 dbm,经过天线匹配/滤波损失一定功率,最终能输出的功率为+ 19 dbm + (-) 0.5 db。不同地区对最大输出功率有不同的规定, LoRaWAN协议定义了不同地区在最大化链路预算的情况下的不同输出功率。