技术文档

51单片机烧录 学习单片机第一步:先要了解编程环境和烧录工具

小编 2024-11-24 技术文档 23 0

学习单片机第一步:先要了解编程环境和烧录工具

学习单片机的现状是:明明是一门动手实践的课程,却硬生生学成了理论课。还记得大学学习单片机的时候,老师在讲台上热情激昂的讲着51单片机的汇编指令,却只字不提单片机的编程环境,整个学期结束唯一记住的就是110条汇编指令。你肯定理解错了,这里记住的其实是数字110,那些指令一条也没有记住。

《单片机学习交流圈》1折团购活动,助力#423知识节#,详情如下:

(此处已添加圈子卡片,请到今日头条客户端查看)

工作了这么多年,总结下来:学习单片机的第一步就是先了解单片机的编程环境和烧录工具

可编程类芯片,如单片机、DSP、FPGA等,在写完程序后,需要编译成可执行文件烧录到芯片中,芯片才能按照所设定的逻辑去执行任务。不同芯片所使用的烧录软件、编程器都是不同的,烧录过程其实并不复杂。在需要用到一款可编程芯片时,要先准备编程环境IDE、烧录软件以及编程器。下面介绍几款单片机的编程环境以及烧录方法。

1 51单片机的烧录软件、工具以及烧录方法

这里所说的51单片机主要是指国产的STC单片机,STC单片机可以用keil C51版本来编写程序,程序编译完成后会生成hex文件,可以使用STC-ISP软件来烧录,所用到的硬件烧录器为USB/TLL串口工具。烧录软件的界面如下图所示。

1 51单片机烧录软件STC-ISP界面

STC51单片机在烧写时用的是USB/TTL,其实就是通过单片机的UART来实现的,需要用到四根线:VCC、TXD、RXD、GND。两者的VCC、GND对应相连,TXD和RXD要交叉连接。烧录软件需要注意的是,要正确选择单片机型号、串口号、选择加载hex文件,点击下载/编程后,需要给单片机断一下电再上电,这时就会看到下载过程。烧录成功会有提示。

2 STM系列单片机的烧录软件、工具以及烧录方法

STM具有8位和32位两个版本,STM8可以用IAR for STM8来编程,用STVP来烧录,所用到的工具为STLINK,烧录软件的使用基本上大同小异。STVP在烧录STM8时,需要配置硬件工具,选择STLINK,编程方式选择SWIM,然后选择型号。如下图所示。

2 STLink配置界面

需要需要烧录的HEX或者S19文件。再选择烧录即可。STM32还可以使用MCUISP来烧录,要用到USB/TTL,需要选择串口、文件等,界面如下图所示。

3 MCUISP界面

除了使用独立的烧录软件以外,编程环境还可以支持在线烧录,比如keil使用JLINK实现程序的在线仿真。

(此处已添加圈子卡片,请到今日头条客户端查看)

总之,烧录软件有多种,不同型号的芯片烧录软件、工具都不一样,可以在确定了芯片型号后具体查看。知道了编程环境,有了烧录工具,后面就是勤劳动手了

确定好单片机的型号之后,可以去官网下载单片机的数据手册、了解编程环境以及烧录工具。有了这些内容,学习单片机就事半功倍了。

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

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

单片机其实都是相通的,会了一种单片机,对着数据手册查看一下寄存器的设置可以快速的入手其他型号的单片机。会51单片机,说明有单片机的基础,再去学习STM32单...

51单片机烧录 程序引脚要求?

51单片机烧录程序使用的是串口1,即接收数据RXD在P3.0引脚,发送数据TXD在P3.1引脚。为了保证烧录的可靠性,P3.1脚需要串入一只100欧姆左右的电阻,P3.0脚需要...

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

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

51单片机 无法 烧录 ?

不充分因为烧录不成功可能是由于硬件连接问题、驱动安装问题、烧录工具使用问题等,需要耐心地一步一步排查并解决。此外,研究51单片机还需要学习汇编语言、C语...

51单片机 没法 烧录 程序进去?求高手解答!附图两张, 烧录 程序软...

51单片机没法烧录程序进去?求高手解答!附图两张,烧录程序软件没法打开!我的电脑是w7家庭普通版,32举报平板电脑品铂品铂W73人讨论380次围观关注问题...

51单片机 最小系统如何 烧录 程序拔插电脑关机?

51单片机最小系统烧录程序的步骤如下:1.准备好51单片机最小系统,包括单片机芯片、晶振、电容、电源等。2.连接USB转串口模块和51单片机最小系统,确保连接...

51单片机 代码 烧录 需要什么设备?

不同的单片机下载接口以及软件都不一样,比如atmel系列的单片机只能用并口下载线并配合SLISP软件下载,而STC系列的单片机可以串口下载,可用RS232的串口转USB下...

51单片机 用什么 烧录 器好?

51单片机常用的烧录器有STC-ISP和USB转串口烧录器。STC-ISP适用于STC系列的51单片机,操作简单且价格较低。USB转串口烧录器适用于大多数的51单片机,通过USB接...

单片机 烧写程序步骤?

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

51单片机 串口 isp 烧录 原理?

51单片机串口ISP烧录的原理是机器上电时,此时最先运行的就是boot的程序,而boot的程序运行时首先会检测是否有编程需求,如果有,则与上位机通讯进行FLASHROM...

猜你喜欢