|
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
摘要:在介绍PMc一16LX系列的主要特点和结构的基础上,对其CPU和中断系统进行了
! @3 e2 X1 b- h7 b9 E' A分析,描述了该系列单片机的开发工具及编程方法。
- Q4 W6 n9 D4 z$ M! [" M$ N" w
) r' p% U% R5 ` p+ S( O8 T4 DF=MC一16LX系列单片机是富土通公司推出的
% _3 ?' y% U: l0 Q新型16位微处理器,图l为该系列的部分单片机,
9 o: O( n( [7 R1 o; L# S5 L: {针对不同应用领域该系列单片机的外围功能略有
' |0 n7 ^0 p/ ]9 o+ c5 V1 W不同,它们共同的特点是都具有大量的外围功能,
4 C0 k. r' y0 I& q) v. k(1)低电压、高速度:5V供电时,最小指令执行
) D1 i8 F1 B' v0 L时间为62.5ns/16MHz,2.2V供电时,最小指令执行/ t" p" f l' x9 ^) E$ p6 o& d8 V
时间为100ns/10MHz;
- z# U: z4 q& C(2)嵌入PLL时钟倍频电路:工作时钟可以选
$ ^' L8 ^0 G5 P! d. f3 Q" i择晶体时钟的1/2、1、2,3、4倍频。大大减小了EMI
, d0 z7 P5 Q* l0 o" m1 B1 i噪声,同时还提供32kHz的子系统时钟;7 ?" d9 l4 h5 p! N2 a- I* C2 Q
(3)优化的指令集:位、字节、字、长字等数据类3 F# Y5 L. A$ u
型,多达23种的寻址方式,带符号的乘、除法指令,
+ |6 g7 T' U7 {' x7 m大大提高了代码的效率,32位的累加器保证了算术
/ ^, W9 H; K9 M- G# N6 I8 w运算的高精度;支持C语言与多任务处理,提供丰
$ j. i8 n; `! Z5 N2 G9 C/ H富的指针;
0 K! I/ e3 H5 M! q(4)采用4字节指令预取队列的流水线技术,
0 H2 x9 [7 U0 [/ N% K$ V& E! F最小指令周期为62.5ns(16MHz);
8 g' N2 F8 G/ _8 y(5)强大的中断功能:8个可编程中断优先级。
! a! j# S% Y) {3 V Q$ h支持近40个中断源; {6 W' `4 u5 J: W$ T+ @
(6)独立于CPU的自动传输功能:扩充智能I/
; S- c6 P- ]% \* P, v0 R0服务完成I/O口与存储器之间自动数据传输,减
. _. T2 ?7 O" j& T# x! f少了用户编程,提高了数据的传输速度;
T" j9 s) c9 p& K7 U(7)灵活的I/O口编程:每个I/O均可根据需
1 u: U" d! q, ~+ a& x要设置为输入口、输出口或专用[J;* Q# b* O7 ]- f+ G- t
(8)程序补丁功能:提供两个程序补丁地址指
* w: i' e8 |/ v t针,可对掩模后程序中出现的错误进行修改,以减- @1 P& [' e# M8 h( a
少损失,节约成本;
$ G) M: G/ Y+ q% y(9)电路进行了噪声保护优化,所有引脚均有* n# K! O& h6 ~4 K9 b7 C! p( W
噪声滤波器;
" x# d- Y3 l E7 R- s6 W# Y(10)低功耗的能量管理:待机、睡眠、停机、CPu
' z* Y8 p) J+ `1 ]: J间歇工作、子时钟的工作和睡眠等多种低功耗模4 T: }- u I" J" ^) @/ ~* F
式;
4 i* S1 H v. W( G; {6 c(11)多种ROM大小和类型:掩模ROM(最大
+ ?3 D- Q+ V( m9 H0 P( V256Kbytes),nASH ROM(64K/128K/256K bytes).5 C- A' R9 [! i- C
内部RAM(4 K/6 K/8 Kbytes);- G* k, G5 I6 ]9 V8 U
(12)支持16M寻址空间内的字、字节寻址;# N( N; t' w4 d5 L3 Z# f8 n6 {* U! P
(13)地址、数据总线的复用或非复用可通过软
" {* T: J- K6 A件进行设置;, I6 t& h8 l, f# C- R" t+ e6 s
(14)FLAsH ROM编程:支持自动编程,具备可% {: ?8 ^5 U8 h Z* }! s$ J
擦写、可恢复和自动保护功能,擦写次数大于lO万5 _$ g) k/ b6 |; D3 G' ?" A/ B
次,数据可靠存储10年以上,可设置加密位;
' {4 G: ~1 Y; ?7 R3 u% s' W# i(15)7-作温度_40—105℃;存储温度一55—150℃。$ O1 j( g& L! Q' Z' X
2 CPU结构分析
& R+ {$ Y) Y. q c: lFFMC一16LX系列单片机的CPU内含11个专& K$ d1 r7 r* ?9 S9 r! N/ C5 R
用寄存器。通用寄存器位于RAMl80H一37FH的地. t+ X! d; Q) ~ j; @: o
址区内,分为32区,每个区可用作8位寄存器、16: p+ e5 S* s: C- g' |+ n: z
位寄存器或32位寄存器,寄存器指针指向当前通
( |7 `- g* e8 R8 A* Q' C' U4 v用寄存器工作区,寄存器的结构如图3所示。
- u- N; D3 K# j. n( i* x2.1专用寄存嚣! T3 p' l1 [* ^3 r9 N
(1)累加器(A):由两个16位累加器AH和AL, [2 B: t4 |1 P" M+ s! t/ c
组成,可以作为32位、16位或8位寄存器使用;
& u" _$ `# U- v( v( A: w(2)堆栈指针(USP,ssP):堆栈指针有用户堆栈
9 m7 ?( c/ Y; O; d! |指针(usP)和系统堆栈指针(ssP)两种,堆栈指针的高5 I- Q+ _. E" V& Y7 T" D0 M
8位地址由用户堆栈段寄存器(USB)或系统堆栈段
7 _ z+ X2 i- F* [寄存器(ssB)确定;( Q! e) B2 I# P& `+ z6 E0 \
(3)程序状态字(Ps):由中断级别屏蔽寄存器
' i5 P# I( x, C(ILM,3位,表明CPU当前接受中断响应的级别)、通7 G, u& L8 j! j2 U3 ~2 G
用寄存器指针(RP,5位,指向当前通用寄存器区的0 f4 ]6 T- g2 p. q+ e
首址)、条件码寄存器(ccR,8位,包括反映算术运算. c, e: Z# b0 g# B+ D9 l) y8 q( m
结果和传输数据的状态位)等组成;7 _ \8 t8 V) O6 Z
(4)程序计数器(PC):指定CPU将要执行的指
2 e" @ `, s+ y- Q) @令代码存放地址的低16位;
- G( {9 p/ n2 i4 r(5)直接分页寄存器(DPR):指定直接寻址指令
5 w+ P7 P; D( C$ q操作数地址的8-15位;& B: Z% L0 E! E( h& ^
(6)段寄存器(PCB,DTB,USB,SSB,ADB):五个
' u+ o; S& M, ~# K# o, U段寄存器是程序段寄存器(PCB)、数据段寄存器8 ^" w! V$ j* l% x/ C' e* V- S
(DTB)、用户堆栈段寄存器(usB)、系统堆栈段寄存器7 Z4 o- v0 c/ H$ w4 P$ f* }' {; P
(SSB)、附加段寄存器(ADB),分别用于指定相应段寻
6 S! d' z' |! K( t t. q址的高8位地址。
5 [1 h) V9 l& q5 g2 E2.2通用寄存器 e% T: G5 J! c: A! y% P: J$ S( U' L
通用寄存器是位于RAM中的180H到37FH
) T) m a4 C8 e的内存块,分为32个区,每区8个字。同一时刻只
% @ o, u9 f+ h能有一个区工作,可以用作通用8位寄存器(R0到7 U; b! w# n; p1 T) L* m% S7 `
R7)、16位寄存器(Rwo到Rw7)或32位寄存器(Rm
& F1 \$ f4 b& c) o0 k5 q- e到Rm)。通用寄存器的用法如表1所示。
5 e; v: x/ d7 R7 O6 f3中断系统. M. K3 }5 w% |+ V8 K! E
FFMC一16LX系列单片机共有8个可编程中断
+ j/ E9 W' ?3 g9 b- t2 o优先级,0级中断优先级最高,6级中断优先级最; }! t3 }5 z2 _' n! W
低,7级无中断.通过设置程序状态字(Ps)的中断级
9 A# s0 d4 I- j N别屏蔽寄存器(ILM)可以改变当前CPU接受中断响( c+ z' E4 z a% D% ~! Y
应的级别,低于该设置中断级别的中断源将被屏
' U, W0 B2 Q# A) C" s* b" D5 `6 |蔽。
! i1 l6 l1 {" u( ~6 ?FFMC一16LX系列单片机支持近4J0个中断源,
9 \$ j+ A4 A5 b+ C- j' D可以分为硬件中断、软件中断和扩充智能I/O服务7 f! t+ n K5 }; S" {
(E120s)和异常中断等4种类型。每个中断源都拥有6 p! _, {( t4 s" e9 _$ c
唯一的中断向量(包括中断号和中断地址),除复位. {+ O& z2 j o* z5 t% Q/ L
(Reset)、异常(ExceptioN)以及软件中断(1NT 9 in—2 {1 \7 b9 ~% T" D6 Q& a2 k4 d
struction)外,每个中断源都受~个中断控制寄存器+ x+ m% m$ Y1 S% E2 B( n4 N2 Z& p
的控制,该系列单片机共有16个中断控制寄存器(ICR),
8 K. j9 d- `. k) V% V3 P4 o& v% Q它们位于中断控制器中。中断控制寄存器负责6 Y1 V9 y6 e; d1 H) s# v/ q
管理相应的中断源,其主要功能有:设置相应中断% T" x/ \% N+ N
源的中断等级、选择响应中断作为一般中断来使用
1 l3 a3 D" F' l- H$ e4 T还是用作扩充智能I/O服务、选择扩充智能L/O服8 n' ?$ \# x2 V" Y2 M( E
务通道,共有16个扩充智能I/O服务通道。与16
( l2 c; [/ D: g4 [/ z个扩充智能I/O服务通道相对应有16个扩充智能
1 H, l0 R; y3 U7 \0 RI/O服务描述符(ISD),每个描述符占用8个字的: ]. Z% v5 o. K8 b5 ^! e
RAM空间,用于完成扩充智能I/0服务时I/O口与) V# `/ n9 K' ]8 V( M' L9 @
存储器之间自动传输数据的管理。3 j7 i1 q' v, t- e
扩充智能I/O服务描述符由数据计数器、指向9 D( y+ ?, b9 d$ y* @6 x
I/O寄存器的指针、指向RAM缓冲区的指针以及状
8 N6 D2 A4 a; y" Q+ Z* E7 g2 J态寄存器组成。状态寄存器用来指明指向缓冲区地
6 \+ _* t- p% c址指针和I/O寄存器的地址指针是固定还是更新、: R7 ]2 e2 w" a3 f' W6 k
传输数据格式(字节还是字)、传送方向(从I/O到缓
, ^; D! V" k2 w/ ]; ^. I, J2 e冲区还是从缓冲区到I/o)等。
! L. e) j" v5 _FFMC一16LX系列单片机提供的扩充智能I/08 V8 H9 Y3 Q0 a( P
服务事实上是一种硬件中断操作。中断允许发生' b7 z: Q) E$ |. {: z' B$ Z
时,中断控制器决定申请的中断是否有效,并选择5 s# G- t S2 { J9 }7 [
相应的扩充智能I/O服务操作,扩充智能I/O服务
& b' _, U$ \' i0 H" L* R根据扩充智能I/O服务描述符来进行I/O口与存
. n6 Z* W8 y8 r, H- l储器之间的自动数据传输,完成后返回CPU操作。
0 z# m4 K8 j2 A) ~. D与传统的I/O口与存储器之间的数据传输方式不
6 K% U ^5 q0 Q' e: T同,采用扩充智能I/O服务后,由于采用内部微代
2 y- k% a1 J9 H! n v X码不需要编写中断处理程卒,数据传输既不用内部
1 G+ b8 ^: T. H% C1 P寄存器也无就需保存寄存器的值,与DMA功能相
" P' j8 N7 {) f+ V* R& F$ z4 \8 x4 i$ |似,因此不但可以减少编程工作,而且提高了运行8 c6 V; B; _3 g! A `
速度。' q+ h v4 H& X% T% q/ W9 [! B
图4描述了硬件中断的处理过程,当外围硬件
7 { c: I5 L( \发生中断且中断使能①时,外围硬件发送一个中断5 i' t# k! \0 q8 M) ?3 y& p
请求到中断控制器②,中断控制器决定同时到来中
6 L" g- L/ Y) f, V( H; x" f" _8 x断的中断优先级并将优先级高的中断送到CPU③,7 B$ Y- B$ C1 x) G) f4 z
CPU比较请求中断优先级和中断屏蔽寄存器(IS:
4 @0 D, O0 n$ e" X' G: _ILM)的值④,若请求中断优先级高,检测中断使能标
. Y6 N1 `7 c+ V9 @( m+ a; O+ D志位(PS:I)⑤,若中断使能标志位为使能状态,则被" m ?) h- ~9 N D( @
请求中断级写入指令寄存器,在完成当前指令后,
* W0 o1 k, T \9 n" T" p- @CPU响应中断请求⑥,若为一般的中断请求,程序
. K! G7 P3 V E: T1 j K2 P2 w% z跳转到用户中断服务程序,若为扩充智能L/O服务' }& J9 u2 z* q& P: O3 y7 f8 Z) q0 D# g
程序,内部微代码根据扩充智能I/O服务描述符执; R5 E- G3 A; G8 r/ u9 T
行相应操作.当中断源在中断例程中被清除后,本
4 c; e, Y) T) Y( ?0 E! G次中断结束⑦。
% ^7 Y8 r3 \2 t+ h* y- v1 t! g. i6 _6 A7 \
附件下载:
) t4 x1 c' c3 D6 W. M- }+ ]" k: ^8 m/ R0 H9 `0 X
|
|