基于STC8G1K08的CH549单键进入USB下载模式实验
一、实验原因
CH552或CH549进入USB下载,通常需要两个按键,一个控制电源的通断,一个通过串联电阻(一头接VCC或V33)冷启动时抬高UDP电平。时序上是这样的:断电--按下接UDP的轻触开关--通电--松开接UDP的轻触开关。这样的话,操作上一般需要双手并用,比较麻烦。
二、电路改进
本制作是在前面纯硬件实现CH549或CH552单键进入USB下载模式(详见开源项目 https://oshwhub.com/xxkj2010/single-key-bring-in-circuit-test )的基础上进行修改的,即利用手头闲置的STC8G1K08写入延时代码,通过一定顺序控制电源输出和UDP电平,从而为CH552或CH549提供进入USB下载模式的时序。
三、板子实物
板子实物图(USB母口未接)如下:

原设计欠缺R5,目前用直插电阻补焊到板子的背面。

与CH549连接的实物图如下:

四、开源项目
开源项目中的线路和PCB已经补上R5,欢迎朋友们直接使用。

开源项目网址:
https://oshwhub.com/xxkj2010/experiment-of-ch549-single-key-e
五、两点说明
1、原设计上的K2和K3是为了测试双按键进入USB下载模式功能的,非必要可以不用焊上。K1为单键进入下载模式轻触开关。
2、鉴于开发板上的电源滤波电容容量各不相同,所以附件提供了两个HEX文件,一般情况下两个都可以用。选择上可以根据板载电容容量选择。如果你的实验板使用大容量电容,则可以选择 时间较长.hex,相反则选择 时间较短.hex。
六、使用方法
打开WCHISPStudio并选择芯片系列,下载接口选择USB,连接好线,按一下K1,即可令CH549或CH552进入USB下载模式。
七、测试效果

因个人业余水平有限,电路和源代码仍然有修改和完善的需要,所以敬请各位大佬提出修改意见,谢谢!
2025.1.7
欢迎关注本人公众号,了解更多。

基于STC8G1K08的CH549单键进入USB下载模式实验的更多相关文章
- 基于ZedBoard的Webcam设计(一):USB摄像头(V4L2接口)的图片采集【转】
转自:http://www.cnblogs.com/surpassal/archive/2012/12/19/zed_webcam_lab1.html 一直想把USB摄像头接到Zedboard上,搭建 ...
- 使用复合索引代替单键索引,来避免单键有null值的情况
查看原表: SQL> select count(*) from t1; COUNT(*) ---------- 3229088 SQL> select count(*) from t1 w ...
- 设计模式-单键(Singleton)
[摘要] 在软件系统中,经常有这样一些特殊的类,必须保证它们在系统中只存在一个实例,才能确保它们的逻辑正确性.以及良好的效率. 如何绕过常规的构造器,提供一种机制来保证一个类只有一个实例? 这应该 ...
- [置顶] 单键模式的C++描述
设计模式-单键(Signelton):其实单键的设计模式说来很简单,说的直白一点就是程序运行过程中保证只有一个实例在运行而已.在软件系统中,经常有这样一些特殊的类,必须保证它们在系统中只存在一个实例, ...
- 基于IMX515EVK+WINCE6.0---支持PB6.0通过USB下载镜像文件
基于IMX515EVK+WINCE6.0---支持PB6.0通过USB下载镜像文件 在INAND还没有写入镜像文件之前,通过ATK工具烧录xldr.nb0和eboot.nbo到INAND中,见相关链接 ...
- Jeff Atwood质疑iPhone的单键设计
我喜欢使用iPhone,但我对它的一个设计不敢苟同:苹果始终坚持,设备的正面永远只能有一个按键. 我还买了一个Kindle Fire,它更离谱,一个按键都没有!我完全赞成,任何小器具的正面都应该在明显 ...
- "《算法导论》之‘线性表’":基于数组实现的单链表
对于单链表,我们大多时候会用指针来实现(可参考基于指针实现的单链表).现在我们就来看看怎么用数组来实现单链表. 1. 定义单链表中结点的数据结构 typedef int ElementType; cl ...
- mongodb索引 单键索引
单键索引是最普通的索引,比如一条记录,形式为{x:1,y:2,z:3},我们在x上建立索引,之后就可以以x为条件进行查询,与_id索引不同,单键索引不会自动创建 创建索引 > db.test2. ...
- 【原创】-- Linux 下利用dnw进行USB下载
原帖地址: http://blog.csdn.net/jjzhoujun2010 http://blog.csdn.net/yf210yf/article/details/6700391 http:/ ...
- 850 USB 烧录模式
/************************************************************************* * 850 USB 烧录模式 * 说明: * 本文 ...
随机推荐
- Abp源码分析之Abp本地化
aspnetcore mvc 实现本地化 新建mvc项目 修改Program.cs using Microsoft.AspNetCore.Localization; using Microsoft.A ...
- GObject学习笔记(一)类和实例
前言 最近阅读Aravis源码,其中大量运用了GObject,于是打算学习一下. 此系列笔记仅主要面向初学者,不会很深入探讨源码的细节,专注于介绍GObject的基本用法. 此系列笔记参考GObjec ...
- 分析什么情况下回有大量的垃圾回收(GC)
在前端性能监控中,大量的垃圾回收(GC)通常是由以下原因导致的: 内存泄漏:当页面中的对象没有被正确地释放或引用计数错误时,会导致内存泄漏.当内存中的对象达到一定数量时,JavaScript 引擎会执 ...
- 我和JVM初次约会
前言:该篇是参考结合<高手深度解析:JVM是什么>,自己剔除添加了一些内容整理的而来,这里感谢<高手深度解析:JVM是什么>的文章的指点讲解. JVM的生命周期 "J ...
- JVM 核心技术
1.Java代码编译和执行的整个过程: 2. JVM内存管理及垃圾回收机制: 先看图, 二.Java代码编译和执行的整个过程 Java代码编译是由Java源码编译器来完成,流程图如下所示: Java ...
- Django之常见问题
总结Django在使用过程中遇到的一些问题 1.在使用model进行数据查询的时候出现错误: django matching query does not exist. 是使用get函数引起的错误.使 ...
- AtCoder Beginner Contest 295
Three Days Ago 我们定义一个只由数字构成的字符串中的字符能够被重排成相同的两份,我们称这个字符串是个好字符串,比如12341234 现在给定一个字符串\(S\),找出所有的\([l,r] ...
- 2023 秋季学期 六周集训 Misc方向
by 高鹏鸿.密语 写在前面,记录和交流是一个很好的习惯,建议可以自己先搭建一个博客用于存储自己的做题记录以及方便交流.还有,对于Misc方向,灵活应对十分重要,一定要善用搜索引擎. 还有一点,给大家 ...
- 虚拟机 ubuntu18 树莓派4 QT5.14.2 交叉编译
编译过程主要参考了 <为树莓派4交叉编译QT5.14.2(带EGLFS支持)>,可以按照教程一步一步进行,在整个过程中,有2个地方需要注意. 1. sudo rpi-update 因为网络 ...
- cajviewer逆向分析-HN文件格式分析和010editor模板开发
文章首发于 https://mp.weixin.qq.com/s/7STPL-2nCUKC3LHozN6-zg 概述 本文介绍对cajviewer中对HN文件格式的逆向分析并介绍如何编写相应的010e ...