首页 > 其他分享 >PLC QCA7005调试笔记

PLC QCA7005调试笔记

时间:2024-11-04 16:57:14浏览次数:1  
标签:烧录 PIB flash 高通 PLC QCA7005 固件 调试

方案选择

SOC方案选择不多,暂时只发现高通和联芯通两家。模块方案较多,基本都是基于高通方案实现的。
想要获取高通原厂的技术支持比较困难,但考虑到产品的稳定性还是选择了高通。

开发资料

网上基本找不到关于QCA7005的开发资料是因为这些资料是机密,要获取到官方开发资料流程如下:

  1. 以企业邮箱注册高通账号
  2. 按高通邮件提示提供营业执照完成认证
  3. 签署保密协议(NDA)
  4. 销售协助申请开发资料
  5. 下载

固件烧录

QCA7005出厂是没有固件的。
其固件分为两个文件,一个是NVM(即我们常说的固件),一个是PIB(可以理解为配置文件)。
可以选择从host(即主控MCU)启动,但一般会选择外置一颗flash,将固件烧录到flash中。
一种方案是用flash烧录器直接烧录好flash再贴片,但固件在flash中的地址无从得知,一个可行的方案是从已经烧录好的flash中克隆。
另一种方案则是采用官方上位机软件进行烧录。
这里介绍AVitar,一个windows桌面软件。
烧录原理为AVitar将MAC层的包发给host,host将其通过SPI转发给QCA7005,QCA7005再将固件写入flash。
这就需要MCU具备另一个网口,并能将其与QCA7005的SPI进行桥接,这一部分需要软件来实现。
其烧录步骤大致如下:

  1. 修改PIB中的MAC地址(强制的),并将NVM和PIB发送到QCA7005,这是运行SoftwareLoader的前提;
  2. 将一个名为SoftwareLoader的NVM发送到QCA7005;
  3. 再次修改PIB中的MAC地址,并将NVM和PIB发送到QCA7005,此时SoftwareLoader将固件写入flash。

驱动程序

目前host采用MPU+linux系统的结构比较常见,因为官方给出的是linux的驱动程序,且已经被较新版本的linux内核集成,只需编译即可使用。如果使用MCU则需要自己解决驱动问题,甚至是MAC,IPV6,UDP,TCP的手动组包。这存在一定的难度,但确实可以实现。

应用程序

一般是参考一些开源项目
https://github.com/bert-qin/open-plc-utils
https://github.com/Martin-P/OpenV2G

标签:烧录,PIB,flash,高通,PLC,QCA7005,固件,调试
From: https://www.cnblogs.com/real-bert/p/18525754

相关文章

  • S7-1500PLC通过存储卡清除项目数据的具体方法演示
    S7-1500PLC通过存储卡清除项目数据的具体方法演示存储卡的功能S7-1500使用SIMATIC存储卡作为程序存储器。SIMATIC存储卡主要有以下功能:1、作为CPU的装载存储区,离开存储卡CPU就无法运行。2、可以用于更新S7-1500CPU及集中式IO模块的固件版本。3、读取服务数据......
  • SpringBoot社区场地管理系统54217 本系统(程序+源码+数据库+调试部署+开发环境)带论文文
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表系统内容:用户,场地信息,场地事务,场地预约,社区活动,活动记录开题报告内容一、选题背景与意义随着城市化进程的加快,社区场地资源的管理显得愈发重要。传统的场......
  • SpringBoot社区常驻居民信息管理软件c3w65 程序+源码+数据库+调试部署+开发环境
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表系统内容:社区主任,操作员,社区信息,楼房信息,公告信息开题报告内容一、项目背景与意义随着城市化进程的加快,社区作为城市的基本单元,其管理效率与质量直接影响......
  • PLC智能网关的核心功能与优势-天拓四方
    在当今高度自动化的工业领域中,PLC作为工业自动化控制系统的核心部件,其重要性不言而喻。然而,面对日益复杂多变的工业环境及对高效、灵活、智能控制的迫切需求,传统的PLC系统已难以满足所有要求。因此,PLC智能网关应运而生,成为连接物理世界与数字世界、推动工业自动化向智能化转型......
  • 聊一聊 .NET高级调试 中的一些内存术语
    一:背景1.讲故事在高级调试的旅程中,经常会有一些朋友问我什么是 工作集(内存),什么是 提交大小,什么是 VirtualSize,什么是 WorkingSet 。。。截图如下:既然有很多朋友问,这些用口头也不怎么好描述,刚好上午有时间就系统的聊一下吧。二:内存术语解读1.VirtualSize......
  • 聊一聊 .NET高级调试 中必知的符号表
    一:背景1.讲故事在高级调试的旅行中,发现有不少人对符号表不是很清楚,其实简而言之符号表中记录着一些程序的生物特征,比如哪个地址是函数(签名信息),哪个地址是全局变量,静态变量,行号是多少,数据类型是什么等等,目的就是辅助我们可视化的调试,如果没有这些辅助我们看到的都是一些无......
  • 小黄鸭调试法
    “小黄鸭调试法”(RubberDuckDebugging)是一种程序员用来查找和解决代码问题的调试技巧。具体来说,程序员会尝试将自己的代码逐行解释给一只小黄鸭或任何其他无生命的物体,仿佛对方能够理解代码的逻辑。这种方法的核心原理在于通过口头表达来理清思路。当你试图向他人(即使是想......
  • 校园综合服务小程序ssm+论文源码调试讲解
    第2章开发环境与技术校车购票微信小程序的编码实现需要搭建一定的环境和使用相应的技术,接下来的内容就是对校车购票微信小程序用到的技术和工具进行介绍。2.1MYSQL数据库本课题所开发的应用程序在数据操作方面是不可预知的,是经常变动的,没有办法直接把数据写在文档里,这样......
  • 体育资讯软件的实现ssm+论文源码调试讲解
    第二章开发工具及关键技术介绍2.1微信开发者工具微信开发者工具现在已经被小程序开发团队开发运行,目前微信开发者工具任然在不断的完善中,在开发小程序时经常要不断的更新。可以使用微信扫码登陆开发者工具,开发者工具将使用这个微信帐号的信息进行小程序的开发和调试。机型......
  • 基于Java+SpringBoot+Vue+HTML5民宿管理系统(源码+LW+调试文档+讲解等)/民宿管理软件/
    博主介绍......