锐单电子商城 , 一站式电子元器件采购平台!
  • 电话:400-990-0325

自制STC单片机下载电路,再也不用人工干预了

时间:2022-10-21 23:30:01 二极管sa150二极管w0508sa1502sa1611三极管2sa1106三极管双面二极管三极管

关注 星标公众,不要错过精彩的内容

aeb5c695e6556a03c7547e4b59ee8730.gif

来源 |TsinghuaJoking

STC下载和使用单片机程序ISP模式,通过微机串口或USB连接到单片机上的特定下载端口进行下载。调试器可以完成单片机的开发,无需任何第三方下载器,使用非常方便,但缺点是每次下载都需要手动复位。

本文介绍了一种全自动STC通过下载电路,整个下载过程不需要人工干预,大大提高了程序的开发效率下载-操作-测试完成程序开发的模式。

STC介绍下载模式

STC单片机ISP下载程序过程具有非常确定的流程,通过以下三个步骤。

  1. PC在TXD每隔10ms发送两个相连的0xff字节;

  2. 单片机上电并发送相关信息;

  3. PC重新握手后,继续完成芯片的擦写和下载程序。

其中,冷启动是单片机上电的必要环节。通常在设计单片机时。这部分通过手动机械开关给单片机上电。设计的自动下载电路是替代手动上电。

为避免单片机从下载串口管脚获取电能,需要通过电阻和二极管有效隔离。

下载实验见以下博文:

  1. STC单片机下载实验

STC下载程序界面。最低波特率为19200, 最高波特率设置为115200,下载成功率较高。至于为什么单片机不能下载其他设置,无法解释。

▲ STC-ISP(V6.87C)下载程序界面

全自动下载电路

1. 基本原理

在串口(或USB转串口)的TXD低电平脉冲出现在管脚上,在整个下载过程中,TXD会有低电平脉冲。设计的电路板可以通过检测低脉冲产生单片机电源上电控制脉冲,使单片机断电,然后重新上电。模拟手动操作过程。

单片机供电部分最初通过开关,现在通过控制继电器开关完成断电和上电过程。

2. 电路功能描述

根据前面描述的原理,全自动下载电路包括有两部分:

  1. USB串口电路:这部分是由PL2303(SOP-8)完成;

  2. 电源控制电路:这部分包括有两个单稳态时间定时电路和继电器电路组成;

如下图所示:

▲ 全自动下载电路框图

关于USB可参见博文转串口Prolific PL2303SA 调试[2]这里省略了内容。

在电源控制电路中,可重复触发单稳态定时器是TXD上脉冲合并成大脉冲。脉冲再次驱动后单稳态定时器形成电源开关脉冲信号,驱动继电器完成单片机电源开关。

观察STC脉冲的最大时间间隔为0.5~一秒钟,因此设计可重复触发的单稳态定时器需要一秒钟以上的时间。

▲ STC下载程序过程

考虑到在单片机断电过程中,电路包括储能电源滤波电容器,需要放电。根据手动测试,断电时间大于1秒基本上可以保证单片机电路的可靠断电。因此,第二个单稳态定时器的时间设置为1秒。

利用继电器控制单片机的电源,可以适应单片机电路的不同电流范围。这比使用半导体开关设备具有更可靠的控制效果。此外,它还可以有效地隔离调试电路的工作电源和下载板的工作电源。

3. 电路原理图

(1)电路图

全自动程序下载接口板的原理图如下图所示。

▲ 全自动程序下载接口板
(2) 电路功能描述

使用施密特反相器74HC14设计HC14包括六个相同的反相器,实际上只需要三个反相器。因此,为了确保工作的可靠性和接近理想状态,HC六个反相器并联成三个反相器。

第一组反相器是对的TXD隔离信号,驱动后面的二极管 RC电路。二极管D1, 电阻R11,电容C1,C2形成可重复触发的单稳态电路,由第二组反相器整形后驱动后面的单稳态定时器。

第二组定时器由电容器组成C20,电阻R12以及D由三极管组成,最后通过第三组反相器形成开关脉冲T1驱动继电器RL完成单片机电源的断开和接入。

PL2303输出的RXD信号也通过继电器RL另一组开关与单片机相连,也可以保证单片机断电时,RXD不会给单片机供电。PL2303的TXD或者通过二极管D与单片机相连,在单片机断电时不能向单片机供电。

(3)辅助电路功能

除上述主要电路功能外,按钮BTN手动控制继电器开关,必要时手动控制下载过程。

发光二极管LED显示可以重复触发单稳态电路的状态。下一个程序只有在它熄灭时才能下载;当LED亮的时候说明最后一个下载过程还没有完成,这个时候不能下载。

4. PCB板

绘制实验电路,考虑电路元件的布局和布线,以适合快速单面制版。如果使用商业制版,可以考虑双面布置元件,以进一步缩小电路面积。

▲ 全自动程序下载接口PCB板

通过快速制版和焊接,形成自动下载电路的试验版。如下图所示:

▲ 快速制版后测试电路板

下载板五条引线的功能定义如下表所示:

序号 功能 符号
1 工作电源 5V
2 单片机电源 5VC
3 底线 GND
4 串口输入 RXD
5 串口输出 TXD

功能测试

1. 测试单片机系统

使用STM15W415AS单片机试验板用面包板固定试验单片机电路板。下载板的接口通过面包板连接到测试单片机板的电源和下载串口线。

▲ 自动下载板和测试电路

2. 测试过程

设置STC的ISP程序,选择MCU型号,转入测试程序。最低波特率为19200, 最高波特率115200。

(1)测试下载程序

按动下载/编程按钮,便可以开始下载程序。此时下载板上的继电器会自动断开一秒钟,然后重新上电。ISP程序完成握手信号之后,对单片机进行擦除、编程等过程。当操作成功之后,经过大约2秒钟,下载板上的LED熄灭。之后便可以进行下一次的程序下载了。

▲ 自动下载程序
(2)测试“检测MCU选项”

按动“检测MCU选项”,可以自动完成单片机的选项测试。

小结

在单片机开发中,为了简化调试过程,可以通过迭代“下载-运行”过程完成程序的开发验证过程。使用全自动下载电路板,则可以避免在程序下载过程中的手动开关,提高程序开发的效率。

在STC-ISP程序中,包括有“当目标文件变化时自动装载并发送下载命令” 选项,利用该选项,可以在程序开发IDE完成对工程文件编译之后,自动触发ISP程序下载。此时,全自动下载板将原来手工对电源控制的过程省略,实现了程序的修改-编译-下载-观察的自动过程,提高了程序开发的效率。

下面使用touch命令来模拟修改HEX文件,可以看到可以直接触发ISP程序完成自动单片机程序下载。

▲ 使用touch命令来修改HEX文件,触发自动下载过程

本文所涉及到的电路板的AltiumDesign工程文件可以CSDN中下载。

参考资料

[1]

STC单片机下载实验: https://zhuoqing.blog.csdn.net/article/details/105448141

[2]

Prolific PL2303SA 调试: https://zhuoqing.blog.csdn.net/article/details/105442910

声明:本文素材来源网络,版权归原作者所有。如涉及作品版权问题,请与我联系删除。

------------ END ------------

后台回复『单片机』『嵌入式软件设计与开发』阅读更多相关文章。

欢迎关注我的公众号回复“加群”按规则加入技术交流群,回复“1024”查看更多内容。

欢迎关注我的视频号:

点击“阅读原文”查看更多分享,欢迎点分享、收藏、点赞、在看。

锐单商城拥有海量元器件数据手册IC替代型号,打造电子元器件IC百科大全!

相关文章