APM32芯得EP.35|APM32F411为什么要有ISP,你知道多少?

极海Geehy 2024-07-26 13:50


《APM32芯得》系列内容为用户使用APM32系列产品的经验总结,均转载自21ic论坛极海半导体专区,全文未作任何修改,未经原文作者授权禁止转载。




1 背景


翻阅APM32F411的手册,竟然发现它是支持ISP启动的。


我们都知道对flash编程的方式有:


1. ICP:在电路中编程,利用jlink、stlink、Geehylink、烧录器这些都属于在电路中编程。

2. IAP:在应用中编程,利用自留的bootloard程序对应用代码(APP)进行更新程序,属于IAP。

3. ISP:在系统中编程,这个是指在系统中编程。


以上是基本概念,网上有许多这个资料,我就不一一赘述,本文档的一个目的主要是解决一个问题:MCU为什么要有ISP?这个是之前一个小伙伴问的。


2 编程的阶段


在正文开始之前我们先回顾一下,对MCU编程flash一般的场景有哪些,这里我简单总结一下:


1. 开发阶段,为开发工程师在进行一些样品研发阶段,特点是对一个MCU进行多次编程,且需要进行在线仿真测试验证。

2. 量产阶段,为产品批量生产阶段,此时一般是几百上千甚至上万的货品进行出货,特点是量大。

3. 维护阶段,为产品到客户端的时候,要进行的一些产品功能升级等操作。


以上三个阶段基本涵盖了我们的MCU的编程阶段,分清以上阶段,有利于我们在什么时候考虑使用何种编程方式。


3 ISP优劣势对比


3.1 资源使用上


首先我们先看一下ISP对比另外两种编程方式,它的bootloard程序由厂家提供,编程方式一般是厂家提供的基础协议以完成:对flash、选项字节的擦、写、读等功能。常用的通信端口是串行总线:I2C/USART/USB/SPI等。


从上面我们知道,ISP:


1. bootloard程序,不占用额外的flash。

2. 通信端口非常常用,通信端口在下载程序后也可在应用中进行二次利用。


3.2 编程阶段上


上文我们了解了完编程阶段,我们下面讨论一下ISP对比其他两种编程方式时在不同的编程阶段的优劣势。


1. 首先是开发阶段,由于考虑到我们是有仿真需求的,所以我们这个阶段其实大部分人都使用的是ICP。这个阶段ICP的重量级基本是无可撼动。


2. 然后是量产阶段,量产阶段中ICP对ISP的优势就不那么明显了,因为ICP需要额外的烧录接口(SWD/JTAG),对板卡是布线有要求,且这个烧录接口仅是在程序烧录的时候使用到了,在我们的产品使用阶段,是无法使用到的。再者,一般的烧录器均是要大价格的,淘宝我找一下:



若是多线并行烧录,便要采购大量的烧录器,这对成本是一个不小的挑战。若使用ISP程序,则会省下购买烧录器的成本以及布线的PCB损耗。


当然,若是使用烧录器,成本也会随着产品量的后续增加而均摊到每一个产品上的变小。这个需要取舍。


3. 最后是维护阶段,由于维护的时候一般产品是在客户手上,此时一般而言是使用IAP进行编程,因为IAP的协议可自定义,升级也更便捷。但也有特殊情况:


   1. MCU的flash不够用,但又不想额外购置spi flash(说白了是因为成本)。

   2. MCU做控制芯片,联网的主控另有“其人”,此时从网络端拿到MCU固件再下发给MCU。


以上两种情况,若使用ISP则可以解决一定的困扰,由于ISP不占用flash,MCU的全部flash均可以保存产品的应用程序。当MCU做从控制器时,主机在板卡内部发送升级的数据给MCU,反而也简单,因为协议有现成的,不用自己构思。


通过以上我的分析,相信大家对什么时候使用ISP有了大概的认识。那接下来我们就来看看Geehy的APM32F411的ISP功能支持什么样子的编程吧。


4 APM32F411的ISP


4.1 如何启动


通过查阅APM32F411xCxE手册,它有三种启动方式,而我们所使用的ISP启动方式就是:BOOT1设置0,BOOT1设置1。



且它的系统存储器地址是 0x1FFF0000。我们设置一下BOOT1设置0,BOOT1设置1。


4.2 支持的串行总线


通过查阅APM32F411xCxE手册,这款芯片支持USART/I2C/SPI/USB对其进行编程flash。



4.3 如何使用


为了能够顺利使用APM32F411VC的bootloard,我们需要相应的评估软件:


在这个软件,我们看到Geehy给我们准备了评估USART/USB的功能。


4.3.1 USART


评估这个功能我们直接使用APM32F411VCTINI板上的GEEHYLINK预留出来的端口就行。



然后我们在GeehyProg选择COM,然后选择波特率(我的是115200),就可以连接上APM32F411了。



4.3.2 USB


评估这个功能我们首先得按照一下Geehy的DFU驱动:https://www.geehy.com/uploads/tool/dfu%E9%A9%B1%E5%8A%A8%E5%AE%89%E8%A3%85.zip。安装完驱动,设置相应的BOOT引脚后,连接板卡上的USB接口(注意不是Geehy-Link的接口):



我们可以看到设备管理器的界面:



然后我们在GeehyProg选择USB,然后点击连接,就可以看到我们连接上了APM32F411。



4.3.3 程序下载与运行


由于USART和USB在使用GeehyProg操作的时候界面是一致的,我这里选择USART进行。


我们选择“更新”选项卡,选择我们要下载进APM32F411的程序,然后选择相应的操作:


1. 擦除使用空间:擦除我们程序使用到的flash空间;擦除全部空间,擦除APM32F411的全部flash。一般产线下载程序都是擦除全部空间。

2. 写入校验,用于校验我们写入的数据跟芯片内容是否一致,这个也是必不可少。

3. 写入芯片后运行,这个用来写完程序后直接运行,这个一般看使用场景。如果是在客户端,可以使用这个方式,重启我们的“产品”。让客户感知升级已经完成。


我这里的设置如界面所示。 



点击“更新”,会发现程序下载进了flash,并开发板上LED2、LED3交替持续闪烁(可以使用“读取”功能)。


5 总结


Geehy带来的APM32F411自带Bootloard,让我们后续的产品更新上有了新思路。本分享只是有了简单使用的分享,其他支持的I2C/SPI还没有涉及,更多内容欢迎大家一起讨论。


注:文章作者在原帖中提供了工程文件,有需要请至原文21ic论坛下载


原文地址:https://bbs.21ic.com/icview-3342284-1-1.html

或点击下方 阅读原文 跳转


   0756 6299999

info@geehy.com

www.geehy.com

广东省珠海市香洲区广湾街83号01栋

极海Geehy 极海半导体是一家致力于开发工业级/车规级MCU、模拟与混合信号IC及系统级芯片的集成电路设计型企业
评论
  •   在信号处理过程中,由于信号的时域截断会导致频谱扩展泄露现象。那么导致频谱泄露发生的根本原因是什么?又该采取什么样的改善方法。本文以ADC性能指标的测试场景为例,探讨了对ADC的输出结果进行非周期截断所带来的影响及问题总结。 两个点   为了更好的分析或处理信号,实际应用时需要从频域而非时域的角度观察原信号。但物理意义上只能直接获取信号的时域信息,为了得到信号的频域信息需要利用傅里叶变换这个工具计算出原信号的频谱函数。但对于计算机来说实现这种计算需要面对两个问题: 1.
    TIAN301 2025-01-14 14:15 100浏览
  • 新年伊始,又到了对去年做总结,对今年做展望的时刻 不知道你在2024年初立的Flag都实现了吗? 2025年对自己又有什么新的期待呢? 2024年注定是不平凡的一年, 一年里我测评了50余块开发板, 写出了很多科普文章, 从一个小小的工作室成长为科工公司。 展望2025年, 中国香河英茂科工, 会继续深耕于,具身机器人、飞行器、物联网等方面的研发, 我觉得,要向未来学习未来, 未来是什么? 是掌握在孩子们生活中的发现,和精历, 把最好的技术带给孩子,
    丙丁先生 2025-01-11 11:35 447浏览
  • ARMv8-A是ARM公司为满足新需求而重新设计的一个架构,是近20年来ARM架构变动最大的一次。以下是对ARMv8-A的详细介绍: 1. 背景介绍    ARM公司最初并未涉足PC市场,其产品主要针对功耗敏感的移动设备。     随着技术的发展和市场需求的变化,ARM开始扩展到企业设备、服务器等领域,这要求其架构能够支持更大的内存和更复杂的计算任务。 2. 架构特点    ARMv8-A引入了Execution State(执行状
    丙丁先生 2025-01-12 10:30 457浏览
  • 随着通信技术的迅速发展,现代通信设备需要更高效、可靠且紧凑的解决方案来应对日益复杂的系统。中国自主研发和制造的国产接口芯片,正逐渐成为通信设备(从5G基站到工业通信模块)中的重要基石。这些芯片凭借卓越性能、成本效益及灵活性,满足了现代通信基础设施的多样化需求。 1. 接口芯片在通信设备中的关键作用接口芯片作为数据交互的桥梁,是通信设备中不可或缺的核心组件。它们在设备内的各种子系统之间实现无缝数据传输,支持高速数据交换、协议转换和信号调节等功能。无论是5G基站中的数据处理,还是物联网网关
    克里雅半导体科技 2025-01-10 16:20 436浏览
  • PNT、GNSS、GPS均是卫星定位和导航相关领域中的常见缩写词,他们经常会被用到,且在很多情况下会被等同使用或替换使用。我们会把定位导航功能测试叫做PNT性能测试,也会叫做GNSS性能测试。我们会把定位导航终端叫做GNSS模块,也会叫做GPS模块。但是实际上他们之间是有一些重要的区别。伴随着技术发展与越发深入,我们有必要对这三个词汇做以清晰的区分。一、什么是GPS?GPS是Global Positioning System(全球定位系统)的缩写,它是美国建立的全球卫星定位导航系统,是GNSS概
    德思特测试测量 2025-01-13 15:42 469浏览
  • 随着全球向绿色能源转型的加速,对高效、可靠和环保元件的需求从未如此强烈。在这种背景下,国产固态继电器(SSR)在实现太阳能逆变器、风力涡轮机和储能系统等关键技术方面发挥着关键作用。本文探讨了绿色能源系统背景下中国固态继电器行业的前景,并强调了2025年的前景。 1.对绿色能源解决方案日益增长的需求绿色能源系统依靠先进的电源管理技术来最大限度地提高效率并最大限度地减少损失。固态继电器以其耐用性、快速开关速度和抗机械磨损而闻名,正日益成为传统机电继电器的首选。可再生能源(尤其是太阳能和风能
    克里雅半导体科技 2025-01-10 16:18 319浏览
  • 根据Global Info Research(环洋市场咨询)项目团队最新调研,预计2030年全球无人机电池和电源产值达到2834百万美元,2024-2030年期间年复合增长率CAGR为10.1%。 无人机电池是为无人机提供动力并使其飞行的关键。无人机使用的电池类型因无人机的大小和型号而异。一些常见的无人机电池类型包括锂聚合物(LiPo)电池、锂离子电池和镍氢(NiMH)电池。锂聚合物电池是最常用的无人机电池类型,因为其能量密度高、设计轻巧。这些电池以输出功率大、飞行时间长而著称。不过,它们需要
    GIRtina 2025-01-13 10:49 167浏览
  • 随着数字化的不断推进,LED显示屏行业对4K、8K等超高清画质的需求日益提升。与此同时,Mini及Micro LED技术的日益成熟,推动了间距小于1.2 Pitch的Mini、Micro LED显示屏的快速发展。这类显示屏不仅画质卓越,而且尺寸适中,通常在110至1000英寸之间,非常适合应用于电影院、监控中心、大型会议、以及电影拍摄等多种室内场景。鉴于室内LED显示屏与用户距离较近,因此对于噪音控制、体积小型化、冗余备份能力及电气安全性的要求尤为严格。为满足这一市场需求,开关电源技术推出了专为
    晶台光耦 2025-01-13 10:42 487浏览
  • 流量传感器是实现对燃气、废气、生活用水、污水、冷却液、石油等各种流体流量精准计量的关键手段。但随着工业自动化、数字化、智能化与低碳化进程的不断加速,采用传统机械式检测方式的流量传感器已不能满足当代流体计量行业对于测量精度、测量范围、使用寿命与维护成本等方面的精细需求。流量传感器的应用场景(部分)超声波流量传感器,是一种利用超声波技术测量流体流量的新型传感器,其主要通过发射超声波信号并接收反射回来的信号,根据超声波在流体中传播的时间、幅度或相位变化等参数,间接计算流体的流量,具有非侵入式测量、高精
    华普微HOPERF 2025-01-13 14:18 465浏览
  • 01. 什么是过程能力分析?过程能力研究利用生产过程中初始一批产品的数据,预测制造过程是否能够稳定地生产符合规格的产品。可以把它想象成一种预测。通过历史数据的分析,推断未来是否可以依赖该工艺持续生产高质量产品。客户可能会要求将过程能力研究作为生产件批准程序 (PPAP) 的一部分。这是为了确保制造过程能够持续稳定地生产合格的产品。02. 基本概念在定义制造过程时,目标是确保生产的零件符合上下规格限 (USL 和 LSL)。过程能力衡量制造过程能多大程度上稳定地生产符合规格的产品。核心概念很简单:
    优思学院 2025-01-12 15:43 496浏览
我要评论
0
点击右上角,分享到朋友圈 我知道啦
请使用浏览器分享功能 我知道啦