唯倚社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 495|回复: 0

[交流讨论] 初入15,STC15系列单片机取代传统8051的注意事项

[复制链接]

21

主题

148

帖子

1158

积分

超级版主

Rank: 8Rank: 8

积分
1158

最佳新人

发表于 2017-11-16 13:32:46 | 显示全部楼层 |阅读模式

轻松玩转社区

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
STC15系列单片机取代传统8051注意事项
STC15系列单片机的定时器0/定时器l与传统8051完全兼容,上电复位后,定时器部分缺省还是除12再计数的,所以定时器完全兼容。
      STC15系列单片机对传统8051的111条指令执行速度全面提速,最快的指令快24倍,最慢的指令快3倍,速度也比STC早期的1T系列单片机(如STC12/11/10系列)的速度快20%。靠软件延时实现精确延时的程序需要调整。
STC15系列单片机引脚与传统51单片机不同
stc1115a.jpg


需注意的细节:
普通I/O 既作为输入又作为输出:
传统8051单片机执行I/O口操作,由高变低或由低变高,以及读外部状态都是12个时钟,而现在STC15系列单片机执行相应的操作是4个时钟。传统8051单片机如果对外输出为低,直接读外部状态是读不对的,必须先将I/O置高才能够读对。
传统8051单片机由低变高的指令是12个时钟,该指令执行完成后,该I/O口也确实已变高,故可以紧跟着由低变高的指令后面,直接执行读该I/O口状态指令。而STC15系列单片机由于执行由低变高的指令是4个时钟,太快了,相应的指令执行完以后,I/O还没有变高,要再过一个时钟之后,该I/O口才可以变高。故建议此状况下增加2个空操作延时指令再读外部口的状态。

I/0口驱动能力:
最新STC15系列单片机I/O口的灌电流是20mA,驱动能力超强,驱动大电流时,不容易烧坏。
传统STC89Cxx系列单片机I/O口的灌电流是6mA,驱动能力不够强,不能驱动大电流,建议使用STC15系列。

看门狗:
最新STC15系列单片机的看门狗寄存器WDT_CONTR的地址在C1H,增加了看门狗复位标志位
最新STC15系列单片机的看门狗在ISP烧录程序可设置上电复位后直接启动看门狗,而传统STC89系列单片机无此功能。故最新STC15系列单片机看门狗更可靠。
stc_8051a.jpg

ISP/IAP_TRIG寄存器有效启动IAP操作,需顺序送入的数据不一样:
STC15系列单片机的ISP/IAP命令要生效,要对IAP-TRIG寄存器按顺序先送5Ah,再送A5h方可。STC89xx系列单片机的ISP/IAP命令要生效,要对IAP_TRIG寄存器按顺序先送46h,再送B9h方可。

EEPROM起始地址不一样:
STC15系列单片机的EEPROM起始地址全部从0000h开始,每个扇区512字节。STC89xx系列单片机的EEPROM起始地址分别有从1000h/2000h/4000h/8000h开始的,程序兼容性不够好。
stc_8051b.jpg
外部中断:
最新STC15系列单片机有5个外部中断。其中外部中断0(INTO)和外部中断1(INT1)可配置为2种中种触发方式:
第一种方式,仅下降沿触发中断,一与传统8051的外部中断0和1的下降沿中断兼容。
第二种方式,上升沿中断和下降沿中断同时支持。
另外相对传统STC89系列单片机,最新的STC15系列单片机还增加了外部中断2、外部中断3和外部中断4,这三个新增的外部中断都只能下降沿触发中断。
而传统STC89系列单片机的外部中断0和外部中断1只可以配置为下降沿中断或低电平中断。

定时器:
最新STC15系列单片机的定时器/计数器0和定时器/计数器1与传统STC89系列单片机的定时器/计数器0和定时器/计数器1的最大不同在于定时器的工作模式0。
最新STC15系列单片机的定时器/计数器0和定时器/计数器1的工作模式0是16位自动重装载摸式,而传统STC89系列单片机的定时器/计数器0和定时器/计数器1的模式0是13位定时/计数器模式。
最新STC15系列单片机的定时器/计数器0和定时器/计数器1仍保留着其他3种工作模式,这3种工作模式与传统的STC89系列单片机的定时器/计数器0和定时器/计数器1的工作模式兼容。
另外传统的STC89系列单片机还设有定时器2,而最新STC15系列单片机只有定时器0和1。

外部时钟和内部时钟:
最新STC15系列单片机内部集成了高精度R/C振荡器作为系统时钟,省掉了昂贵的外部晶体振荡时钟。而传统STC89系列单片机只能使用外部晶体或时钟作为系统时钟。

功耗:
功耗由2部分组成,晶体振荡器放大电路的功耗和单片机的数字电路功耗组成,晶体振荡器放大电路的功耗:最新STC15系列单片机比STC89xx系列低。
单片机的数字电路功耗:时钟频率越高,功耗越大,最新STC15系列单片机在相同工作频率下,指令执行速度比传统STC89系列单片机快3-24倍,故可用较低的时钟频率工作,这样功耗更低。
而且STC15系列单片机可以利用内部的时钟分频器对时钟进行分频,以较低的频率工作,使得单片机的功耗更低。

掉电唤醒:
最新STC15系列单片机支持外部中断上升沿或下降沿均可唤醒,也可仅下降沿唤醒。传统STC89系列单片机是只支持外部中断低电平唤醒。
另外最新STC15系列单片机还内置了掉电唤醒专用定时器。


ISP/IAP_TRIG寄存器有效启动IAP操作,需顺序送入的数据不一样:
STC15系列单片机的ISP/IAP命令要生效,要对IAP-TRIG寄存器按顺序先送5Ah,再送A5h方可。STC89xx系列单片机的ISP/IAP命令要生效,要对IAP_TRIG寄存器按顺序先送46h,再送B9h方可。

EEPROM起始地址不一样:
STC15系列单片机的EEPROM起始地址全部从0000h开始,每个扇区512字节。STC89xx系列单片机的EEPROM起始地址分别有从1000h/2000h/4000h/8000h开始的,程序兼容性不够好。

评分

参与人数 1E币 +10 收起 理由
admin + 10 唯倚社区,感谢有你~

查看全部评分

*滑动验证:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|weiecn ( 湘ICP备14002058号 )

GMT+8, 2018-6-19 23:45 , Processed in 0.166665 second(s), 21 queries , Redis On.

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表