学习单片机第一步:先要了解编程环境和烧录工具
学习单片机的现状是:明明是一门动手实践的课程,却硬生生学成了理论课。还记得大学学习单片机的时候,老师在讲台上热情激昂的讲着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
以上为几种常见的烧写方式以及所使用的工具,欢迎大家留言评论,如果转载请注明作者信息和头条出处,感谢支持。
相关问答
stc-isp烧录软件如何给 51单片机烧录 ?需要利用下载器和下载软件才能将keil程序输出的hex文件烧录到单片机中。具体操作请参照以下步骤,演示单片机为51单片机。1、首先准备好51单片机最小系统板和...
单片机 烧写程序步骤?首先,将烧写线把开发板与电脑连接,安装驱动之后,烧写程序能自动识别设备。首先,在界面左上角有个单片机型号,一般选择STC89C51系列下的STC89C52RC/LE52RC...
51单片机 第二次 烧录 需要删除原来的嘛?早期的51单片机在第二次烧录之前需要擦除ROM,但现在生产的51单片机都是FLASH型,不需要预先擦除,新代码会直接覆盖原代码。不过,新型51单片机针对ROM的烧录操...
单片机 为什么能直接 烧录 程序?我刚开始学习单片机的时候也有和题主类似的困惑。当时是在大二,刚申请了个淘宝账号不久,刚看了下我的淘宝已购物品,第五件东西买的就是51单片机开发板,前几件...
at 单片机 怎样 烧录 程序?at单片机烧录程序需要进行以下步骤:需要使用ISP烧录器进行烧录。ISP烧录是将程序通过串行通信接口进行传输,在at单片机上下载程序。这种方式速度较快,成本较低...
现在 单片机 有了ISP功能,还买烧写器是不是落伍了呢?-ZOL问答与串行口下载方式相比,编程器烧录一个芯片在时间上要快得多,还有些编程器可以一...支持C,现在主流的51系列我用ISP写过单片机,效果远不如烧写器ISP是烧录器的...
51单片机 开发板烧程序需要晶振吗,没有可以吗-ZOL问答需要,提供时钟脉冲,能保证程序的正确烧录,没有的话,不一定能保证正确烧录。串口能用吗?跳线了没,某些是不需要的,比如STC的多数型号,另外如STC的如先前是用了...
如何在 51单片机 开发板上烧写程序?1.在电脑中找到【STC-ISP】程序烧写软件,有不同版本,但用法基本一致。双击打开会出现下图中界面。2.然后点击下图中箭头所指处,找到单片机型号STC89C52。...
51单片机 烧写程序要上电吗?是的,51单片机烧写程序需要上电。上电是指给单片机供电,使其能够正常工作。在烧写程序之前,需要将单片机连接到编程器,并将编程器连接到计算机。然后,通过编...
【在线等】 51单片机 烧写程序时,总是提醒“串口已被其他程序打开或串口不存在”怎么办?首先,烧录的时候要确保51单片机为开机状态,51需要转换为机器语言烧录,如果你那块有下载器可以试一试这种原始的方法,不行的话再检查串口和所用串口是否一致,...