程序如何下载到单片机中?单片机常用的四种烧写程序方式介绍
单片机是一种可编程控制器,搭好硬件电路后,可以利用程序实现很多非常复杂的逻辑功能,与纯硬件电路相比,简化了硬件外围的设计、方便了逻辑的设计、丰富了逻辑的输出。不同厂家的单片机需要不同编程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
以上为几种常见的烧写方式以及所使用的工具,欢迎大家留言评论,如果转载请注明作者信息和头条出处,感谢支持。
「单片机自学」1单片机的开发环境及下载过程教程
1.安装串口驱动程序
点击图标,进行驱动安装
点击 下一步
点击 完成,电脑重新启动后即可使用
2.安装 keil4
将光盘中的KEIL4解压出现如下界面
双击C51V901开始安装
点击Next
选中“I agree to all the tems of the preceding License Agreemnet”点击Next
点击“Browse”选择安装目录,我们使用默认目录,点击Next
在“First Name”和“E-mail”输入你的信息,点击Next
进入安装过程,等待大约40秒
点击“Finish”完成安装
3.注册Keil4软件
桌面上新增图标,双击该图标
点击File
点击License Mangement
复制CID框内容
双击KEIL_Lic
将复制的内容粘贴到CID框,点击Generate
复制编辑框的内容
将复制的内容粘贴到New License ID Code 框,点击Add LIC
注册完成,点击Close
4.建立第一个工程
双击桌面图标
点击Project
点击New uVision Project
在目录中新建一个文件夹,我们取名位LED
双击LED
在文件名框内输入工程名,我们取为LED,并点击保存
点击Atmel 左边的+号
选中AT89C52,点击OK
点击 否
点击左下角的Pro….
点击新建文本图标
弹出如上界面
点击File 选择Save As…
保存为C文件,这里命名为LED.C 点击保存
点击Target1左边的+号,在Soure Group1上点击右键,选中Add File to Group …
选择LED 点击Add,再点击Close
右键点击Target1,选择Options for Target
点击Output 选中Create HEX Fille,点击OK
在LED.c的编辑中输入程序
点击Rebuild 进行编译
在工程目录下生成hex文件,程序编译完成在工程目录下生成hex文件,程序编译完成。
5.下载第一个程序
实物连线图
打开“单片机下载工具”
点击下载图标
在单片机选择中选择STC89C52RC
点击Step2中的Open file/打开文件 选择LED.hex 点击打开
右击我的电脑->管理->设备管理器->端口 查看串口号,该处为COM4
在Step3的COM 中选择相应的串口号,通过上一步可知为COM4,选择该串口
点击Step5中的Download /下载 按下单片机的复位
正在下载程序
下载完成
运行实物图
相关问答
单片机下载 程序方法?你好,单片机下载程序的方法主要有以下几种:1.使用单片机编程器:将编写好的程序通过编程器连接到单片机上,通过编程器将程序下载到单片机的存储器中。2.使...
怎么把程序 下载 到 单片机 里?不同厂商、不同系列的单片机,下载程序的方法也不一样。STC的单片机下载程序最简单,把单片机的串口两根线和地线连接到电脑的串口上,运行STCISP软件可以下...
如何将 单片机 程序 下载 出来?看你的是什么型号单片机,使用配套的编程器就能把程序读出来,但如果单片机加了密就不能用编程器直接读出了,可以拿到电子城里有专门解密的人解出来,但不管怎么...
如何用keil直接往 单片机 里头 下载 程序???有 下载器 。-ZOL问答如何用keil直接往单片机里头下载程序???有下载器。讨论回答(9)这是什么单片机啊?是不是还需要厂家提供一个烧写程序的小软件?像宏晶单片机就有STC-ISP...
能不能通过esp8266给 单片机下载 程序?可以通过esp8266给单片机下载程序,但是不实用,电脑端单片机程序下载软件大多数用串口连接单片机,这样就需要用两个esp8266模块(一个服务、一个客户连接...
单片机下载 不进去程序?关于单片机下载不进去程序可能有以下原因:电源问题:电源电压不足、电源波动和噪音、电源过流、电源连接问题、电源启动延迟等都可能影响单片机的正常下载。...
hex 文件怎么 下载 到 单片机 里?首先,需要将单片机与计算机连接,选择下载工具并进入下载模式。然后,打开相关软件,选择连接端口和波特率等信息,并加载需要下载的hex文件。最后,点击下载...
怎样把keil软件写的程序代码 下载 到 单片机 ?3,电脑与烧写工具或者开发版进行连接,这里以开发版为例,打开STC-ISP软件,点击单片机型号栏下三角,选择对应的单片机型号。4,点击扫描,会自动选择已连的C...4,点...
STC51 单片机 怎么 下载 程序?就是用串行口下载程序,电脑的comm口通过RS232和单片机的串口连接,就可以下载程序了,要共地就是用串行口下载程序,电脑的comm口通过RS232和单片机的串口连接,...
STC51 单片机下载 器自己怎么做啊?其实STC系列单片机是直接用串口下载的,其下载器就是直接做个MAX232的电平转换就可以了!!!当然如果你的电脑没有串口,比如笔记本,你就需要设计个USB转TTL电...