参考设计

收藏 

评论 

USB转TTL_STC自动冷启下载器

aerobotics 发布

禁止商用!禁止商用!禁止商用!

哔站视频链接:待续......

实物图:

功能简介:

  1. 使用CH3400N实现USB转TTL;
  2. 板载TYPE-C母座,支持双C线通讯;另带一个USB公头,使用时只能二选一;
  3. STC单片机下载程序时支持自动冷启,成功率高达99.9%;
  4. 冷启时同时断开正负极,最大程度提高冷启成功率;
  5. 带一个手动冷启按键,手动冷启具有最高优先级,任何情况下都可以手动冷启;
  6. 长按手动冷启按键可设置使能、失能自动冷启;
  7. 板载5V和3.3V两个电压源,5V驱动能力与所连接电源相当,3.3V最高可提供800ma驱动电流;
  8. 电源和TXD、RXD都拥有独立指示灯。

工作原理:

  1. 利用STC8G1K08A单片机串口实时监测TXD端口发送的数据,实现自动冷启;
  2. STC-ISP在点击下载程序后会持续发送0X7F数据,当接收到一定数量的0X7F后就控制正负极MOS管关断,一段时间后重新导通,实现自动冷启;
  3. 3.3V电压是通过AMS1117转换出来的,最大可持续电流与所用器件的品质强相关。

程序分析:

程序分析只说关键点,具体细节请查阅附件内程序本体。

1-1. STC8G1K08A共六个IO,以下是引脚定义,除P3^0外所有引脚均可自定义功能。注意:修改引脚功能定义后,硬件连接也要做出对应的修改,否则不能正常工作!

1.首先把串口接收到的数据赋值给一个自定义的变量;并将标志置1。

2.判断是否接收完成;接收完成就判断接收到的数据是不是0X7F;如果是0X7F就把计数变量加一。

3.连续接收到16个或大于16个(自定义数量)0X7F;控制MOS管断开800毫秒后重新导通;清空标志位。

4.冷启完成后延迟一段时间才能开始下次冷启计数;这个功能设计的出发点是避免短时间内频繁的冷启动,可能会诱发各种BUG;RTS是CH340N的一个在RS232、RS485通讯时使用的引脚,其特性是在有数据传输时输出低电平,没有数据传输时输出高电平;这里利用它的特性使下载完成后立即跳出延迟,避免连续下载时需要额外的等待。

5.手动冷启的实现方式很简单,就是不停的检测按键IO电平,一旦拉低,就冷启一次。

6.按键长按的识别,是通过一系列的判断和循环实现的;长按2秒左右,TXD和电源指示灯会交替快闪5次,提示失能或使能。

7.失能后MOS管常通,不再受TXD的数据控制,手动冷启依然可以使用。

8.通过长按退出失能函数。

参考设计图片
群聊设计,与管理员及时沟通

欢迎加入EEWorld参考设计群,也许能碰到搞同一个设计的小伙伴,群聊设计经验和难点。 入群方式:微信搜索“helloeeworld1”或者扫描二维码,备注:参考设计,即可被拉入群。 另外,如您在下载此设计遇到问题,也可以微信添加“helloeeword1”及时沟通。

相关项目
电路图 更多>
下载中心 更多>
大学堂 更多>
论坛推荐 更多>
Datasheet 更多>