技术文档

单片机自动下载 STC单片机自动下载模块

小编 2024-10-14 技术文档 23 0

STC单片机自动下载模块

视频加载中...

一、前言

  这两天发现原来制作的STC单片机下载器无法使用了。下面利用手边的 PL2303 芯片再重新制作一个 STC 单片机自动下载模块,用于今天电路的开发调试。

二、电路设计

  设计下载器。USB TypeC 接口,利用PL2303GL 完成 USB 至 UART 转换。使用 STM32F030 对 串口线检测。如果出现连续的 0x7E 。控制继电器对目标板进行断电和上电。特别是在断电的时候,是将目标板的电压直接拉低到0,这样就可以避免单片机依靠串口供电无法真正复位的情况。下面设计PCB。使用单面板实现PCB, 适合一分钟制版。一分钟之后,获得电路板。电路板制作的非常完美。

AD\STC\Tools\Download\PL2303Download.PcbDoc

▲ 图1.2.1 下载器的原理图

▲ 图1.2.2 下载器PCB

三、电路调试

  焊接电路板。对 其中的 F030单片机进编程。设置它的串口模式为 AUTO Baudrate 模式,可以自动检测到 STC ISP 软件发送的 0x7f 信号。这样不管波特率是多少,都能够检测到。一旦检测到,就给目标板断电 0.5 秒钟,接下来就有 ISP 软件进行软件下载了。

  这是在 2400波特率检测下载代码。重新桨下载版接入一次USB,使用 9600波特率检测下载用户代码。可以看到 下载器都可以比较轻松的自适应。

※总  结 ※

  本文设计了基于PL2303GL的 STC 单片机下载模块。利用了 F030单片机的自适应波特率的功能,能够检测到 STC 单片机的 ISP软件下载命令,完成目标板的电源自动上电。方便了单片机的开发。

程序如何下载到单片机中?单片机常用的四种烧写程序方式介绍

单片机是一种可编程控制器,搭好硬件电路后,可以利用程序实现很多非常复杂的逻辑功能,与纯硬件电路相比,简化了硬件外围的设计、方便了逻辑的设计、丰富了逻辑的输出。不同厂家的单片机需要不同编程IDE来实现编程。在学习单片机之前,要先清楚单片机程序是如何烧写到单片机内部的,在烧写的过程中需要用到什么工具?因为不通用的烧写工具可能价格较贵,比如说Micorchip单片机使用的ICD系列编程器,单台价格在600-1000元人民币之间。今天和大学来认识一下单片机最常用的四种烧写方式和所使用到的工具。

1.使用JTAG接口实现

JTAG接口是一种标准的测试协议,可以实现编程时在线调试,利用单步追踪可以很方便的查找代码的Bug,大多数的单片机都支持这种接口。这种接口除了电源线和复位引脚之外,还要用到单片机的四个引脚,分别是:TDI、TMS、TCK、TDO,他们所代表的含义如下所示:

TDI--数据输入 ,所有写入寄存器的数据都是通过TDI接口串行输入的;TMS--模式选择 ,Jlink输出给目标CPU的时钟信号;TCK--时钟信号 ,所有数据的输入输出都是以该时钟信号为基准的;TDO--数据输出 ,所有从寄存器读出的数据都是通过TDO接口串行输出的;

以上这四个引脚都是协议里强制要求的,而且协议建议在设计电路时要选用上拉电阻。JTAG接口有多种形式,常用的20引脚、14引脚和10引脚。以20引脚JTAG为例,所设计的JTAG烧写电路如下图所示:

JTAG接口

上图中JTAG接口都通过电阻上拉了,有的单片机的这几个引脚在内部已经上拉,所以这几个上拉电阻可以省略,减少了成本和PCB空间的占用。

JTAG接口烧录方式常用的工具为J-Link,实物图如下图所示。

Jlink实物图

相信大家都见过或者听过这个烧写工具,这个工具很通用,但是大家在使用的时候一定要注意版权信息,因为这个工具是有版权的,前两年因为版权风波,网购平台还集中整治过一次。

2.SWD接口烧录方式

SWD是一种串行调试接口,与JTAG相比,SWD只需要两根线,分别为:SWCLK和SWDIO。他们的含义如下:

SWDIO --串行数据线,用于数据的读出和写入;SWDCLK --串行时钟线,提供所需要的时钟信号;

一般来说,大多数单片机的JTAG接口和SWDIO接口是复用的,SWD也是用J-Link工具来实现的。所以在使用的时候,只需要在软件界面做一下选择,使用SWD方式还是JTAG方式,硬件上无需改动。除了J-Link外,意法半导体的ST-Link也是支持SWD模式的。

SWD接口

SWD的接口如上图所示,可以看出,SWD和JTAG是相互复用的,由于SWD只需要两根线所以大大减少了对单片机GPIO口的占用,SWD方式也是可以在线调试的。

3.ISP烧写方式,用UART实现

使用过国产51单片机的朋友都清楚这种烧写方式,这种烧写方式是通过单片机的UART串口来实现的,所需要的工具也比较简单-USB/TTL。这个USB/TTL的芯片可以通过MAX232、CH340G等芯片来实现,通过MAX232实现的UART烧写电路如下所示:

UART串口烧写电路

在与单片机连接的时候,一定要注意交叉连接,所谓交叉连接即,单片机的TXD接串口RXD,单片机的RXD接串口TXD,否则数据通信失败。51单片机在使用该方式下载时需要断一下点再上电才能下载。

STM32单片机可以使用UART来实现程序下载,但是需要选择BOOT的模式,现在通过CH340G芯片可以实现自动ISP的下载方式,即不需要手动设置BOOT模式。

4.SWIM单总线下载方式

这种下载方式是针对STM8系列的单片机,这种方式只需要一根线即可实现程序的下载,所使用的工具为ST-Link,如下图所示:

ST-Link

以上为几种常见的烧写方式以及所使用的工具,欢迎大家留言评论,如果转载请注明作者信息和头条出处,感谢支持。

相关问答

怎么把程序 下载 单片机 里?

不同厂商、不同系列的单片机,下载程序的方法也不一样。STC的单片机下载程序最简单,把单片机的串口两根线和地线连接到电脑的串口上,运行STCISP软件可以下...

如何 下载 程序到 单片机 ?

下载程序到单片机通常涉及以下步骤:准备:准备单片机和必要的硬件(编程器、适配器)。选择编程工具:选择与单片机兼容的编程软件或硬件编程器。建立连接:将单...

单片机下载 器是干什么用的?

单片机程序下载有三种途径,最基本的是编程器烧录,其次是ISP也就是在线下载,这要求单片机有BOOTLOADER引导,借助于串口从电脑下载程序到单片机,还有就是IAP也...

如何把编好的程序 下载 单片机 上,请写出详细步骤?

首先,你要搞清楚,你使用的单片机下载程序,需要哪些工具.大部分单片机,都需要编程器实现,有些可以直接使用pc串口烧录程序。所以你需要准备相应烧录设备。...

51 单片机下载 原理,讲一下步骤,从电脑端到单片机,电脑端是怎...

电脑端通过下载器软件或叫程序烧录工具(如STC-ISP等),把已经编译好了的程序数据文件(hex)以串口通信方式,向单片机发送数据;而单片机本身固化有所谓都片内烧录...

89c52 单片机 程序 下载 方法?

要下载89C52单片机程序,首先需要一个编程器和相应的下载软件。将编程器连接到计算机上,并将编程器与单片机进行连接,通常使用烧录座(或插座)将单片机插入编...

stc89c52 单片机下载 程序时一直停在 “正在检测目标单片机”,怎么解决?

1、单片机供电是否正常;2、单片机型号是否正确3、短接下载线,用串口助手检测发送接收是否正常;4、单片机最小系统是否运行正常(上电后,没下载程序的单片...

proteus怎么 下载 程序到 单片机 ?

下载程序到单片机的方法有很多种,其中一种常用的方法是通过使用Proteus软件进行仿真和下载。下面是具体步骤:1.打开Proteus软件,并创建一个新的工程。2.在工...

单片机下载 不进去程序?

关于单片机下载不进去程序可能有以下原因:电源问题:电源电压不足、电源波动和噪音、电源过流、电源连接问题、电源启动延迟等都可能影响单片机的正常下载。...

如何用keil直接往 单片机 里头 下载 程序???有 下载器 。-ZOL问答

如何用keil直接往单片机里头下载程序???有下载器。讨论回答(9)这是什么单片机啊?是不是还需要厂家提供一个烧写程序的小软件?像宏晶单片机就有STC-ISP...

猜你喜欢