51单片机烧写程序的方法
STC89C51是应用广泛的51单片机,很多人都是通过该单片机入门学习的,单片机的学习需要勤动手。单片机需要烧写程序,要用到相关的软件和硬件。下面介绍一下51单片机烧写程序的方法。
1 所用到的硬件工具
51单片机烧写程序需要用到单片机的UART串口,所用到的工具为USB/TTL,具有四个引脚分别为5V、GND、TXD、RXD,需要和单片机的UART口连接,在连接的时候需要注意的是,串口要交叉连接,即USB/TTL的TXD和单片机的RXD连接;USB/TTL的RXD和单片机的TXD连接。
2 所用到的软件以及设置
STC的51单片机需要用到STC-ISP软件,该软件可以在STC的官网上下载到
烧写过程为:1)选择具体的单片机型号,本文用的是STC89C51;2)选择串口号,该串口号就是USB/TTL的串口号,可以在我的电脑→设备属性中可以看到;3)选择所要下载的hex文件,点击“打开程序文件”选择需要烧写的hex文件,该文件由编程软件生成,如keil生成;4)点击下载“下载/编程”,这里需要注意的是,点击完了后,会在右侧出现“正在检测目标单片机”的字样,这时要把单片机的电源开关一下,即先断电再马上上电。之后,就出现下载的进度条。
经过以上步骤单片机烧写程序的过程就完成了。
3 烧写程序需要注意的地方
用USB/TTL连接单片机时,需要将数据线交叉连接;点击了下载按钮后需要给单片机重新断电再上电,进行单片机的冷启动。
程序如何下载到单片机中?单片机常用的四种烧写程序方式介绍
单片机是一种可编程控制器,搭好硬件电路后,可以利用程序实现很多非常复杂的逻辑功能,与纯硬件电路相比,简化了硬件外围的设计、方便了逻辑的设计、丰富了逻辑的输出。不同厂家的单片机需要不同编程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
以上为几种常见的烧写方式以及所使用的工具,欢迎大家留言评论,如果转载请注明作者信息和头条出处,感谢支持。
相关问答
51怎么烧程序 ?51单片机烧录程序的具体方法是:1.准备好51单片机开发板和usbisp烧录器。2.将usbisp烧录器连接到电脑上,并从烧录器制造商网站下载并安装烧录器驱动程序。...
51单片机 芯片 烧程序怎么 弄?首先,确保你有一个支持51单片机的编程器。将编程器连接到电脑上,并将单片机正确插入编程器座位。接着,使用专门的编程软件,如KeilC或者SDCC,编写你的程序...
单片机 肿么把写好的源代码 烧 进去呢?-ZOL问答1、使用下载线将目标代码烧到单片机里。2、使用烧录器,将目标代码烧到单片机里。看什么型号的单片机了,但你要有下载器或下载线,安装烧录软件,选择要烧录的文...
51单片机程序烧 不进去?有多种原因可能导致51单片机程序烧不进去,以下是一些可能的解决方案:1.检查连接确保电路板、电缆和编程器之间的连接正确无误。在检查之前,使用电动工具小心...
什么叫做 烧 写 程序 -ZOL问答就是将写好的程序编译好形成HEX或BIN文件后,将这个程序写进单片机芯片的过程就叫烧写,是沿用最早的单片机只能一次性写入,因此就叫做烧写,后来有了紫外线可擦除...
51单片机烧 写不了 程序 ?可能的原因有多种。首先,检查单片机和烧录器的连接是否正确,确保接线无误。其次,确认所选用的烧录软件和驱动程序是否与单片机兼容,并且版本是否匹配。再...
怎样给AT89C 51 SND1C 单片机烧 录 程序 ?买个USB转UART的模块,直接接烧录脚P30,P31脚,一般这个模块都会有带电源,将电源接到单片机的电源,连接电脑USB用软件下载程序吧买个USB转UART的模块,直接接烧...
AT89C 51怎么 把 程序 写进去?第一步、先安装AT89C51单片机的开发工具软件,如KeilUV2第二步、在Keil中创建51单片机的工程,并编写相应的控制代码,之后生成HEX文件第三步、打开51单片机专...
【向 51单片机 里写发出脉冲信号的c 程序怎么 编啊?初学,脉冲多...[最佳回答]//用ADC0808控制PWM输出//通过可变电阻调节脉冲宽度#include#defineucharunsignedchar#defineuintunsignedintsbitCLK...
51单片机 C语言,如何在一 程序 后使用中断运行另外一个 程序 ?中断比定时器的...使用中断一般要先设置使用哪个定时/计数器的模式几,之后再设置定时器的使能为,再打开总中断使能位,启动定时器。外部中断比定时器的优先级...