用51单片机就用STC51,手把手教你STC51的ISP_ynetzg的空间_百度空间
说起我从认识学习使用C51到现在有两年多,时间不长,菜鸟一只。从用TOP151烧写AT89C51,到用easy51pro在线编程AT89S51,再到用STC-ISP软件在线编程STC89C51,{zh1}现在变得越来越懒,干脆用protues仿真外围电路。

现在简单的总结一下,入门级的C51学习在没有昂贵的单片机仿真器情况下,怎样算是方便调试又花费少吧。

先说说AT89C51,噢,差点忘了,这型号的单片机不知何年被停产了,现在就靠它的库存仍在这个历史的舞台上挣扎。

缺点:对入土为安的芯片没什么好说了。

那就说AT89S51,这可是一个令人振奋的产物,{zd0}的特点莫过于它的ISP(在线编程)功能,就是使用者每编译好程序,就可以立即通过ISP下载线写到单片机上去。而且ISP下载线的制作简单令单片机和我们的距离更加接近了。它的ISP原理图如下:



其中ISP下载程序可以用easy 51pro v2.0。相比昂贵的仿真器,做上图的元器件总共也就十块钱左右吧。

缺点:一、并口连接电脑,1.可能占用打印机口;2.是笔记本是没有并口的。

二、下载线制作一次成功率不大,不是漏接了这个脚就是那个口,对于新手而言尤其这样。

三、下载线寿命不长,一两次不知明的原因(通常静电),就可以把里面的那块芯片(74LS244)烧坏。并且,实际你都不知道到底哪里出毛病了。

也许,世界上真的没有{zh0},只要更好,自从好友张JL和陈Y介绍了STC的51系列单片机给我之后,发现竟然有这么方便好用功能强大的单片机。

STC51单片机的型号跟ATMEL的大致一样,有STC89C51,C52等,对应于AT89C51,C52等对应它们的内部RAM内部ROM中断口等,是xx一样的。

当然,STC系列单片机是改进型的单片机,它的热重启,串口ISP等功能确实为我准备介绍给大家提供了理由。

先说说ISP功能,它跟电脑连接就只有三根线,就是通过RS-232传输。它ISP过程是这样的:冷重启(上电)-单片机运行系统ISP监控程序(出厂时已烧到里面)-检测P3.0/RXD有没有合法下载命令流,有的话,就下载用户程序进户程序区;没有的话,就跳到用户程序区,运行用户程序。 所以,{dy}次下载程序,用户需要先点ISP下载软件的“download”,再把单片机通电。如图:
点击查看大图

到了这里,大家不禁会说,下载线虽然简单,但每次都要断电上电,烦不烦?答:我都觉得烦。不过眼睛锐利的读者发现了上图右下片有一段文字。说什么的呢?哦,原来是自定义下载。什么是自定义下载?首先我先说个高兴的事儿——用自定义下载,从此告别断电上电的冷重启ISP下载。

所谓自定义下载,就是我从上面软件的自定义下载命令文本框中打入十六进制数字(如:FEH)然后点击发送,程序自动下载到用户单片机里。神奇吧。 究其不用断电上电冷重启的原因,就是上面我所说的STC单片机具有热重启功能。用户只需简单控制ISP_CONTOR特殊功能寄存器即可实现系统复位了。汇编语句是:

MOV 0E7H,#60H

那么,自定义下载又如何做到呢?其编程思想是这样的:主程序开始初始化串口,包括设置波特率和串口中断,然后在串口中断子程序里写上语句判断是否为自定义下载码,再延时一秒左右,和上面的那句话 MOV 0E7H,#60H 。就这样就完了,不难吧。注意,自定义下载那里有一个波特率设置,这个波特率就是你的程序(已下到单片机中的程序哦)里设置的波特率。

下面用汇编写段示例程序:

ORG 0000H
AJMP START
ORG 0023H
LJMP ZIJI

ORG 0100H
START: MOV SP,#70H

MOV TMOD,#20H ;T1方式2
MOV TH1,#0F4H ;4800B/S
MOV TL1,#0F4H
SETB TR1
MOV SCON,#0F8H ;串行口为方式3,允许接收,SM2=1,TB8=1
MOV PCON,#80H ;smod=1 !!!!!!!!!
SETB EA ;开所有中断
SETB ES ;开串口中断
CLR RI

.....

ORG 0200H

ZIJI: CLR RI ;串口中断子程序
PUSH ACC
PUSH PSW
MOV A,SBUF
MOV R1,A
XRL A,#0FEH ;判断是否为自定义下载命令(FEH)
JZ ISP

...

RETURN:PUSH PSW
PUSH ACC

RETI

ISP:
CALL DL1S ;调用延时1秒子程序
MOV 0E7H,#60H ;运行重启程序
AJMP RETURN

附上STC的下载线原理图:
点击查看大图

刚上网搜到一个简单的电路图(本人没验证,仅供参考)
点击查看大图

如果还是觉得用串口实在不方便的话,那我就推荐你使用USB转串口下载线啦。

原理图也不十分难,自己做也可以,只是其中用到的CH341S芯片有点贵(约15元左右)。附上原理图
点击查看大图


郑重声明:资讯 【用51单片机就用STC51,手把手教你STC51的ISP_ynetzg的空间_百度空间】由 发布,版权归原作者及其所在单位,其原创性以及文中陈述文字和内容未经(企业库qiyeku.com)证实,请读者仅作参考,并请自行核实相关内容。若本文有侵犯到您的版权, 请你提供相关证明及申请并与我们联系(qiyeku # qq.com)或【在线投诉】,我们审核后将会尽快处理。
—— 相关资讯 ——