设计与开发

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

小编 2024-11-24 设计与开发 23 0

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

单片机是一种可编程控制器,搭好硬件电路后,可以利用程序实现很多非常复杂的逻辑功能,与纯硬件电路相比,简化了硬件外围的设计、方便了逻辑的设计、丰富了逻辑的输出。不同厂家的单片机需要不同编程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

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

自学「单片机」时许多人都绕不开的一个词「烧录」,你了解多少?

自学单片机是一场苦旅, 这在第一次面对复杂的烧录界面的时候就会有深刻的感受,面对这么多参数的界面,该如何让自己苦心编写的程序运行在单片机上呢?

本文要说的是在自学单片机时,所绕不开的一个关键词“烧录”。并不是“刻录”啊, 刻录是以前的刻光盘,烧录一般指卡带,刻录一般对光碟,刻和烧得不同点就是,刻使用光头。

相信很多电子行业的朋友经常会和【IC烧录】打交道,特别是一些做贸易的公司可能最怕遇到芯片上面被做过标记,因为这就意味着这些芯片被烧录过了。

简单来说,程序烧录 就是把原程序经编译处理后加载到计算机中,让计算机执行你编写的程序,例如单片机程序烧录的时候是加载.hex文件,储存在单片机中,开机就能实现所写的程序了,简单的说就是让微型计算机开机能执行你的程序的过程就是程序烧录。

单片机是一种集成电路芯片 ,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计数器等功能。可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路 ,集成到一块硅片上构成的一个小而完善的微型计算机系统 ,在工业控制领域广泛应用。从上世纪80年代,由当时的4位、8位单片机,发展到现在的300M的高速单片机。

将程序“搬运”到芯片内部存储空间的过程叫【烧录】。

集成电路板 是靠专门的技术人员把电路烧录上去的,从事这个工作的技术人员就是IC烧录员。

IC烧录员就是集成电路(integratedcircuit)烧录员,做往单片机及各种可编程微控制芯片上烧录程序的工作,比如往MP3播放器芯片里面烧录固件等。

其实:不是所有的IC都可以烧录,只有存储器才可以【烧录】。

但现在很多单片机已经集成程序存储器,故单片机也可以【烧录】。

存储器内部是有很多很多的MOS管组成,MOS管的栅极的电压充了电是很难释放的(最高保存10年以上),也就是MOS管的栅极的电压是记忆功能的。

单片机工作时首先是读取程序存储器的数据,然后是完全按照程序数据来工作的;当给单片机内存储器烧录不同的程序,单片机工作就不相同。

烧录方式一般分为离线烧录和在线烧录。

离线烧录: 通过适配器和不同封装的芯片连接,芯片与适配器搭配使用才能实现程序的烧录。适配器的本质类似于一种精密夹具, 不同封装的芯片需要配合不同的适配座。

如果生产测试时出现错误,进行生产回溯重新修正, 就需要把芯片从适配器上拆卸下来,重新按照规定的流程进行烧录,耗费较大的人力物力,成本较高。

在线烧录 :在线烧录使用的是芯片的标准通信总线,如USB、SWD、JTAG、UART等,接口一般是固定的,烧录时所需要连接的脚位也很少。由于接口通信速率并不高,采用一般的线材即可完成烧录,不会产生高消耗。

在线烧录是通过线材连接来进行程序烧录的, 如果生产测试的时候发现出错了,立即可以对出错的PCBA进行回溯,重新进行烧录即可,无需拆卸芯片。不仅节省生产成本,而且增加了烧录的效率。

另外,是不是所有的芯片去市场买回来都要烧录过才能使用呀?

一般,集成电路的IC大概分固化和可擦写还有一次性写入三种,例如你手机里的储存IC(机载内存)就是可擦写IC,路由器和全部机顶盒里都有个八脚的IC,也是可擦写的。

说的干脆一点:凡是能升级刷新的电子设备,都有可擦写芯片在里面,电子市场买回来的可擦写IC通常都是无数据的初始状态,也有按客户要求刷好了固件信息的芯片,主要是看你需要哪一类的数据信息,购买时建议与卖家详细说明沟通,并且拍高清原件与需购买商品做个比较,以确保能买到适宜的产品!

那么,怎么判别IC是否烧录过呢?

IC是否烧录过,首先要去从内部结构来看的话,通过烧录器检查IC是否有被烧录过。

第一,通过空白检查, 如果烧录过的IC,客户没有清除过,它里边还会残留一些资料,这个时候就可以看出IC是否有被烧录过。

第二,通过外观检测,IC是否有焊过锡, 客户有时候会做一些标记点,就是打一些颜色标识,从外观上去辨别IC是否有被烧录过。

第三,查看一下IC的生产周期 ,它是在哪个时间段生产的,一般来讲,IC的生产周期是按周来计算的,我们可以查看一下IC上面标记的它是哪一年或者是第几周生产的。

检查IC时,如果客户清除过,而且它的外观又是很新,这个就比较难确定了。 如果IC的外观又好又空白,只要IC的功能好,也就不用去太在意了,一般客户烧录为了区别不同版本的IC,他们是会在IC上面打点。

本文部分内容为网摘,有见解不全面的地方,还请这方面的大神给予以指出。

相关问答

单片机怎么 烧入 程序 ?-ZOL问答

那要看你用什么单片机,比如STC的单片机,直接搞个串口,在搞个STCISP就能把程序烧进去,AVR的用专门的下载器,MSP430一般用JLINK烧写能否换个同型号的下载工具试试...

单片机怎么 烧写 程序 ?

首先,将烧写线把开发板与电脑连接,安装驱动之后,烧写程序能自动识别设备。首先,在界面左上角有个单片机型号,一般选择STC89C51系列下的STC89C52RC/LE52RC...

at 单片机 怎样 烧录程序 ?

at单片机烧录程序需要进行以下步骤:需要使用ISP烧录器进行烧录。ISP烧录是将程序通过串行通信接口进行传输,在at单片机上下载程序。这种方式速度较快,成本较低...

单片机 为什么能直接 烧录程序 ?

我刚开始学习单片机的时候也有和题主类似的困惑。当时是在大二,刚申请了个淘宝账号不久,刚看了下我的淘宝已购物品,第五件东西买的就是51单片机开发板,前几件...

如何将 程序 代码 烧录 单片机 ?

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

单片机烧录程序 是一个什么过程?

单片机烧录程序是将编写好的代码通过特定的工具和方法,写入到单片机的存储器中,使其能够按照预设的逻辑和功能运行的过程。在烧录程序之前,需要先完成单片机的...

怎么将 程序烧录 单片机 里-ZOL问答

重新烧个程序就把原来的程序擦除了空间也释放了用优化大师或QQ管家4条回答:【推荐答案】用一个下载器进行下载,下载器的RXD和TXD与最小系统的反接,vcc接电源...

不拆电路板( 单片机 )上的芯片如何 烧录 ?

先把5个接口全部接上引脚线,就是引出来。RST不用接这样就剩下四根线,拿来一根ISP转接线(如果你没有ISP,单片机根本连不上)。然后按着字母给出来的相接就可...

stc-isp烧录软件如何给51 单片机烧录 ?

1、首先准备好51单片机最小系统和烧录器。2、打开stc-isp烧录软件选择好单片机型号,这里的所选的单片机型号为STC89C/LE52RC。在此可以观察到“串口号”显示没...

单片机烧录程序 如何提取?

1.使用逆向工程工具:使用专门的逆向工程工具,如IDAPro、Ghidra等,打开烧录好的单片机程序文件,这些工具可以将二进制代码转换为汇编代码,并提供反汇编和反...

猜你喜欢