STC51单片机自动ISP下载电路设计
51单片机可以通过ISP下载方式烧写程序,常用的工具为USB/TTL,常用的芯片有MAX232、CH340G等。下面介绍以CH340G芯片设计的ISP下载电路。
1. 51单片机程序下载原理51单片机程序烧写接口为RXD和TXD,即UART口,这两个接口是通信口,配合不同的芯片可以实现不同的通讯方式。如果连接MAX232即可实现232通信,如果连接MAX3082即可实现RS485通讯。下载程序正是通过这两个接口来实现的。下载方式如下图所示。单片机的RXD和TXD要与USB/TTL设备的TXD和RXD交叉连接才能实现下载。
2. CH340G芯片介绍
CH340是一个USB总线的转接芯片,实现USB转串口、USB转IrDA红外或者USB转打印口。是一款比较成熟的国产芯片,价格在1.5元左右。
具有如下特点:
全速USB设备接口,兼容USB V2.0,外围元器件只需要晶体和电容。
仿真标准串口,用于升级原串口外围设备,或者通过USB增加额外串口。
计算机端Windows操作系统下的串口应用程序完全兼容,无需修改。
硬件全双工串口,内置收发缓冲区,支持通讯波特率50bps~2Mbps。
支持常用的MODEM联络信号RTS、DTR、DCD、RI、DSR、CTS。
通过外加电平转换器件,提供RS232、RS485、RS422等接口。
支持IrDA规范SIR红外线通讯,支持波特率2400bps到115200bps。
软件兼容CH341,可以直接使用CH341的驱动程序。
支持5V电源电压和3.3V电源电压。
提供SSOP-20和SOP-16无铅封装,兼容RoHS
3. 电路设计
CH340G的下载电路如下图所示。
P2为USB接口,CH340G的TXD与单片机的RXD连接,CH340G的RXD和单片机的TXD连接。图中的CH340G用的是5V供电,如果用3.3V供电的话第4脚要连接到3.3V。由于STC51单片机在下载程序的时候要断电再重新上电,所以单片机部分的电源设计如下图所示:
为了实现单片机电源的断电再上电(注意:这里是指单片机的电源而不是整个电路的电源),在单片机的电源脚上加了一个X1跳线。
4. 使用效果
使用STC的软件STC-ISP来下载。
下载步骤如下:
执行到第4步,点击下载之后要将电路板上的X1断开再接上即可实现单片机程的下载。
本订阅号致力于单片机、ARM等嵌入式软硬件的设计经验分享,秉承“人人都是电子设计经验的分享者”的理念,成功路上不孤单,我们一起努力。公众号:micropoint8
国产STC系列单片机优缺点分析
简介:
国产的STC系列单片机大多数人都比较熟悉。STC采用的是MCS-51指令集,是传统的51内核,指令集结构比较简单。现在STC基本是属于51单片机的代表(不是指性能),功能比较简单,资料也比较多,是用来学习单片机入门选择最多的一种。
市面上有很多为51单片机设计的学习开发板,每个开发板基本都会配备几十G的学习视频资料。一般入门学习不需要人带,买个开发板就能学习到一种单片机里面的各种外设和功能。不过个人倾向于看书,因为我觉得看视频,太啰嗦学习太慢。
2015年STC官方也推出的有一种开发板,可以以大学名义申请,只需要提供相应资质就可以免费获取一定数量的开发板,不过现在已经结束了。开发板上用的是当时最新的IAP15系列的芯片。软硬件都配置的比较足。官方给出的学习资料、芯片手册、烧录软件也都有中文的。可以在STC官网(www.stcmcu.com)上找到。
不过STC的官网做的真是有些山寨的感觉,花花绿绿的让人忍不住要喷,找资料真的不方便。
STC官网封面
烧录工具:
STC自己开发的专用烧录工具(STC-ISP)确实是一个亮点,里面功能很多,主要包括:
所有STC芯片烧录下载,可以使用加密ID下载,保护程序安全。支持将目标程序文件与烧录软件打包生成一个新的exe升级软件,这样方便量产以后的程序升级。芯片选型,查看芯片资源和价格,查看芯片封装类型,IO定义等查看各个芯片的各个外设的范例程序,下载芯片手册。可以当作串口收发助手,不需要单独的串口助手软件。新的IAP15系列的芯片,可以用来设置硬件仿真。可以当作波特率计算器、定时器计算器、软件延时计算器等,直接生成寄存器配置代码可以把复位引脚配置成普通IO来用,并可以在可视化软件上设置内置振荡器速率。STC-ISP烧录工具
真是集多功能与一身, 再集成一个编辑器+编译器功能就可以独步天下了。面对这么好用的烧录工具,对于只用来下载程序的小伙伴来说,是不是略显浪费呢。功能用的不熟练的童鞋可以在下方评论区写下来。
编程环境IDE
STC系列单片机软件编程语言用的是C51语言,类似于标准C语言的缩减版,两者语法和格式都是一样的。多了一些关键字如:“sbit ”位定义、“code ”常量声明等。又缩减了一些关键字比如“const"常量声明关键字。
STC系列单片机编程软件IDE是用的“KEIL FOR C51” ,注意keil有很多版本比如:KEIL FOR ARM, KEIL FOR C51 等,安装完以后图标都是一样的,但是支持的芯片内核不一样,第一个是ARM内核专用,第二个才是51内核用的。两者还可以根据安装包大小区分,一般KEIL FOR C51 版本的软件安装包不会超过100MB,但是KEIL FOR ARM 一般都是300M以上。
KEIL FOR C51
这个编程软件是收费的,没有付费的软件有软件编译大小限制,超过一定代码量后就会编译错误提示了。但是一般个人学习使用可以使用注册机软件免费破解到2020年免费使用。至于2020年以后怎么办,应该会有新的注册机出来吧。
IDE集成了编辑器和编译器功能,软件没有内置STC单片机型号,如果想编译STC单片机的项目的话,需要在烧录工具STC-ISP中添加芯片型号到软件安装目录。就可以找到使用了
STC芯片列表
KEIL编译功能还可以,但是编辑器功能实在不好用,没有代码提示、编辑器背景颜色主题可以修改但是颜色比较单一。我一般都是使用visual studio code进行代码编辑,然后使用KEIL编译来做,这样虽然两个软件来回切换,但是效率会高很多
visual studio code
片内外设:
我们拿STC经典的一款STC89C52和最新系列的一款STC15F2K60S2抽取几个主要参数来分别看一下。
STC89C52:
程序储存空间:8KB运行内存空间:0.5KBEEPROM:4KB串口:1个,没有独立波特率发生器外部中断口:2个定时器:3个,没有硬件PWM功能ADC模数转换:无价格:3元STC15F2K60S2:
程序储存空间:60KB运行内存空间:2KBEEPROM:1KB串口:2个,部分含有独立的波特率发生器外部中断口:5个定时器:6个,部分含有硬件PWM功能ADC模数转换:10位,1024分辨率价格:6元可见,STC推行这么多年,自家产品性能还是有很大提升的,针对主流应用需求加了很多功能外设,比如ADC模数转换、硬件PWM等,也推出了很多小型SOP-8系列封装的单片机,用在更小巧的场合,价格能做到1.5元左右。
优缺点比较:
STC芯片本身在进步,但是价格相对国外其他同性能的主流芯片来说,还是偏贵。仿真功能没有跟上,只有部分高端芯片支持硬件在线仿真,还需要设置一些东西才可以。这点就受限于做开发功能可以,但是很多不愿意用STC来做应用。时钟管理的比较混乱,各个外设之间不是独立运作的,牵一发动全身。比如有些串行口没有独立的波特率发生器,就必须占用某个定时器的资源来使用这个外设,两者必须同时来使用。这就显得很麻烦且不好进行功能分配。没有专用的IDE,如果STC官网推出一个STC专用的IDE,可以直接支持编辑、编译、仿真、和烧录的话,对新手就更友好了,相信市场普及率也不会是现在这个局面了。很多量比较大的产品还是宁愿使用其他的片子比如新塘,毕竟都需要性价比和成本核算的。但是一般这种芯片学习资料比较少,需要专业人员开发产品的时候根据手册进行开发,不适合拿来入门学习。
“下次将为大家介绍一下关于STM8系列单片机的详细情况,并会随后推出一些教程跟进"
有问题或者错误的,可在下方评论指出。
相关问答
stm32 单片机 可以用 stc - isp 烧录吗?不可以,STC-ISP是STC单片机的专用烧录工具,工作模式是ISP工具软件驱动USB→UART,再通过单片机串口1下载程序。STM32的烧录端口是SWD或JTAG,使用的硬件工具是...
为什么 STC - isp 检测不到我的 单片机 ?可能是单片机与STC-isp的兼容性问题导致检测不到。原因解释:1.STC-isp通常适用于STM32和STC系列单片机编程,但是不同品牌、不同型号的单片机在硬件上和编程...
STC 的 单片机 用什么软件编程?学习入门从51的吧,51用的是keil编程,然后建议使用国产STC类的学习,淘宝有很多开发版,一般都会配视频教程,STC下载器用的是isp。学习入门从51的吧,51用的是kei...
单片机 和 单片机 的区别?没啥区别。stc单片机很多就是51单片机。只是功能比51的强大些。如有的STC单片机有自带ad等等。基本上,MCS-51单片机都可以通用。另外就是STC单片机可以通过串...
单片机 怎么不用烧写程序软件将程序导入芯片-ZOL问答不过高级的单片机有个功能,比如说stm32可以直接读写u盘的,预先烧写一个bootloader程序进去,以后要升级程序的时候只要把u盘插上,单片机就自动开始烧写了。不知...
stc - isp 烧录软件如何给51 单片机 烧录?需要利用下载器和下载软件才能将keil程序输出的hex文件烧录到单片机中。具体操作请参照以下步骤,演示单片机为51单片机。1、首先准备好51单片机最小系统板和...
现在 单片机 有了 ISP 功能,还买烧写器是不是落伍了呢?-ZOL问答买转串口的啊、用STC89C52RC,可以直接用KEIL编译。支持C,现在主流的51系列我用ISP写过单片机,效果远不如烧写器ISP是烧录器的简化的开发方式。在工程开发中...
stc - isp 烧录软件如何给51 单片机 烧录?1、首先准备好51单片机最小系统和烧录器。2、打开stc-isp烧录软件选择好单片机型号,这里的所选的单片机型号为STC89C/LE52RC。在此可以观察到“串口号”显示没...
单片机stc 90c516rd+和at89s52的联系和区别?两种都是51单片机,内核是一样的,IO引脚也一样主要的不同是FALSH,RAM及外设的不同,程序下载方式也不同stc90c516rd+可以用串口进下ISP下载,可以看其它的...
keil中如何添加 stc单片机 ?在Keil中添加STC单片机,需要按照以下步骤进行操作:1.打开Keil软件,并创建一个新的工程。2.在弹出的对话框中选择"STC"作为目标设备的厂商。3.在厂商列表....