芯课堂 | 华芯微特MCU在PCB板级设计中对ISP引脚的应用

 1.应用描述

ISP(In System Programming),在系统编程,使用片内驻留出厂引导程序(BootROM)配合UART / SPI等外设进行烧录。

华芯微特全系MCU的ISP操作说明:当芯片上电后检测到 ISP 引脚持续 5ms 以上的高电平后,将会进入 ISP(在应用编程)模式,片内的用户程序将不会得到执行,此时配合使用华芯微特的上位机(SYNWIT-PRG_Vxx.exe)通过串口执行程序擦除、更新等动作。

对于华芯微特全系列MCU在板级设计中ISP引脚处理:在板级设计中必须留出ISP引脚,防止调试过程中芯片锁死或不正常工作后,通过SWD端口已无法接入内核访问,即常规意义上的“变砖”,此时可通过ISP串口擦除恢复初始状态,可以看出ISP作为一种保留手段在突发意外情况时十分有效。此外,为避免外围环境干扰导致芯片ISP端口在上电时被拉高而误入ISP模式,常见表现为程序未得到执行,故在板级设计中ISP端口推荐接10K下拉电阻。

特别地,SWM181、SWM190系列芯片有所差异:如果产品开发过程中有应用userboot功能,当芯片上电后检测到ISP引脚持续5ms以上的高电平后,将优先执行userboot程序,ISP功能将不会执行,只能通过SWD方式进行程序的擦写。所以在userboot调试过程中,初始化完成系统时钟后,预留一大段延时,以免在userboot程序或APP程序调试过程中,锁死SWD导致无法连接下载烧写的情况,而在userboot调试完毕后可以去掉上述延时。另外,由于上述机制,在userboot功能应用中,ISP端口必须外接上拉。

2.应用举例

ISP引脚,一般在正常工作模式或SWD烧录时置位低电平,或接下拉电阻;在需要用ISP串口烧录时,把ISP引脚置高电平,上电或复位MCU,在对应的串口擦除程序或烧录软件。具体操作方式如下:

以SWDM-QFP100-34SVEA3板子为例

步骤1:ISP 引脚(A8)接 3.3V 重新上电 (或按一次 MCU 的复位脚按键),把 SWD 烧录口的 B12 B14 按下图接 CH340 的串口。

步骤2:打开SYNWIT-PRG_Vxx.exe,选择SWM341系列,点击确认

步骤3:选择操作接口为UART,波特率为115200,选择MCU模式,打开串口,复位MCU后立马点击握手,显示握手成功,如下图所示。

步骤4:点击全部擦除,稍等片刻后提示擦除成功,此时芯片内程序已被擦除,断开ISP引脚和3.3V的连接,重新上电或复位,芯片可以正常使用。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/411578.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

uniapp微信小程序投票系统实战 (SpringBoot2+vue3.2+element plus ) -投票帖子排行实现

锋哥原创的uniapp微信小程序投票系统实战: uniapp微信小程序投票系统实战课程 (SpringBoot2vue3.2element plus ) ( 火爆连载更新中... )_哔哩哔哩_bilibiliuniapp微信小程序投票系统实战课程 (SpringBoot2vue3.2element plus ) ( 火爆连载更新中... )共计21条视频…

学习Vue配置代理总结

今天学习了Vue的配置代理,当我们想要向服务器取回来数据时就先要向服务器发送请求,但前端发送请求的方式也有很多种,首先是发送请求的鼻祖JS的XMLHttpRequest(xhr),它操作起来相对麻烦,开发中也…

Flask架构--路由和蓝图

学习视频:第二章:路由和蓝图 1 Flask查询路由的方式_哔哩哔哩_bilibili 参考:Flask框架之路由与蓝图的使用_flask 路由和蓝图-CSDN博客 1.路由的概念: 用于将http请求与特定的python函数相匹配。定义路由后,flask程…

JMeter笔记(三)

个人学习笔记(整理不易,有帮助点个赞) 笔记目录:学习笔记目录_pytest和unittest、airtest_weixin_42717928的博客-CSDN博客 目录 一:参数化方法 1)用户定义的变量 2)函数助手 3)…

ruoyi-cloud—若依微服务打包部署

1. 前端端口修改 2. 后端端口修改 (1)修改ruoyi-gateway服务中的bootstrap.yml的port端口 (2)修改ruoyi-ui中的vue.confing.js的target中的端口 3. 后端部署 (1) 在本地电脑上代码界面上打包后端 在ruoyi项目的bin目录下执行pa…

rust让你的python飞起来!

Note: 本文作为入门教程,抛砖引玉,帮你初步了解如何使用rust为python写扩展模块,涉及从头到尾的详细步骤,基于此,剩下的只有深入rust,才能做得更好。 众所周知,python性能比较差,尤其…

Docker 镜像加速

文章目录 概述一、MacOS Docker二、Windows Docker三、Linux Docker四、小结 概述 使用容器时一般需要首先下载一个容器镜像,例如Docker Hub官方提供的MySQL、WordPress等容器镜像。然而由于 Docker 服务器在国外,基于网速与“和谐墙”的问题&#xff0c…

Spring MVC学习——解决请求参数中文乱码

解决请求参数中文乱码问题 1.POST请求方式解决乱码问题 在web.xml里面设置编码过滤器 <filter><filter-name>CharacterEncodingFilter</filter-name><filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class><…

WebGL中开发VR(虚拟现实)应用

WebGL&#xff08;Web Graphics Library&#xff09;是一种用于在浏览器中渲染交互式3D和2D图形的JavaScript API。要在WebGL中开发VR&#xff08;虚拟现实&#xff09;应用程序&#xff0c;您可以遵循以下一般步骤&#xff0c;希望对大家有所帮助。北京木奇移动技术有限公司&a…

提升UI设计水平的关键技能,轻松打造专业形象!

UI关注软件图形界面&#xff0c;包括按钮、布局、动画、过渡、微交互等。简而言之&#xff0c;UI关于界面的外观。 UI设计包括以下界面&#xff1a; -用户图形界面(GUI):GUI设计用户与系统控制工具之间的视觉交互。计算机桌面是一种GUI。 -语音控制界面(VUI):VUI设计用户与系…

异步Merkle Tree

1. 引言 前序博客&#xff1a; 利用多核的Rust快速Merkle tree Anoushk Kharangate 2023年论文《Asynchronous Merkle Trees》&#xff0c;其对Merkle tree数据结构进行修改&#xff0c;使得可跨多线程异步计算。 开源代码实现见&#xff1a; https://github.com/anoushk1…

一文读懂SSL证书

SSL证书是保障网络通信安全的核心组成部分&#xff0c;但不同类型的SSL证书具有不同的特性和用途。在选择SSL证书时&#xff0c;了解这些不同类型的证书是至关重要的。本文将介绍几种常见的SSL证书类型&#xff0c;以帮助您更好地了解它们的适用场景和优势。 1.域名验证证书&am…