设计与开发

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

小编 2024-10-06 设计与开发 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上面打点。

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

相关问答

单片机 控制 程序 怎么 烧录 ?

你好,单片机控制程序的烧录方法因不同的单片机芯片而异,以下是一般的烧录流程:1.准备烧录工具:烧录器、USB线、电脑等。2.下载并安装烧录软件,一般厂商...

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

AT89C51单片机程序烧录器软件,是要根据你用的编程器硬件来选择的,不同的编程烧录器,使用的软件有所不同,要通过硬件型号才能配编程烧录器的软件。...

单片机 怎么烧 程序 接口?

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

单片机 烧写 程序 步骤?

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

51 单片机 如何 烧录程序 ?

51单片机烧录程序的具体方法是:1.准备好51单片机开发板和usbisp烧录器。2.将usbisp烧录器连接到电脑上,并从烧录器制造商网站下载并安装烧录器驱动程序。...

51 单片机 怎么 烧录程序 ?

51单片机的程序烧录主要有以下几种方法:1.串行烧录:利用串行downloader或串口助手通过串口向MCU烧录程序。这种方法烧录简单,但速度慢,适用于小程序的烧录。...

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

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

怎样给AT89C51SND1C 单片机烧录程序 ?

买个USB转UART的模块,直接接烧录脚P30,P31脚,一般这个模块都会有带电源,将电源接到单片机的电源,连接电脑USB用软件下载程序吧买个USB转UART的模块,直接接烧...

keil5如何通过仿真器将 程序烧录 ?

keil5通过仿真器将程序烧录需要准备开发板,随后就使用mdk目录,并将STM32F10x_M25P64文件夹拷贝一份并改名为STM32F10x_W25Q32,打开工程,打开option选项设置界.....

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

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

猜你喜欢