|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
0 u$ i9 e) u# s摘要:MCS51单片机是目前国内实用最广泛的一种单片机
1 p$ b* e6 k/ V0 w型,全球各单片机生产厂商在MCS51内核基础上,派生了大
& b# w8 U0 p+ Y- x5 Z' r6 W量的51内核系列单片机,极大地丰富了MCS51的种群。其$ `. B) Y/ \4 `, O
中,STC公司推出了了STC89系列单片机,增加了大量的新$ G6 `' \7 y7 M
功能,提高了51的性能,是MCS51家族中的佼佼者。文章主- d* h$ `& A1 \
要介绍了该单片机种与MCS51的不同之处,并根据笔者的
/ a. F m6 O e1 h6 _" x$ u& B实践,提出了一些需要注意的地方。/ v- \5 }# e4 }+ }9 P
. [" O9 N) H3 a2 x2 y" S C
关键词:MCS51;单片机;ISP; IAP1 v: k0 ~+ r7 M1 W& q z
. [: Y9 d" B& _! T6 a5 L) \+ v
6 Z, A+ B( c# x4 Q) ^7 m1引言
3 _: m0 e/ `* n4 B( m) i随着电子技术的迅速发展,单片机技术的出现给现代工业5 j) ]6 ?! i0 g% P) b
测控领域带来了-次新的技术革命。目前,单片机以其高可靠
?# ^% z% J B* {/ s性高性能价格比,在工业控制系统数据采集系统、智能化仪器- I$ q r* D+ c( x( U' a
仪表.办公自动化等诸多领域得到极为广泛的应用,并已走入家% ]3 j& k. @, t2 K2 h8 S
庭,洗衣机、空调等,到处都可见到单片机的踪影。5 E2 o2 O1 ?) i3 d4 `" \% L
在单片机家族的众多成员中, MCS51系列单片机以其优越4 F/ J& A+ p$ Y# x' [$ p, o l
的性能.成熟的技术及高可靠性和高性能价格比,迅速占领了
F8 O @( f5 V5 ^3 |, L3 _工业测控和自动化工程应用的主要市场,成为国内单片机应
) }/ H" b9 \+ ~2 D/ J; `% L用领域中的主流。世界各大单片机厂商都在MCS51上投入了5 ~' t4 Z# R, X
大量的資金和人力,围绕51内核,衍生出许多品种,增强51单4 N0 O& v- \' `* Q c7 N# @- y& i
片机的各种功能。MCS51家族是目前在单片机领域发展最快* H, Y# N$ Q6 P, C* f' c
的一个品种。7 x4 q% g d: U% H0 O* x
这里要向大家推荐的是新近由STC公司推出的高性价比
/ t9 V j( X2 i# T: z的STC89系列单片机。
6 l! d6 P6 g# d& K( T& f* y$ {. L2 STC89系列单片机的性能
8 M2 o4 W. A1 GSTC89系列单片机是MCS- -51系列单片机的派生产品。它0 e; V( Q6 }1 Y% [2 N2 i, a7 r M
们在指令系统硬件结构和片内资源上与标准8052单片机完全
. G! Q* ~# y- U兼容,DIP40封装系列与8051为pin- to -pin兼容。STC89系列单; Y& \8 [; z+ w/ N8 R/ \
片机高速(最高时钟频率90MHz),低功耗,在系统/在应用可编程3 q( ~: s- G0 Q4 A- |
(ISP ,IAP),不占用户资源。下面主要介绍STC89系列单片机有特
6 J$ d- r4 \& m3 @% D! j色之处及需要注意的地方。
0 @/ ^' Q4 r2 \5 j: L3 i一、1kbit片内RAM(数据存储器)
( C5 q' Z7 b+ ]( J- Z# q4 r/ j普通8051系列单片及片内RAM只有128 (8051) 或2567 @* ^. ?- C; y
(8052)字节。
. m9 {5 s, f( N" T c# E1 F1.低128字节(地址:00H-7FH),可直接或间接寻址;
: _' y) d9 _# k2.高128字节(地址: 80H~FFH),只可间接寻址;
/ @& P$ r. }' Q; DSTC89系列单片机另外增加了768字节的片内扩展RAM,
7 ~ a8 ]2 l9 R5 V. i, h7 M以解决众多技术人员在编程时的RAM资源严重缺乏的问题。
6 N% C7 H0 U7 G768字节的片内扩展RAM(地址:00H~2FFH)与外部扩展.& C) A. ]/ Q3 V! x/ D& C
RAM地址:重叠,单片机可通过软件设置AUXR.1,决定是否使用
* W8 W0 [( a3 I9 @! K- k- y片内扩展RAM,以防止可能的与外部扩展RAM的冲突,默认为
3 H; t/ ~3 P1 \9 W% y使用片内扩展RAM。
8 y3 E( z5 R8 ?# V0 P8 ]片内扩展RAM的访问采用间接寻址,可通过
2 j- ~, {# [& q5 Y, B6 Z8 H4 Z1 e K0 f) O/ T+ `; V
1引言8 O& Q8 o! F5 H( [) P
随着电子技术的迅速发展,单片机技术的出现给现代工业
7 z2 b3 B' o# H测控领域带来了-次新的技术革命。目前,单片机以其高可靠) ?9 t7 {3 E _2 |* U% U% t
性高性能价格比,在工业控制系统数据采集系统、智能化仪器' B# J# L8 U3 N* K% p7 w8 I" P+ G
仪表.办公自动化等诸多领域得到极为广泛的应用,并已走入家
' E- s, ]! z" h$ h庭,洗衣机、空调等,到处都可见到单片机的踪影。
* r# P" ~9 c- }! n0 a) t/ f" D$ r" q7 m在单片机家族的众多成员中, MCS51系列单片机以其优越$ b: h0 {) h( G
的性能.成熟的技术及高可靠性和高性能价格比,迅速占领了
- @- W. W' ?& P2 |6 e4 ?0 A4 l; E工业测控和自动化工程应用的主要市场,成为国内单片机应6 |9 r U! {$ G, S0 Z
用领域中的主流。世界各大单片机厂商都在MCS51上投入了
/ o$ u+ \3 B5 d7 C4 ~* @( S0 D大量的資金和人力,围绕51内核,衍生出许多品种,增强51单1 s# c* \' y7 l4 X; k
片机的各种功能。MCS51家族是目前在单片机领域发展最快
: }8 F* B% S8 [ Q2 u6 o的一个品种。. B1 e9 m" U# A1 U
这里要向大家推荐的是新近由STC公司推出的高性价比
% _' h: Q8 @3 ^4 F$ u的STC89系列单片机。2 T0 c& O4 k |- D1 `6 B! M
2 STC89系列单片机的性能
1 N! ?/ p9 [# g6 A' N' TSTC89系列单片机是MCS- -51系列单片机的派生产品。它 ]$ U% ? S' b9 s) G
们在指令系统硬件结构和片内资源上与标准8052单片机完全0 P8 m7 h8 A+ \; E: i0 d
兼容,DIP40封装系列与8051为pin- to -pin兼容。STC89系列单
2 M3 c+ _- f6 i* l8 R+ ~7 F+ T% q片机高速(最高时钟频率90MHz),低功耗,在系统/在应用可编程, a# R, k) y1 z5 b4 B
(ISP ,IAP),不占用户资源。下面主要介绍STC89系列单片机有特% R& b8 ^2 I- Z6 o9 A
色之处及需要注意的地方。
! m# r4 b; T1 ]2 ~5 d' W, `- D一、1kbit片内RAM(数据存储器)
: U5 F- R5 X6 c9 l普通8051系列单片及片内RAM只有128 (8051) 或256# [$ D$ ^& X3 J" {! I' e
(8052)字节。
7 {- ~) [4 h3 H) v, ]! M! Q" ?1.低128字节(地址:00H-7FH),可直接或间接寻址;
! M7 T! C7 {1 U5 \6 o5 ]1 A2.高128字节(地址: 80H~FFH),只可间接寻址;; k( G0 W8 K& i `. Z h
STC89系列单片机另外增加了768字节的片内扩展RAM,
" @( ?( D( `1 q) E0 {' T, n0 A: e以解决众多技术人员在编程时的RAM资源严重缺乏的问题。
$ A: T6 ~& d* L" B$ M1 D. w768字节的片内扩展RAM(地址:00H~2FFH)与外部扩展.
, S u; D# B, T8 j, LRAM地址:重叠,单片机可通过软件设置AUXR.1,决定是否使用6 W; V2 C+ x# f: A# S6 K! {$ n# o
片内扩展RAM,以防止可能的与外部扩展RAM的冲突,默认为
; ?6 s' Q- F+ R" v5 h# \- n使用片内扩展RAM。' n$ X+ g: m l7 Y: |
片内扩展RAM的访问采用间接寻址,可通过
/ Z8 ^& I8 r$ z; V9 H5 k2 D& ]
" `! m2 G& l# C6 h& E* r①、M0VX A,@DPTR 或MOVX @DPTR ,A指令访问片内6 G+ o) {- i% T+ F) U/ D
扩展RAM(00H~2FFH,共768字节);: z" A# \' G/ e$ Q8 f$ f+ G9 y
②、M0VX A.@Ri 或MOVX @Ri,A 指令访问片内扩展8 B, ]$ S4 V* _
RAM(00H~FFH,共256字节)。
0 L' H W: X/ P+ h c; d* S当DPTR≥300H时,系统访间外部扩展RAM。
! v' S; {: J9 k. J( i$ J注意:在使用第二种指令时,特别要注意是使用MOV还是$ \4 k; e/ n/ k+ P& P. r8 t
MOVX,MOV访问的是片内RAM, MOVX访问的是片内扩展+ r; L; E, u" n5 n, x. u. J
RAM,刚刚接触此类单片机的技术人员最容易在这里犯错误。
3 c! D+ I6 ^$ Z二、64/32/16/8K片内Flash(程序存储器)与ISP功能" E: n2 E9 g. h' m- w
STC89系列单片机按芯片型号分别有64/32/16/8K 片内
N7 T1 t% _, cFlash,分为2个Flash 存储块:Block0和Blockl。2 个Flash 存储( r$ \$ B; q+ T7 M
块在物理_上Block0在前,,Block1在后。通过REMAP功能可以将
" _" J4 M b. O! {; G) f; U# jFlash块重定位。
2 \! w' O1 c/ P+ e6 H% M: o. K3 u3 g使用过SST89系列单片机的用户要注意与STC89区别:
; I: ~) L3 _! Y$ S5 d* |①、Block1大小不同;②. ,Block 扇区大小不同;③、指令及; N }2 F7 S V1 J
SFR的不同。
, `. _! d' V& ?1 }( ESTC89有2个配置位SC0,SC1控制上电复位/外部复位后
( V+ X( ^& i# Y程序是从Block0还是Block1启动。$ j4 ~- h3 O1 p* C" _
①对于STC89C58 , SC0, SC1同时起作用:
% B1 q6 p2 D6 M6 V" N3 y F& x+ _SC1 ,SC0=0,0程序是从Block0启动;" D7 @$ u( G h* R6 m v$ S, P
SC1, SC0=1,1 程序是从Block1启动,这时Block1物理上在- d3 ?5 x7 ]4 ^) X* p! W
后8K(E000H~FFFFH),逻辑.上又影象到前8K(0000H~1FFFH),
4 L* W1 T k f5 z" ^3 cBlock0前8K对于PC指针不可见。
8 T& V% _; G2 ^% h3 Z②对于STC89C16,只有SCO起作用:5 C- ^6 ?. C0 @+ h- Z) f: t
SC0=0程序是从Block0启动;
4 Q& b) U4 ?% C( E. TSC0=1程序是从Block1启动.这时Block1 逻辑上影象到前
1 C( u* V& f& q9 U5 U8(10000H-1FFFH),将Block0 前8K单元覆盖。- G+ ` \; k: ]( Q Z) l6 M
% ^8 Y" w0 _* l9 L, c8 G' G3 V- r. X" k/ r
$ z6 j4 O* o: q/ r. P) z
附件下载:$ u+ K/ ~4 m) ]1 a0 [
0 q# Z- P1 _' f
|
|