产品选型

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

小编 2024-10-25 产品选型 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软件下载命令,完成目标板的电源自动上电。方便了单片机的开发。

「STC8A8K64D4开发板」——下载程序

开发板程序下载

内容

本文档描述使用宏晶官方下载软件STC-ISP给艾克姆科技STC8A8K64D4开发板下载程序的方式。

使用STC-ISP软件只可以下载HEX文件,不可以在线仿真。如需硬件仿真需选用STC带仿真功能的MCU在Keil软件上实现,仿真部分是在其他文档中介绍。

开发板程序下载

关于HEX文件和BIN文件

单片机可被下载执行的文件常见有HEX文件和BIN文件,一般HEX文件是我们更常使用的文件,HEX文件可通过Keil软件编译生成。

下面介绍下HEX文件和BIN文件的区别。

HEX文件是包括地址信息的,而BIN文件只包括了数据本身。烧写或下载HEX文件时,一般不需要用户指定地址(因为HEX文件内部已经包含了地址信息),而烧写BIN文件时需要用户指定烧录的地址信息。HEX文件和BIN文件大小不同,HEX文件是用ASCII码来表示二进制的数值,BIN文件是最纯粹的二进制机器代码。例如8-BIT的二进制数值0x4E,用ASCII来表示就需要分别表示字符‘4’和字符‘E’,每个字符均需要一个字节,因此HEX文件至少需要2倍BIN文件的空间。注:HEX文件都是由记录(RECORD)组成的。在HEX文件里面,每一行代表一个记录。记录的基本格式在此不做介绍。

艾克姆科技提供的开发板配套例程中,都会单独通过文件夹“HEX文件”的形式把对应实验的HEX文件提供出来,方便用户直接下载(不需要再使用Keil软件打开例程源码编译生成HEX文件了),并观察实验现象。

举例,按照路径“...\第3部分:配套例程源码\1 - 基础实验程序\实验2-1-3:流水灯(多个c文件)”打开后,可以看到下图所示文件,找到HEX文件。

图1:查找提供的HEX文件

使用Keil C51生成HEX文件

本节以“...\第3部分:配套例程源码\1 - 基础实验程序\实验2-1-3:流水灯(多个c文件)”为例,介绍下使用Keil C51生成HEX文件的方法和步骤。

双击打开Keil C51图标,如下图所示。

图2:Keil C51图标

点击Project,然后点击Open Project File,按照路径提示找到,“...\第3部分:配套例程源码\1 - 基础实验程序\实验2-1-3:流水灯(多个c文件)\led_blinky\Project”文件夹中的led_blinky. uvproj文件,操作步骤如下图所示。

图3:Keil C51打开工程文件步骤

打开工程led_blinky后的界面如下图所示。

图4:Keil C51打开工程文件

根据下面操作进入HEX文件的生成配置界面,如下图所示步骤操作。

图5:配置Keil C51选项生成HEX文件

注:HEX文件生成路径设置为:“...\第3部分:配套例程源码\1 - 基础实验程序\实验2-1-3:流水灯(多个c文件)\led_blinky\Project\Output”。完成上述操作之后,回到主界面,按下图所示点击编译按钮生成HEX文件。

图6:编译Keil C51

注:编译后,注意观察信息窗口输出的信息,若输出信息提示无错误表示编译成功。如果编译报错,则不会生成HEX文件,此时必须先解决报错问题。Build按钮:增量编译,编译工程中上次修改的文件及其它依赖于这些修改过的文件的模块,同时重新链接生成可执行文件。如果工程之前没编译链接过,它会直接调用Rebuild All。Rebuild按钮:全部重新编译。按HEX文件生成路径打开文件夹Output,可看到HEX文件已生成,如下图所示。

图7:找到生成的HEX文件

使用stc-isp-15xx-v6.86u软件下载程序

STC官方针对STC单片机提供了专用的ISP下载软件,该软件版本会在官网上不断更新,STC官网:http://www.stcmcu.com/

开发板配套资料包里面已经下载好了stc-isp-15xx-v6.90D安装文件,安装文件的位置在开发板资料包的位于“...\第2部分:开发软件工具\ 2 - STC-ISP下载软件”目录下。

程序烧写的步骤包括配置STC-ISP软件参数、打开HEX文件和烧写,详细流程如下。

配置STC-ISP软件参数

打开STC-ISP软件,主要设置项目如下图所示。

图8:配置STC-ISP软件参数

选择单片机型号

开发板使用的单片机型号为STC8A8K64D4或者STC8A8K48D4,所有这里应该选择STC8A8K64D4或者STC8A8K48D4。

选择串口号

选择开发板USB转串口枚举的COM口,可以在电脑的设备管理器中查看。

设置晶振频率

这里是选择单片机内部时钟使用的,开发板例程是基于24MHz晶振频率来的,所以选择24MHz。若选择使用外部时钟时,除需软件配置相关寄存器外,还需焊接合适的外部晶振及负载电容(开发板预留有外部晶振焊盘和2个晶振负载电容焊盘)。

勾选“复位脚用做I/O口”

勾选后,单片机P5.4口会作为普通的IO口使用。单片机默认使用片内的复位电路,无需搭建外部复位电路的。而如果去掉该勾选项,单片机P5.4口则被使能为外部复位引脚,此时P5.4口不再是普通IO口,而对开发板再次下载程序就需要使用外部复位电路给P5.4复位引脚复位信号以实现下载。本开发板有外部复位电路,需断开开发板J26端子的P54与TOUCH短路帽,同时,短接开发板J26端子的P54与RESET短路帽,实现外部复位下载,外部复位按键是红色按键S1。

勾选“每次下载前都重新装载目标文件”

勾选后,每次点击“下载/编程”按钮,STC-ISP软件会重新读取选定的HEX文件。这一条在开发的过程中一定要勾选,否则,当我们重新编译程序后,生产的HEX文件内容已经改变,但是下载时仍然下载的是STC-ISP软件缓存的HEX文件,而不是重新编译生产的HEX文件。

打开待下载的HEX文件。

如下图所示,点击“打开程序文件”按钮,在弹出的窗口中导航到HEX文件目录,选中HEX文件后打开即可。

图9:打开待下载的HEX文件

烧写

点击STC-ISP软件上的“下载/编程”按钮,点击后,STC-ISP软件开始检测单片机并自动下载程序。下载完成后,信息窗口会提示下载成功与否,如下图所示。(如果开发板J4端子选择为了手动下载,我们需要按一下开发板上的下载按键S2来启动下载)

图10:自动冷启动下载

图11:手动冷启动下载

下载成功后,观察开发板,会看到指示灯D1、D2、D3、D4循环闪烁。以上下载程序是USB下载方式,如果使用串口RS232下载程序则只需连接开发板J12端子即可。

图12:开发板下载口选择

常见问题及解决办法

串口打开失败报错

故障现象: 点击下载/编译后,弹出下图界面报错信息。

图13:下载报错界面,串口打开失败

注:从下面三个方面解决问题。解决方法1:检查下USB线有没有连接上,有没有连接好。解决办法2:检查下CH340的驱动有没有安装好。解决办法3:检查下串口号选择是否正确,是否是连接到的开发板对应的串口号。

忘记打开目标文件报错

故障现象: 点击下载/编译后,弹出以下报错信息。

图14:下载报错界面,缺少目标文件

解决方法:打开程序文件,按照HEX文件存放的路径添加要下载到MCU的HEX文件。

单片机型号不对报错

故障现象: 点击下载/编译后,单片机冷启动下载没有完成,弹出以下报错信息。

图15:下载报错界面,单片机型号选错

解决方法:重新添加选择单片机型号,务必注意添加新的单片机型号后,要点击“打开程序文件”按钮,将HEX文件重新选中。

相关问答

stc -isp怎么给 单片机下载 编程,烧录软件?-ZOL问答

1.你的开发板要支持串口下载。2.如果你的电脑是台式的就直接用串口线,即可。如果是笔记本就需要买一根USB转串口线。3.打开STC-ISP软件,设置好你单片机的型号...

STC单片机下载 程序连接不上啊,怎么办?

1、检查下串口工作是否正常,将串口的2脚和3脚短路,然后打开串口调试程序试下,看看串口通信是否正常。2、检查232转换器是否正常,可以将232输入输出的引脚短...

单片机 烧录器烧录步骤?

需要利用下载器和下载软件才能将keil程序输出的hex文件烧录到单片机中。具体操作请参照以下步骤,演示单片机为51单片机。1、首先准备好51单片机最小系统板和...

单片机 一般能重复写多少次程序?每次 下载 一个新的程序进去是不是将原来的程序覆盖掉了?

STC系列单片机,官网公布,擦写次数10万次以上。新的程序写入下载过程首先擦除程序存储器,再写入新的程序。可以上官网看看,应该有更多需要了...

我的 单片机 开发板烧录时那个烧录软件就卡住了为什么-ZOL问答

把单片机电源关了再打开,就会继续走下去,你能看到别的字。如果2步骤做完了,出现1):鼠标继续呈现漏斗状等待,进程卡死;2):提示波特率错误。1的话检查下载串口...

proteus怎么找 单片机 ?

要找出符合proteus要求的单片机并不困难。1.Proteus是一款专门用来设计嵌入式系统的软件,在软件中预设了多种单片机型号和库文件,方便开发者使用,不需要自己...

笙泉 单片机 是什么?

部分一样。笙泉虽然曾经是STC的代工厂,STC89/90系列甚至和笙泉某些系列的单片机完全兼容的,本人亲测!!但是两家公司后面推出的系列就不大一样了。他们的共...

portbit这个英文单词是什么意思 stc 12 单片机 说明书里面的_作业帮

[回答]字面意思是端口位port+bit端口的意思端口无误……黑巴扎黑!度娘你总让我过了吧

如何在keil4中添加 STC单片机 ?

1.在Keil4中添加STC单片机是可行的。2.因为Keil4是一款集成开发环境(IDE),它支持多种单片机的开发,包括STC单片机。通过添加STC单片机的相关文件和配置,可...

STC单片机 程序无法擦除怎么办?程序下不进去了?

电路板是不是没有外挂石英晶振,很可能是第一次烧写时设置了使用外部时钟。或是下载时设置了要求P1.0和P1.1我低电平。正常电压使用单片机没那么容易坏的。电...

猜你喜欢