搜档网
当前位置:搜档网 › MSP430单片机特殊功能寄存器

MSP430单片机特殊功能寄存器

MSP430单片机特殊功能寄存器
MSP430单片机特殊功能寄存器

https://www.sodocs.net/doc/e59093280.html, Special Function Registers 1.10Special Function Registers

The special function registers,SFR,are listed in Table1-4.The base address for the SFR registers is

listed in Table1-3.

Table1-3.SFR Base Address

Module Base address

SFR00100h

Table1-4.Special Function Registers

Register Register Address

Register Short Form Initial State

Type Access Offset

SFRIE1read/write word00h0000h Interrupt enable register SFRIE1_L(IE1)read/write byte00h00h

SFRIE1_H(IE2)read/write byte01h00h

SFRIFG1read/write word02h0082h Interrupt flag register SFRIFG1_L(IFG1)read/write byte02h82h

SFRIFG1_H(IFG2)read/write byte03h00h

SFRRPCR read/write word04h0000h Reset pin control register SFRRPCR_L read/write byte04h00h

SFRRPCR_H read/write byte05h00h

Special Function Registers https://www.sodocs.net/doc/e59093280.html, SFRIFG1,SFRIFG1_L,SFRIFG1_H,Interrupt Flag Register

15141312111098

76543210 Reserved Reserved Reserved Reserved Reserved Reserved Reserved Reserved r0r0r0r0r0r0r0r0

76543210 JMBOUTIFG JMBINIFG Reserved NMIIFG VMAIFG Reserved OFIFG WDTIFG rw-(1)rw-(0)rw-0rw-0rw-0r0rw-(1)rw-0

Reserved Bit15–8Reserved.Reads back0

JMBOUTIFG Bit7JTAG mailbox output interrupt flag

0no interrupt pending.When in16-bit mode(JMBMODE=0),this bit is cleared automatically when

JMBO0has been written by the CPU.When in32-bit mode(JMBMODE=1),this bit is cleared

automatically when both JMBO0and JMBO1have been written by the CPU.This bit is also

cleared when the associated vector in SYSUNIV has been read.

1interrupt pending,JMBO registers are ready for new messages.In16-bit mode(JMBMODE=0)

JMBO0has been received by JTAG.In32-bit mode(JMBMODE=1),JMBO0and JMBO1have

been received by JTAG.

JMBINIFG Bit6JTAG mailbox input interrupt flag

0no interrupt pending.When in16-bit mode(JMBMODE=0),this bit is cleared automatically when

JMBI0is read by the CPU.When in32-bit mode(JMBMODE=1),this bit is cleared automatically

when both JMBI0and JMBI1have been read by the CPU.This bit is also cleared when the

associated vector in SYSUNIV has been read

1interrupt pending,a message is waiting in the JMBIN registers.In16-bit mode(JMBMODE=0)

when JMBI0has been written by JTAG.In32bit mode(JMBMODE=1)when JMBI0and JMBI1

have been written by JTAG.

Reserved Bit5Reserved.Reads back0

NMIIFG Bit4NMI pin interrupt flag

0no interrupt pending

1interrupt pending

VMAIFG Bit3Vacant memory access interrupt flag

0no interrupt pending

1interrupt pending

Reserved Bit2Reserved.Reads back0

OFIFG Bit1Oscillator fault interrupt flag

0no interrupt pending

1interrupt pending

WDTIFG Bit0Watchdog timer interrupt flag.In watchdog mode,WDTIFG remains set until reset by software.In

interval mode,WDTIFG is reset automatically by servicing the interrupt,or can be reset by software.

Because other bits in~IFG1may be used for other modules,it is recommended to clear WDTIFG by

using BIS.B or BIC.B instructions,rather than MOV.B or CLR.B instructions.

0no interrupt pending

1interrupt pending

34System Resets,Interrupts,and Operating Modes,System Control Module(SYS)SLAU208–June2008

https://www.sodocs.net/doc/e59093280.html, Special Function Registers SFRIE1,SFRIE1_L,SFRIE1_H,Interrupt Enable Register

15141312111098

76543210 Reserved Reserved Reserved Reserved Reserved Reserved Reserved Reserved r0r0r0r0r0r0r0r0

76543210 JMBOUTIE JMBINIE ACCVIE NMIIE VMAIE Reserved OFIE WDTIE rw-0rw-0rw-0rw-0rw-0r0rw-0rw-0

Reserved Bit15-8Reserved.Reads back0.

JMBOUTIE Bit7JTAG mailbox output interrupt enable flag

0interrupts disabled

1interrupts enabled

JMBINIE Bit6JTAG mailbox input interrupt enable flag

0interrupts disabled

1interrupts enabled

ACCVIE Bit5Flash controller access violation interrupt enable flag

0interrupts disabled

1interrupts enabled

NMIIE Bit4NMI pin interrupt enable flag

0interrupts disabled

1interrupts enabled

VMAIE Bit3Vacant memory access interrupt enable flag

0interrupts disabled

1interrupts enabled

Reserved Bit2Reserved.Reads back0.

OFIE Bit1Oscillator fault interrupt enable flag

0interrupts disabled

1interrupts enabled

WDTIE Bit0Watchdog timer interrupt enable.This bit enables the WDTIFG interrupt for interval timer mode.It is not

necessary to set this bit for watchdog mode.Because other bits in~IE1may be used for other modules,

it is recommended to set or clear this bit using BIS.B or BIC.B instructions,rather than MOV.B or CLR.B

instruction

0interrupts disabled

1interrupts enabled

Special Function Registers https://www.sodocs.net/doc/e59093280.html, SFRRPCR,SFRRPCR_H,SFRRPCR_L,Reset Pin Control Register

15141312111098

76543210 Reserved Reserved Reserved Reserved Reserved Reserved Reserved Reserved r0r0r0r0r0r0r0r0

76543210 Reserved Reserved Reserved Reserved SYSRSTRE SYSRSTUP SYSNMIIES SYSNMI r0r0r0r0rw-0rw-0rw-0rw-0

Reserved Bit15-5Reserved.Reads back0.

SYSRSTRE Bit3Reset pin resistor Enable.

0Pullup/pulldown resistor at the pin is disabled.

1Pullup/pulldown resistor at the RST/NMI pin is enabled.

SYSRSTUP Bit2Reset resistor pin pullup/pulldown.

0Pulldown is selected.

1Pullup is selected.

SYSNMIIES Bit1NMI edge select.This bit selects the interrupt edge for the NMI interrupt when SYSNMI=1.Modifying

this bit can trigger an NMI.Modify this bit when SYSNMI=0to avoid triggering an accidental NMI.

0NMI on rising edge

1NMI on falling edge

SYSNMI Bit0NMI select.This bit selects the function for the RST/NMI pin.

0Reset function

1NMI function

36System Resets,Interrupts,and Operating Modes,System Control Module(SYS)SLAU208–June2008

https://www.sodocs.net/doc/e59093280.html, SYS Registers 1.11SYS Registers

The SYS registers are listed in Table1-8and Table6.A detailed description of each register and its bits is also provided.Each register boundary.Both,word or byte data can be written to the SYS registers.

Table1-8.SYS Base Address

Module Base address

SYS00180h

Table1-9.SYS Configuration Registers

Register

Register Short Form Register Type Address Offset Initial State

Access

System Control Register SYSCTL read/write word00h0000h

SYSCTL_L read/write byte00h00h

SYSCTL_H read/write byte01h00h

Boot strap loader SYSBSLC read/write word02h0003h

configuration register SYSBSLC_L read/write byte02h03h

SYSBSLC_H read/write byte03h00h

Arbitration configuration SYSARB read/write word04h0000h

Register SYSARB_L read/write byte04h00h

SYSARB_H read/write byte05h00h

JTAG Mailbox Control SYSJMBC read/write word06h0000h

Register SYSJMBC_L read/write byte06h0Ch

SYSJMB_H read/write byte07h00h

JTAG Mailbox Input SYSJMBI0read/write word08h0000h

Register#0SYSJMBI0_L read/write byte08h00h

SYSJMBI0_H read/write byte09h00h

JTAG Mailbox Input SYSJMBI1read/write word0Ah0000h

Register#1SYSJMBI1_L read/write byte0Ah00h

SYSJMBI1_H read/write byte0Bh00h

JTAG Mailbox Output SYSJMBO0read/write word0Ch0000h

Register#0SYSJMBO0_L read/write byte0Ch00h

SYSJMBO0_H read/write byte0Dh00h

JTAG Mailbox Output SYSJMBO1read/write word0Eh0000h

Register#1SYSJMBO1_L read/write byte0Eh00h

SYSJMBO1_H read/write byte0Fh00h

reserved for future use10h

.....

17h

Bus error vector

SYSBERRIV read only word18h0000h generator

User NMI vector

SYSUNIV read only word1Ah0000h generator

System NMI vector gen.SYSSNIV read only word1Ch0000h

Reset vector generator SYSRSTIV read only word1Eh0002h

Access to some SYS registers is allowed only if the SYSLOCK bit is reset.

SYS Registers https://www.sodocs.net/doc/e59093280.html, SYSCTL,SYSCTL_L,SYSCTL_H,SYS Control Register

15141312111098

76543210 Reserved Reserved Reserved Reserved Reserved Reserved Reserved Reserved r0r0r0r0r0r0r0r0

76543210 Reserved Reserved SYSJTAGPIN SYSBSLIND Reserved SYSPMMPE Reserved SYSRIVECT r0r0rw-(0)r-0r0rw-(0)r0rw-(0)

Reserved Bits15-8Reserved.Reads back0.

SYSJTAGPIN Bit5Dedicated JTAG pins enable.Setting this bit disables the shared functionality of the JTAG pins and

permanently enables the JTAG function.This bit can only be set once.Once it is set it will remain set

until a BOR occurs.

0shared JTAG pins(JTAG mode selectable via SBW sequence)

1Dedicated JTAG pins(explicit4wire JTAG mode selection)

SYSBSLIND Bit4TCK/RST entry BSL indication detected to allow writing a backward compatible BSL to early‘430

families.See BSL entry in Spy-Bi–Wire

0No BSL indication

1BSL entry detected

Reserved Bit3Reserved.Reads back0.

SYSPMMPE Bit2PMM access protect.The control register of the PMM module can be accessed by a program running

…(If this bit is set to one it only can be cleared again by a BOR)

0…anywhere in memory

1…only from boot code area(01B00h-01BFFh)and the protected BSL segments.

Reserved Bit1Reserved.Reads back0.

SYSRIVECT Bit0RAM based Interrupt Vectors

0Interrupt Vectors generated with end address:TOP of lower64k Flash FFFFh

1Interrupt Vectors generated with end address TOP of RAM

38System Resets,Interrupts,and Operating Modes,System Control Module(SYS)SLAU208–June2008

https://www.sodocs.net/doc/e59093280.html, SYS Registers SYSBSLC,SYSBSLC_L,SYSBSLC_H,BSL Configuration Register

15141312111098

76543210 SYSBSLPE SYSBSLOFF Reserved Reserved Reserved Reserved Reserved Reserved rw-(0)rw-(0)r0r0r0r0r0r0

76543210 Reserved Reserved Reserved Reserved Reserved SYSBSLR SYSBSLSIZE r0r0r0r0r0rw-(0)rw-(1)rw-(1)

SYSBSLPE Bit15-7Boot strap loader(BSL)memory protection enable for the size covered in SYSBSLSIZE

0area not protected read,program and erase of memory is possible

1area protected

SYSBSLOFF Bit14-6Boot strap loader(BSL)memory disable for the size covered in SYSBSLSIZE

0BSL memory is addressed when this area is read

1BSL memory behaves like vacant memory

Reserved Bit13-3Reserved.Reads back0.

SYSBSLR Bit2RAM assigned to BSL

0no RAM assigned to BSL area

1lowest16bytes of RAM assigned to BSL

SYSBSLSIZE Bit1-0BOOT Strap Loader Size

This defines the space and size of Flash that is reserved for the Boot Strap Loader.

00Size:512B BSL_SEG_3

01Size:1024B BSL_SEG_2,3

10Size:1536B BSL_SEG_1,2,3

11Size:2048B BSL_SEG_0,1,2,3(value after BOR!)

SYS Registers https://www.sodocs.net/doc/e59093280.html, SYSJMBC,SYSJMBC_L,SYSBMBC_H,JTAG Mailbox Control Register

15141312111098

76543210 Reserved Reserved Reserved Reserved Reserved Reserved Reserved Reserved r0r0r0r0r r0r0r0r0

76543210 JMBCLR10FF JMBCLR0OFF Reserved JMBM0DE JMBOUT1FG JMBOUT0FG JMBIN1FG JMBIN0FG rw-(0)rw-(0)r0rw-0r-(1)r-(1)rw-(0)rw-(0)

Reserved Bit15-8Reserved.Reads back0.

JMBCLR1OFF Bit7Incoming JTAG Mailbox1flag auto-clear disable.

0JMBIN1FG cleared on read of JMB1IN register

1JMBIN1FG cleared by SW

JMBCLR0OFF Bit6Incoming JTAG Mailbox0flag auto-clear disable

0JMBIN0FG cleared on read of JMB0IN register

1JMBIN0FG cleared by SW

Reserved Bit5Reserved.Reads back0.

JMBMODE Bit4This bit defined the operation mode of JMB for JMBI0/1and JMBO0/1.Before switching this bit pad

and flush out any partial content to avoid data drops.

016bit transfers using JMBO0and JMBI0only

132bit transfers using JMBO0/1and JMBI0/1

JMBOUT1FG Bit3Outgoing JTAG Mailbox1flag.This bit is cleared automatically when a message is written to the

upper byte of JMBO1or as word access(by the CPU,DMA,…)and is set after the message was

read via JTAG.

0JMBO1is not ready to receive new data

1JMBO1is ready to receive new data

JMBOUT0FG Bit2Outgoing JTAG Mailbox0flag.This bit is cleared automatically when a message is written to the

upper byte of JMBO0or as word access(by the CPU,DMA,…)and is set after the message was

read via JTAG.

0JMBO0is not ready to receive new data

1JMBO0is ready to receive new data

JMBIN1FG Bit1Incoming JTAG Mailbox1flag.This bit is set when a new message(provided via JTAG)is available

in JMBI1.This flag is cleared automatically on read of JMBI1when JMBCLR1OFF=0(auto clear

mode).On JMBCLR1OFF=1JMBIN1FG needs to be cleared by SW.

0JMBI1has no new data

1JMBI1has new data available

JMBIN0FG Bit0Incoming JTAG Mailbox0flag.This bit is set when a new message(provided via JTAG)is available

in JMBI0.This flag is cleared automatically on read of JMBI0when JMBCLR0OFF=0(auto clear

mode).On JMBCLR0OFF=1JMBIN0FG needs to be cleared by SW.

0JMBI1has no new data

1JMBI1has new data available

40System Resets,Interrupts,and Operating Modes,System Control Module(SYS)SLAU208–June2008

https://www.sodocs.net/doc/e59093280.html, SYS Registers SYSJMBI0,SYSJMBI0_L,SYSJMBI0_H,JTAG Mailbox Input0Register

SYSJMBI1,SYSJMBI1_L,SYSJMBI1_H,JTAG Mailbox Input1Register

15141312111098

76543210

MSGHI

r-0r-0r-0r-0r-0r-0r-0r-0

76543210

MSGL0

r-0r-0r-0r-0r-0r-0r-0r-0

MSGHI Bit15-8JTAG mailbox incoming message high byte

MSGLO Bit7-0JTAG mailbox incoming message low byte

SYSJMBO0,SYSJMBO0_L,SYSJMBO0_H,JTAG Mailbox Out0

Register SYSJMBO1,SYSJMBO1_L,SYSJMBO1_H,JTAG Mailbox Out1Register

15141312111098

76543210

MSGHI

rw-0rw-0rw-0rw-0rw-0rw-0rw-0rw-0

76543210

MSGL0

rw-0rw-0rw-0rw-0rw-0rw-0rw-0rw-0

MSGHI Bit15-8JTAG Mailbox outgoing message high byte

MSGLO Bit7-0JTAG Mailbox outgoing message low byte

SYSUNIV,SYSUNIV_H,SYSUNIV_L,User NMI Interrupt Vector Register

15141312111098

76543210

00000000

r0r0r0r0r0r0r0r0

76543210

000SYSUNVEC0

r0r0r0r-0r-0r-0r-0r0 SYSUNIV Bit15-0User NMI interrupt vector.It generates an value that can be used as address offset for fast interrupt

service routine handling.Writing to this register clears all pending user NMI interrupt flags.

Value Interrupt Type

0000h No interrupt pending

0002h NMIIFG interrupt pending(highest priority)

0004h OFIFG interrupt pending

0006h ACCVIFG interrupt pending

0008h reserved for future extensions

Note:Additional events for more complex devices will be appended to this table;Sources that are

removed will reduce the length of this table.The vectors are expected to be accessed

symbolic only with the corresponding include file of the used device.

SYS Registers https://www.sodocs.net/doc/e59093280.html, SYSSNIV,SYSSNIV_H,SYSSNIV_L,SYS NMI Interrupt Vector Register

15141312111098

76543210

00000000

r0r0r0r0r0r0r0r0

76543210

000SYSSNVEC0

r0r0r0r-0r-0r-0r-0r0 SYSSNIV Bit15-0System NMI interrupt vector.It generates an value that can be used as address offset for fast

interrupt service routine handling.Writing to this register clears all pending system NMI interrupt

flags.

Value Interrupt Type

0000h No interrupt pending

0002h SVMLIFG interrupt pending(highest priority)

0004h SVMHIFG interrupt pending

0006h DLYLIFG interrupt pending

0008h DLYHIFG interrupt pending

000Ah VMAIFG interrupt pending

000Ch JMBINIFG interrupt pending

000Eh JMBOUTIFG interrupt pending

0010h VLRLIFG interrupt pending

0012h VLRHIFG interrupt pending

0014h Reserved for future extensions

Note:Additional events for more complex devices will be appended to this table;Sources that are

removed will reduce the length of this table.The vectors are expected to be accessed

symbolic only with the corresponding include file of the used device.

42SLAU208–June2008 System Resets,Interrupts,and Operating Modes,System Control Module(SYS)

https://www.sodocs.net/doc/e59093280.html, SYS Registers SYSRSTIV,SYSRSTIV_H,SYSRSTIV_L,SYS Reset Interrupt Vector Register

15141312111098

76543210

00000000

r0r0r0r0r0r0r0r0

76543210

000SYSRSTVEC0

r0r0r0r-0r-0r-0r-0r0 SYSRSTIV Bit15-0Reset interrupt vector.It generates an value that can be used as address offset for fast interrupt

service routine handling to identify the last cause of an Reset(BOR,POR,PUC).Writing to this

register clears all pending reset source flags.

Value Interrupt Type

0000h No interrupt pending

0002h Brownout(BOR)(highest priority)

0004h RST/NMI(POR)(also RST wakes up)

0006h DoBOR(BOR)

0008h Port wakeup(BOR)

000Ah Security violation(BOR)

000Ch SVSL(POR)

000Eh SVSH(POR)

0010h SVML_OVP(POR)

0012h SVMH_OVP(POR)

0014h DoPOR(POR)

0016h WDT time out(PUC)

0018h WDT keyviol(PUC)

001Ah KEYV flash keyviol(PUC)

001Ch PLL unlock(PUC)

001Eh PERF peripheral/configuration area fetch(PUC)

0020h PMM key violation(PUC)

0022h Reserved for future extensions

Note:Additional events for more complex devices will be appended to this table;Sources that are

removed will reduce the length of this table.The vectors are expected to be accessed

symbolic only with the corresponding include file of the used device

单片机89C51特殊功能寄存器

单片机89C51特殊功能寄存器 高手从菜鸟忽略作起之(三)单片机共有21个特殊功能寄存器,下面从其功能,位结构,地址,读写方法对其作详细介绍。 一,特殊功能寄存器总述。 二,特殊功能寄存器分类:

1.CPU控制类(6个):Acc,B,PSW,DPL,DPH,SP. 2.中断控制类(2个):IE,IP. 3.计数/定时类(6个):TMOD,TCON,TL0,TL1,TH0,TH1. 4.并口端口类(4个):P0,P1,P2,P3. 5.串口端口类(2个):SCON,SBUF. 6.电源管理类(1个):PCON. 三,特殊功能寄存器详述: 1.CPU控制类(6个):Acc,B,PSW,DPL,DPH,SP 1.1 Acc:累加器,可按位,字节访问。 1.2 B:辅助寄存器,用于进行乘除运算。 P:奇偶校验位:P=0:1的个数为奇数;P=1,1的个数为偶数。 ---:保留位,没使用。 OV:Over flow,溢出标志,OV=0:没溢出;OV=1:溢出。 Rs0:Regedit select 0,寄存器选取0. RS1:Regedit select 1,寄存器选取1。 F0:User Flag bit:用户自定义位。 Ac: Auxiliary Carry,辅助进位标志,由低4位运算时,是否有向高4位进位。Cy:Carry,进位标志。字节运算时,是否有进位。 1.4 DPTL:Data Pointer Register Low,数据指针寄存器低8位。 1.5 DPTH:Data Pointer Register High,数据指针寄存器高8位。 1.6 SP: Stock Pointer:栈指针寄存器。 2.中断控制类寄存器(2个):IE,IP EX0: Enable Extra 0 ,INT0 中断允许位。 ET0: Enable Timer 0,C/T0 中断允许位。 EX1: Enable Extra 1 ,INT1 中断允许位。 ET1: Enable Timer 1,C/T1 中断允许位。 ES: Enable serial ,串行中断允许位。 ET2: Enable Timer 2,C/T2 中断允许位。

51单片机特殊功能寄存器功能一览表

51单片机特殊功能寄存器功能一览表 21个特殊功能寄存器(52系列是26个)不连续地分布在128个字节的SFR存储空间中,地址空间为80H-FFH,在这片SFR空间中,包含有128个位地址空间,地址也是80H-FFH,但只有83个有效位地址,可对11个特殊功能寄存器的某些位作位寻址操作(这里介绍一个技巧:其地址能被8整除的都可以位寻址)。 在51单片机内部有一个CPU用来运算、控制,有四个并行I/O口,分别是P0、P1、P2、P3,有ROM,用来存放程序,有RAM,用来存放中间结果,此外还有定时/计数器,串行I/O口,中断系统,以及一个内部的时钟电路。在单片机中有一些独立的存储单元是用来控制这些器件的,被称之为特殊功能寄存器(SFR)。这样的特殊功能寄存器51单片机共有21个并且都是可寻址的列表如下(其中带*号的为52系列所增加的特殊功能寄存器):

分别说明如下: 1、ACC---是累加器,通常用A表示 这是个什么东西,可不能从名字上理解,它是一个寄存器,而不是一个做加法的东西,为什么给它这么一个名字呢?或许是因为在运算器做运算时其中一个数一定是在ACC中的缘故吧。它的名字特殊,身份也特殊,稍后在中篇中我们将学到指令,可以发现,所有的运算类指令都离不开它。自身带有全零标志Z,若A=0则Z=1;若A≠0则z=0。该标志常用作程序分枝转移的判断条件。 2、B--一个寄存器 在做乘、除法时放乘数或除数,不做乘除法时,随你怎么用。 3、PSW-----程序状态字。 这是一个很重要的东西,里面放了CPU工作时的很多状态,借此,我们可以了解CPU的当前状态,并作出相应的处理。它的各位功能请看下表: 下面我们逐一介绍各位的用途 CY:进位标志。 8051中的运算器是一种8位的运算器,我们知道,8位运算器只能表示到0-255,如果做加法的话,两数相加可能会超过255,这样最高位就会丢失,造成运算的错误,怎么办?最高位就进到这里来。这样就没事了。有进、借位,CY=1;无进、借位,CY =0 例:78H+97H(01111000+10010111) AC:辅助进、借位(高半字节与低半字节间的进、借位)。

MCS-51系列特殊功能寄存器

MCS-51系列特殊功能寄存器(80H~FFH) 1.P0 (80H) 2.SP 栈指针(81H) 3.DPTR 数据指针(由DPH和DPL组成) DPL 数据指针低八位(82H) DPH 数据指针高八位(83H) 4.PCON 电源管理寄存器(87H) SMOD :波特率倍增位。SMOD=0时,不变;SMOD=1时,倍增。 GF1,GF0 :通用标志位。 PD :掉电方式位。PD=1时,进入掉电方式。 IDL :待机方式位。IDL=1时,进入待机方式。 5.TMOD 定时/记数方式寄存器(89H) GATE :门控位。GATE=0时,直接由TR启动定时器;GATE=1时,须外部INT为1时,且TR启动定时器。 C/T :功能选择位。C/T=0时,为定时器;C/T=1时,为计数器。 M1,M0 :方式选择位。

6.T CON 定时/记数控制寄存器(88H) TF1 :定时器1溢出标志。由硬件置1,并且进入中断;进入中断服务程序后,由硬件清0,查询方式下由软件清0。 TR1 :定时器运行控制位。TR1=0时,关闭T1;TR1=1时,启动T1。 TF0 :定时器0溢出标志。由硬件置1,并且进入中断;进入中断服务程序后,由硬件清0,查询方式下由软件清0。 TR0 :定时器运行控制位。TR0=0时,关闭T0;TR0=1时,启动T0。 IE1 :外部中断1请求标志。 IT1 :外部中断1触发方式。IT1=0时,为低电平触发方式;IT1=1时,为负跳变触发方式(边沿触发)。 IE0 :外部中断0请求标志。 IT0 :外部中断0触发方式。IT0=0时,为低电平触发方式;IT0=1时,为负跳变触发方式(边沿触发)。 7.P1 (90H) SM0,SM1 :串行方式控制。 SM2 :多机通讯控制位。SM2=0时,禁止多机通讯;SM2=1时,允许多机通讯。

51_52系列单片机特殊功能寄存器及资源映射方式总结

51系列单片机特殊功能寄存器总结 第一节:片内RAM映射: 51:00H_7FH 128B片内(DATA),其中00H-07H: bank0,08H-0FH: bank1, 10H-17H: bank2,18H-1FH:bank3. 20H-2FH: 位寻址区(bdata) 30H-7FH: 堆栈区。 80H-FFH: SFR区 52:增加了80H-FFH间接寻址的片内RAM(IDATA) 第二节:特殊功能寄存器(51) ①TCON,地址:88H,定时器计数器控制,中断控制 IT0/1:外部中断触发方式控制,置0,为低电平触发,置1,为下降沿触发。每个机器周期的S5P2器件多外部触发采样。响应中断需要两个机器 周期。 IE0/1:外部中断请求标志,CPU响应中断后,硬件自动将IE清0 TFx,定时器Tx溢出标志,计数溢出时,硬件将其置位,响应中断后,硬件将其清0,该位可由程序查询。 TRx, 定时器x运行控制,置1则启动定时器,清0则停止定时器。 ②TMOD,地址:89H, 定时器计数器工作方式控制 counter对外部输入外冲计数,计一次数需要两个机器周期。 GATE: 取反后与外部中断输入或运算后再同TCON的TRx位相与控制计数器的启与停,GATE为0时,允许TRx开启或停止计数器,为1时,允许INTx开启或停止计数器。 ③TL0, 地址:8AH, 定时器0低八位 ④TL1, 地址:8BH, 定时器1低八位

⑤TH0, 地址:8CH, 定时器0高八位 ⑥TH1, 地址:8DH, 定时器1高八位1 ⑦SCON, 地址:98H,串行通信控制寄存器 S M2:方式2和方式3的多机通信控制位,在方式0中,SM2应置0。 REN:允许串行接收位,由软件置1时,允许接收,清0时。禁止接收 TB8:方式2和方式3中,发送的第9位数据,需要时由软件置位或复位。 RB8: 方式2和方式3中,接收到的第9位数据,在方式1时,RB是接收到停止位,在方式0时,不使用RB8. TI:接收中断标志,由硬件置1,在方式0时,串行发送到第8位结束时置1;在其他方式,串行口发送停止位时置1。TI必须由软件清0。 RI:接收中断标志,由硬件置1。在方式0时(SM2应置0),接收到第8位结束时置1,当SM2=0的其他方式(方式0,1,3)时,接收到停止位置位“1”,当SM2=1时,若串口工作在方式2和3,接收到的第9位数据(RB8)为1时,才激活RI。在方式1时,只有接收到有效的停止位时才会激活RI。RI必须由软件清0 ⑧SBUF, 地址:99H,串行通信数据缓冲器 ⑨IE, 地址:A8H,中断使能控制寄存器 EA: globle interuption Enable, 1: Enable, 0: Disable ET2: timers2 flowover interuption Enable for52, 1: Enable, 0: Disable ES: serrial port interuption Enable, 1: Enable, 0: Disable ET1/0: timers1/0 flowover interuption Enable, 1: Enable, 0: Disable EX1/0: external interuption Enable, 1: Enable, 0: Disable

单片机特殊功能寄存器及相应功能

SPECIAL FUNCTION REGISTER ?? Register (MSB) (LSB) Byte Symbol b7 b6 b5 b4 b3 b2 b1 b0 Address P0 P0.7 P0.6 P0.5 P0.4 P0.3 P0.2 P0.1 P0.0 80H(128) SP 81H(129) DPL 82H(130) DPH 83H(131) PCON SMOD - - - GF1 GF0 PD IDL 87H(135) *PCON SMOD - - WLE GF1 GF0 PD IDL 87H(135) TCON TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0 88H(136) TMOD GATE C/T M1 M0 GATE C/T M1 M0 89H(137) TL0 8AH(138) TL1 8BH(139) TH0 8CH(140) TH1 8DH(141) P1 P1.7 P1.6 P1.5 P1.4 P1.3 P1.2 T2EX T2 90H(144) *P1 SDA SCL RT2 T2 CT3I CT2I CT1I CT0I 90H(144) SCON SM0 SM1 SM2 REN TB8 RB8 TI RI 98H(152) SBUF 99H(153) P2 P2.7 P2.6 P2.5 P2.4 P2.3 P2.2 P2.1 P2.0 0A0H(208) IE EA - ET2 ES ET1 EX1 ET0 EX0 0A8H(168) *IEN0 EA EAD ES1 ES0 ET1 EX1 ET0 EX0 0A8H(168) +CML0 0A9H(169) +CML1 0AAH(170) +CML2 0ABH(171) +CTL0 0ACH(172) +CTL1 0ADH(173) +CTL2 0AEH(174) +CTL3 0AFH(175) P3 RD WR T1 T0 INT1 INT0 TXD RXD 0B0H(176) IP - - PT2 PS PT1 PX1 PT0 PX0 0B8H(184) *IP0 - PAD PS1 PS0 PT1 PX1 PT0 PX0 0B8H(184) +P4 CMT1 CMT0 CMSR5 CMSR4 CMSR3 CMSR2 CMSR1 CMSR0 0C0H(192) +P5 ADC7 ADC6 ADC5 ADC4 ADC3 ADC2 ADC1 ADC0 0C4H(196) +ADCON ADC.1 ADC.0 ADEX ADCI ADCS AADR2 AADR1 AADR0 0C5H(197)

51单片机寄存器地址查询

适合初学好东西一起分享 中断使能寄存器IE 中断总开关EA=1;启动有中断EA=0;关闭所有中断 保留 TF2中断开关ET2=1;启动ET2=0;关 闭(8052) 串行口中断开关ES=1启动串口ES=0 关闭串口 TF1中断开关ET1=1;启动ET1=0;关闭 INT1中断开关EX1=1; 启动EX1=0;关闭 TF0中断开关ET0=1;启动ET0=0;关闭 INT0中断开关EX0=1; 启动EX0=0;关闭 中断优先级寄存器IP EA — ET2 ES ET1 EX1 ET0 EX0 IE 寄存器 IP.7 IP .6 IP .5 IP .4 IP .3 IP .2 IP .1 IP .0 IP 寄存器 — — PT2 PS PT1 PX1 PT0 PX0 保留 保留 TF2中断先级 PT2=1;TF2为高优先级(8052) 串行口中断优先级PS1=1;为高优先级 TF1中断先级PT1=1;TF1为高优先级 INT1中断优先级PX1=1;为最高优先 级 TF0中断先级PT0=1;TF1为高优先级 INT0中断优先级PX0=1;为最高优先 级 定时器/计数器控制寄存器TCON Timer1中断标志CPU 设置 Timer1启 动开关TR1=1;启动Timer1 TR1=0;关闭Timer1 Timer0中断标志CPU 设置 Timer0启动开关TR0=1;启动Timer1 TR0=0;关闭Timer0 INT1中断标志CPU 设置 INT1信号种类IT1=1;负边沿触发IT1=0;低电平触发 INT0中断标志CPU 设置 INT0信号种类IT0=1;负边沿触发IT0=0;低电平触发 定时器/计数器功能 外部中断功能 定时器/计数器方式寄存器TMOD

特殊功能寄存器地址与控制位

/************************************************************ * 特殊功能寄存器地址和控制位 ************************************************************/ /*中断使能1*/ #define IE1_ 0x0000 sfrb IE1 = IE1_; #define WDTIE 0x01 /*看门狗中断使能*/ #define OFIE 0x02 /*外部晶振故障中断使能*/ #define NMIIE 0x10 /*非屏蔽中断使能*/ #define ACCVIE 0x20 /*可屏蔽中断使能/flash写中断错误*/ #define URXIE0 0x40 /*串口0接收中断使能*/ #define UTXIE0 0x80 /*串口0发送中断使能*/ /*中断标志1*/ #define IFG1_ 0x0002 sfrb IFG1 = IFG1_; #define WDTIFG 0x01 /*看门狗中断标志*/ #define OFIFG 0x02 /*外部晶振故障中断标志*/ #define NMIIFG 0x10 /*非屏蔽中断标志*/ #define URXIFG0 0x40 /*串口0接收中断标志*/ #define UTXIFG0 0x80 /*串口0发送中断标志*/ /* 中断模式使能1 */ #define ME1_ 0x0004 sfrb ME1 = ME1_; #define URXE0 0x40 /* 串口0接收中断模式使能 */ #define USPIE0 0x40 /* 同步中断模式使能 */ #define UTXE0 0x80 /* 串口0发送中断模式使能 */ /* 中断使能2 */ #define IE2_ 0x0001 sfrb IE2 = IE2_; #define URXIE1 0x10 /* 串口1接收中断使能 */ #define UTXIE1 0x20 /* 串口1发送中断使能 */ /* 中断标志2 */ #define IFG2_ 0x0003 sfrb IFG2 = IFG2_; #define URXIFG1 0x10 /* 串口1接收中断标志 */ #define UTXIFG1 0x20 /* 串口1发送中断标志 */ /* 中断模式使能2 */ #define ME2_ 0x0005 sfrb ME2 = ME2_; #define URXE1 0x10 /* 串口1接收中断模式使能 */ #define USPIE1 0x10 /* 同步中断模式使能 */ #define UTXE1 0x20 /* 串口1发送中断模式使能 */ /************************************************************

单片机寄存器汇总表图文稿

单片机寄存器汇总表 Company number【1089WT-1898YT-1W8CB-9UUT-92108】

51单片机寄存器功能一览表 21个特殊功能寄存器(52系列是26个)不连续地分布在128个字节的SFR存储空间中,地址空间为80H-FFH,在这片SFR空间中,包含有128个位地址空间,地址也是80H-FFH,但只有83个有效位地址,可对11个特殊功能寄存器的某些位作位寻址操作(这里介绍一个技巧:其地址能被8整除的都可以位寻址)。 在51单片机内部有一个CPU用来运算、控制,有四个并行I/O口,分别是P0、P1、P2、P3,有ROM,用来存放程序,有RAM,用来存放中间结果,此外还有定时/计数器,串行I/O口,中断系统,以及一个内部的时钟电路。在单片机中有一些独立的存储单元是用来控制这些器件的,被称之为特殊功能寄存器(SFR)。这样的特殊功能寄存器51单片机共有21个并且都是可寻址的列表如下(其中带*号的为52系列所增加的特殊功能寄存器):

分别说明如下: 1、ACC---是累加器,通常用A表示 这是个什么东西,可不能从名字上理解,它是一个寄存器,而不是一个做加法的东西,为什么给它这么一个名字呢或许是因为在运算器做运算时其中一个数一定是在ACC中的缘故吧。它的名字特殊,身份也特殊,稍后在中篇中我们将学到指令,可以发现,所有的运算类指令都离

不开它。自身带有全零标志Z,若A=0则Z=1;若A≠0则z=0。该标志常用作程序分枝转移的判断条件。 2、B--一个寄存器 在做乘、除法时放乘数或除数,不做乘除法时,随你怎么用。 3、PSW-----程序状态字。 这是一个很重要的东西,里面放了CPU工作时的很多状态,借此,我们可以了解CPU的当前状态,并作出相应的处理。它的各位功能请看下表: 下面我们逐一介绍各位的用途 CY:进位标志。 8051中的运算器是一种8位的运算器,我们知道,8位运算器只能表示到0-255,如果做加法的话,两数相加可能会超过255,这样最高位就会丢失,造成运算的错误,怎么办最高位就进到这里来。这样就没事了。有进、借位,CY=1;无进、借位,CY=0 AC:辅助进、借位(高半字节与低半字节间的进、借位)。 例:57H+3AH(01010111+00111010)

51单片机的特殊功能寄存器

51单片机的特殊功能寄存器 通过前面课程的学习,我们已知道了单片机的内部有ROM、有RAM、有并行I/O 口,那么,除了这些东西之外,单片机内部究竟还有些什么?这些个零碎的东西怎么连在一起的? 下面就让我们来对单片机内部作一个完整的分析吧! 从图中我们可以看出,在51单片机内部有一个CPU用来运算、控制,有四个并行I/O口,分别是P0、P1、P2、 P3,有ROM,用来存放程序,有RAM,用来存放中间结果,此外还有定时/计数器,串行I/O口,中断系统,以及一个内部的时钟电路。在一个51单片机 的内部包含了这么多的东西。 对图进行进一步的分析,我们已知,对并行I/O口的读写只要将数据送入到相应I/O口的锁存器就可以了,那么对于定时 /计数器,串行I/O口等怎么用呢?在单片机中有一些独立的存储单元是用来控制这些器件的,被称之为特殊功能寄存器(SFR)。事实上,我们已接触过P1 这个特殊功能寄存器了,还有哪些呢?看下表 符号地址功能介绍 B F0H B寄存器 ACC E0H 累加器 PSW D0H 程序状态字 IP B8H 中断优先级控制寄存器 P3 B0H P3口锁存器 IE A8H 中断允许控制寄存器

P2 A0H P2口锁存器 SBUF 99H串行口锁存器 SCON 98H串行口控制寄存器 P1 90H P1口锁存器 TH1 8DH定时器/计数器1(高8位) TH0 8CH 定时器/计数器1(低8位) TL1 8BH 定时器/计数器0(高8位) TL0 8AH 定时器/计数器0(低8位) TMOD 89H定时器/计数器方式控制寄存器 TCON 88H 定时器/计数器控制寄存器 DPH 83H 数据地址指针(高8位) DPL 82H 数据地址指针(低8位) SP 81H 堆栈指针 P0 80H P0口锁存器 PCON 87H电源控制寄存器 下面,我们介绍一下几个常用的SFR。 1、ACC---是累加器,通常用A表示。 这 是个什么东西,可不能从名字上理解,它是一个寄存器,而不是一个做加法的东西,为什么给它这么一个名字呢?或许是因为在运算器做运算时其中一个数一定是在 ACC中的缘故吧。它的名字特殊,身份也特殊,稍后在中篇中我们将学到指令,可以发现,所有的运算类指令都离不开它。自身带有全零标志Z,若A=0则 Z=1;若A≠0则z=0。该标志常用作程序分枝转移的判断条件。 2、B--一个寄存器。 在做乘、除法时放乘数或除数,不做乘除法时,随你怎么用。 3、PSW-----程序状态字。这是一个很重要的东西,里面放了CPU工作时的很多状态,借此,我们可以了解CPU的当前状态,并作出相应的处理。它的各位功能请看下表: 下面我们逐一介绍各位的用途 CY:进位标志。8051中的运算器是一种8位的运算器,我们知道,8位运算器只

51单片机特殊功能寄存器详细说明

/*-------------------------------------------------------------------------- REG51.H Header file for generic 80C51 and 80C31 microcontroller. Copyright (c 1988-2001 Keil Elektronik GmbH and Keil Software, Inc. All rights reserved. --------------------------------------------------------------------------*/ /* BYTE Register */ sfr P0 = 0x80; sfr P1 = 0x90; sfr P2 = 0xA0; sfr P3 = 0xB0; sfr PSW = 0xD0; 程序状态字 sfr ACC = 0xE0; 累加器 sfr B = 0xF0; B寄存器 sfr SP = 0x81; 堆栈指针 sfr DPL = 0x82; 数据指针低八位 sfr DPH = 0x83; 数据指针高八位 sfr PCON = 0x87; 波特率选择寄存器 sfr TCON = 0x88; 定时器/计数器控制寄存器

sfr TMOD = 0x89; 定时器方式选择寄存器 sfr TL0 = 0x8A; 定时器0低八位 sfr TL1 = 0x8B; 定时器1低八位 sfr TH0 = 0x8C; 定时器0高八位 sfr TH1 = 0x8D; 定时器1高八位 sfr IE = 0xA8; 中断允许寄存器 sfr IP = 0xB8; 中断优先级寄存器 sfr SCON = 0x98; 串行控制寄存器 sfr SBUF = 0x99; 串行数据缓冲器 /* BIT Register */ /* PSW */ 程序状态字 sbit CY = 0xD7; 有无进位或者借位 sbit AC = 0xD6; Auxiliary Carry有无低四位向高四位的进位或借位 sbit F0 = 0xD5; 用户管理的标志位,可根据自己的需求设定 sbit RS1 = 0xD4; 这两位用于选择当前工作寄存器区。8051有8个8位寄存器R0~R7,它 们在RAM中的地址可以根据用户需要来确定。 sbit RS0 = 0xD3; RS1 RS0:R0~R7的地址0 0:00H~07H 0 1:08H~0FH 1 0:10H~17H 1 1:18H~1FH

C51单片机21个特殊功能寄存器

21个特殊功能寄存器(52系列是26个)不连续地分布在128个字节的SFR存储空间中,地址空间为80H-FFH,在这片SFR空间中,包含有128个位地址空间,地址也是80H-FFH,但只有83 个有效位地址,可对11个特殊功能寄存器的某些位作位寻址操作(这里介绍一个技巧:其地址能被8整除的都可以位寻址)。 在51单片机内部有一个CPU用来运算、控制,有四个并行I/O口,分别是P0、P1、P2、P3,有ROM,用来存放程序,有RAM,用来存放中间结果,此外还有定时/计数器,串行I/O口,中断系统,以及一个内部的时钟电路。在单片机中有一些独立的存储单元是用来控制这些器件的,被称之为特殊功能寄存器(SFR)。这样的特殊功能寄存器51单片机共有21个并且都是可寻址的列表如下(其中带*号的为52系列所增加的特殊功能寄存器):

分别说明如下: 1、ACC---是累加器,通常用A表示 这是个什么东西,可不能从名字上理解,它是一个寄存器,而不是一个做加法的东西,为什么给它这么一个名字呢?或许是因为在运算器做运算时其中一个数一定是在ACC中的缘故吧。它的名字特殊,身份也特殊,稍后在中篇中我们将学到指令,可以发现,所有的运算类指令都离不开它。自身带有全零标志Z,若A=0则Z=1;若A≠0则z=0。该标志常用作程序分枝转移的判断条件。 2、B--一个寄存器 在做乘、除法时放乘数或除数,不做乘除法时,随你怎么用。 3、PSW-----程序状态字。 这是一个很重要的东西,里面放了CPU工作时的很多状态,借此,我们可以了解CPU的当前状态,并作出相应的处理。它的各位功能请看下表: 下面我们逐一介绍各位的用途CY:进位标志。,如果做加法的话,两数位运算器只能表示到0-255中的运算器是一种8位的运算器,我们知道,88051,这样最高位就会丢失,造成运算的错误,怎么办?最高位就进到这里来。这样就没事了。有相加可能会超过2550 CY==1;无进、借位,进、借位,CY )78H+97H(01111000+10010111例: 。(高半字节与低半字节间的进、借位)AC:辅助进、借位)(01010111+0011101057H+3AH例::用户标志位F0 由用户(编程人员)决定什么时候用,什么时候不用。 :工作寄存器组选择位、RS0RS1现场保两位的状态,就能任选一个工作寄存器区。这个特点提高了MCS-51中的RS1、RS0通过修改PSW不需的工作效率和响应中断的速度是很有利的。若在一个实际的应用系统中,护和现场恢复的速度。对于提高CPU 要四组工作寄存器,那么这个区域中多余单元可以作为一般的数据缓冲器使用。 0V:溢出标志位0。什么是溢出我们后面的章节会讲到。运算结果按补码运算理解。有溢出,OV=1;无溢出,OV= :奇偶校验位P。运算结果有,否则为0P=1ALU它用来表示运算结果中二进制数位“1”的个

c51特殊功能寄存器

51单片机的特殊功能寄存器 2009-03-16 10:16 通过前面课程的学习,我们已知道了单片机的内部有ROM、有RAM、有并行I/O 口,那么,除了这些东西之外,单片机内部究竟还有些什么?这些个零碎的东西怎么连在一起的? 下面就让我们来对单片机内部作一个完整的分析吧! 从图中我们可以看出,在51单片机内部有一个CPU用来运算、控制,有四个并行I/O口,分别是P0、P1、P2、P3,有ROM,用来存放程序,有 RAM,用来存放中间结果,此外还有定时/计数器,串行I/O口,中断系统,以及一个内部的时钟电路。在一个51单片机的内部包含了这么多的东西。 对图进行进一步的分析,我们已知,对并行I/O口的读写只要将数据送入到相应I/O口的锁存器就可以了,那么对于定时/计数器,串行I/O口等怎么用呢?在单片机中有一些独立的存储单元是用来控制这些器件的,被称之为特殊功能寄存器(SFR)。事实上,我们已接触过P1这个特殊功能寄存器了,还有哪些呢?看下表

下面,我们介绍一下几个常用的SFR。 1、ACC---是累加器,通常用A表示。 这是个什么东西,可不能从名字上理解,它是一个寄存器,而不是一个做加法的东西,为什么给它这么一个名字呢?或许是因为在运算器做运算时其中一个数一定是在ACC中的缘故吧。它的名字特殊,身份也特殊,稍后在中篇中我们将学到指令,可以发现,所有的运算类指令都离不开它。自身带有全零标志Z,若A=0则 Z=1;若A≠0则z=0。该标志常用作程序分枝转移的判断条件。 2、B--一个寄存器。 在做乘、除法时放乘数或除数,不做乘除法时,随你怎么用。 3、PSW-----程序状态字。 这是一个很重要的东西,里面放了CPU工作时的很多状态,借此,我们可以了解CPU的当前状态,并作出相应的处理。它的各位功能请看下表: 下面我们逐一介绍各位的用途 CY:进位标志。8051中的运算器是一种8位的运算器,我们知道,8位运算器只能表示到0-255,如果做加法的话,两数相加可能会超过255,这样最高位就会丢失,造成运算的错误,怎么办?最高位就进到这里来。这样就没事了。有进、借位,CY=1;无进、借位,CY=0 例:78H+97H(01111000+10010111) AC:辅助进、借位(高半字节与低半字节间的进、借位)。 例:57H+3AH(01010111+00111010) F0:用户标志位,由用户(编程人员)决定什么时候用,什么时候不用。 RS1、RS0:工作寄存器组选择位。这个我们已知了。

51单片机寄存器汇总表

51单片机寄存器功能一览表 21个特殊功能寄存器(52系列是26个)不连续地分布在128个字节的SFR存储空间中,地址空间为80H-FFH,在这片SFR空间中,包含有128个位地址空间,地址也是80H-FFH,但只有83个有效位地址,可对11个特殊功能寄存器的某些位作位寻址操作(这里介绍一个技巧:其地址能被8整除的都可以位寻址)。 在51单片机部有一个CPU用来运算、控制,有四个并行I/O口,分别是P0、P1、P2、P3,有ROM,用来存放程序,有RAM,用来存放中间结果,此外还有定时/计数器,串行I/O 口,中断系统,以及一个部的时钟电路。在单片机中有一些独立的存储单元是用来控制这些器件的,被称之为特殊功能寄存器(SFR)。这样的特殊功能寄存器51单片机共有21个并且都是可寻址的列表如下(其中带*号的为52系列所增加的特殊功能寄存器):

分别说明如下: 1、ACC---是累加器,通常用A表示 这是个什么东西,可不能从名字上理解,它是一个寄存器,而不是一个做加法的东西,为什么给它这么一个名字呢?或许是因为在运算器做运算时其中一个数一定是在ACC中的缘故吧。它的名字特殊,身份也特殊,稍后在中篇中我们将学到指令,可以发现,所有的运算类指令都离不开它。自身带有全零标志Z,若A=0则Z=1;若A≠0则z=0。该标志常用作程序分枝转移的判断条件。 2、B--一个寄存器 在做乘、除法时放乘数或除数,不做乘除法时,随你怎么用。 3、PSW-----程序状态字。 这是一个很重要的东西,里面放了CPU工作时的很多状态,借此,我们可以了解CPU 的当前状态,并作出相应的处理。它的各位功能请看下表: 下面我们逐一介绍各位的用途 CY:进位标志。

单片机指令和寄存器英语词汇

按功能分为五大类: (1)数据传送类指令(7种助记符) MOV(英文为Move):对内部数据寄存器RAM和特殊功能寄存器SFR的数据进行传送;MOVC(Move Code)读取程序存储器数据表格的数据传送; MOVX(Move External RAM)对外部RAM的数据传送; XCH(Exchange)字节交换; XCHD(Exchange low-order Digit)低半字节交换; PUSH(Push onto Stack)入栈; POP (Pop from Stack)出栈; (2)算术运算类指令(8种助记符) ADD(Addition) 加法; ADDC(Add with Carry) 带进位加法; SUBB(Subtract with Borrow) 带借位减法; DA(Decimal Adjust) 十进制调整; INC(Increment) 加1; DEC(Decrement) 减1; MUL(Multiplication、Multiply) 乘法; DIV(Division、Divide) 除法; (3)逻辑运算类指令(10种助记符) ANL(AND Logic) 逻辑与; ORL(OR Logic) 逻辑或; XRL(Exclusive-OR Logic) 逻辑异或; CLR(Clear) 清零; CPL(Complement) 取反; RL(Rotate left) 循环左移; RLC(Rotate Left throught the Carry flag) 带进位循环左移; RR(Rotate Right) 循环右移; RRC(Rotate Right throught the Carry flag) 带进位循环右移; SWAP (Swap)低4位与高4位交换; (4)控制转移类指令(17种助记符) ACALL(Absolute subroutine Call)子程序绝对调用; LCALL(Long subroutine Call)子程序长调用; RET(Return from subroutine)子程序返回; RETI(Return from Interruption)中断返回; SJMP(Short Jump)短转移; AJMP(Absolute Jump)绝对转移; LJMP(Long Jump)长转移; CJNE (Compare Jump if Not Equal)比较不相等则转移; DJNZ (Decrement Jump if Not Zero)减1后不为0则转移; JZ (Jump if Zero)结果为0则转移;

51单片机寄存器功能查看(带目录)

【51单片机寄存器功能一览表】 21个特殊功能寄存器(52系列是26个)不连续地分布在128个字节的SFR存储空间中,地址空间为80H-FFH,在这片SFR空间中,包含有128个位地址空间,地址也是80H-FFH,但只有83个有效位地址,可对11个特殊功能寄存器的某些位作位寻址操作(这里介绍一个技巧:其地址能被8整除的都可以位寻址)。 在51单片机内部有一个CPU用来运算、控制,有四个并行I/O口,分别是P0、P1、P2、P3,有ROM,用来存放程序,有RAM,用来存放中间结果,此外还有定时/计数器,串行I/O口,中断系统,以及一个内部的时钟电路。在单片机中有一些独立的存储单元是用来控制这些器件的,被称之为特殊功能寄存器(SFR)。这样的特殊功能寄存器51单片机共有21个并且都是可寻址的列表如下(其中带*号的为52系列所增加的特殊功能寄存器): MCS-51单片机的特殊功能寄存器

PSW-----程序状态字

它用来表示ALU运算结果中二进制数位“1”的个数的奇偶性。若为奇数,则P=1,否则为0。运算结果有奇数个1,P=1;运算结果有偶数个1,P=0。 例:某运算结果是78H(01111000),显然1的个数为偶数,所以P=0。 4、DPTR(DPH、DPL)--------数据指针 可以用它来访问外部数据存储器中的任一单元,如果不用,也可以作为通用寄存器来用,由我们自已决定如何使用。分成DPL(低8位)和DPH(高8位)两个寄存器。用来存放16位地址值,以便用间接寻址或变址寻址的方式对片外数据RAM或程序存储器作64K字节范围内的数据操作。 5、P0、P1、P2、P3--------输入输出口(I/O)寄存器 这个我们已经知道,是四个并行输入/输出口(I/O)的寄存器。它里面的内容对应着管脚的输出。6、IE-----中断充许寄存器 7、IP-----中断优先级控制寄存器

MCS-51单片机的(SFR)特殊功能寄存器详细解析

MCS-51单片机的特殊功能寄存器 从图中我们可以看出,在51单片机内部有一个CPU用来运算、控制,有四个并行I/O口,分别是P0、P1、P2、P3,有ROM,用来存放程序,有RAM,用来存放中间结果,此外还有定时/计数器,串行I/O口,中断系统,以及一个内部的时钟电路。在一个51单片机的内部包含了这么多的东西。 对图进行进一步的分析,我们已知,对并行I/O口的读写只要将数据送入到相应I/O 口的锁存器就可以了,那么对于定时/计数器,串行I/O口等怎么用呢?在单片机中有一些独立的存储单元是用来控制这些器件的,被称之为特殊功能寄存器(SFR)。事实上,我们已接触过P1这个特殊功能寄存器了,还有哪些呢?看下表

下面,我们介绍一下几个常用的SFR。 1、ACC---是累加器,通常用A表示。 这是个什么东西,可不能从名字上理解,它是一个寄存器,而不是一个做加法的东西,为什么给它这么一个名字呢?或许是因为在运算器做运算时其中一个数一定是在ACC中的缘故吧。它的名字特殊,身份也特殊,稍后在中篇中我们将学到指令,可以发现,所有的运算类指令都离不开它。自身带有全零标志Z,若A=0则Z=1;若A≠0则z=0。该标志常用作程序分枝转移的判断条件。 2、B--一个寄存器。 在做乘、除法时放乘数或除数,不做乘除法时,随你怎么用。

3指针寄存器 (1)程序计数器PC 指明即将执行的下一条指令的地址,16位,寻址64KB范围, 复位时PC = 0000H (2)堆栈指针SP 指明栈顶元素的地址,8位,可软件设置初值,复位时SP = 07H (3)数据指针DPTR @R0、@R1、@DPTR;指明访问的数据存储器的单元地址,16位,寻址范围64KB。DPTR = DPH + DPL。可以用它来访问外部数据存储器中的任一单元,如果不用,也可以作为通用寄存器来用,由我们自已决定如何使用。分成DPL(低8位)和DPH(高8位)两个寄存器。用来存放16位地址值,以便用间接寻址或变址寻址的方式对片外数据RAM或程序存储器作64K字节范围内的数据操作 4、PSW-----程序状态字。 这是一个很重要的东西,里面放了CPU工作时的很多状态,借此,我们可以了解CPU 的当前状态,并作出相应的处理。它的各位功能请看下表: CY:进位标志。8051中的运算器是一种8位的运算器,我们知道,8位运算器只能表示到0-255,如果做加法的话,两数相加可能会超过255,这样最高位就会丢失,造成运算的错误,怎么办?最高位就进到这里来。这样就没事了。有进、借位,CY=1;无进、借位,CY=0 例:78H+97H(01111000+10010111) AC:辅助进、借位(高半字节与低半字节间的进、借位)。 例:57H+3AH(01010111+00111010) 下面我们逐一介绍各位的用途 F0:用户标志位,由用户(编程人员)决定什么时候用,什么时候不用。 RS1、RS0:工作寄存器组选择位。这个我们已知了。 0V:溢出标志位。运算结果按补码运算理解。有溢出,OV=1;无溢出,OV=0。什么是溢出我们后面的章节会讲到。 P:奇偶校验位:它用来表示ALU运算结果中二进制数位“1”的个数的奇偶性。若为奇数,则P=1,否则为0。运算结果有奇数个1,P=1;运算结果有偶数个1,P=0。 例:某运算结果是78H(01111000),显然1的个数为偶数,所以P=0。 5、P0、P1、P2、P3------这个我们已经知道,是四个并行输入/输出口的寄存器。它里面的内容对应着管脚的输出。

关于51单片机寄存器的功能

关于51单片机寄存器的功能 21个特殊功能寄存器(52系列是26个)不连续地分布在128个字节的SFR 存储空间中,地址空间为80H-FFH。在这片SFR空间中,包含有128个位地址空间,地址也是80H-FFH,但只有83个有效位地址,可对11个特殊功能寄存器的某些位做寻址操作(这里介绍一个技巧:其地址能被8整除的都可以位寻址)。 在51单片机内部有一个CPU用来运算、控制,有四个并行I/O口,分别是P0、P1、P2、P3。有ROM用来存放程序,有RAM用来存放中间结果;此外还有定时/计数器,串行I/O 口,中断系统,以及一个内部的时钟电路。在单片机中有一些独立的存储单元是用来控制这些器件的,被称之为特殊功能寄存器(SFR)。这样的特殊功能寄存器51单片机共有21个,并且都是可寻址的列表如下(其中带*号的为52系列所增加的特殊功能寄存器): 分别说明如下: 1、ACC---是累加器,通常用A表示 它是一个寄存器,而不是一个做加法的东西。为什么给它这么一个名字呢?或许是因为在运算器做运算时其中一个数一定是在ACC中的缘故吧。它的名字特殊,身份也特殊。稍后在中篇中我们将学到指令,可以发现所有的运算类指令都离不开它。自身带有全零标志Z,若A=0则Z=1;若A≠0则z=0。该标志常用作程序分枝转移的判断条件。 2、B---寄存器 在做乘、除法时放乘数或除数,不做乘除法时,随你怎么用。 3、PSW---程序状态字 这是一个很重要的东西,里面放了CPU工作时的很多状态。借此,我们可以了解CPU的当前状态,并作出相应的处理。它的各位功能请看下表: 下面我们逐一介绍各位的用途 CY:进位标志

51单片机的特殊功能寄存器详细表

51单片机的特殊功能寄存器详细列表 Symbol BIT7BIT6BIT5BIT4BIT3BIT2BIT1BIT0Address P0P0.7P0.6P0.5P0.4P0.3P0.2P0.1P0.080H SP81H DPL82H DPH83H PCON SMOD---GF1GF0PD IDL87H *PCON SMOD--WLE GF1GF0PD IDL87H TCON TF1TR1TF0TR0IE1IT1IE0IT088H TMOD GATE C/T M1M0GATE C/T M1M089H TL08AH TL18BH TH08CH TH18DH P1P1.7P1.6P1.5P1.4P1.3P1.2T2EX T290H *P1SDA SCL RT2T2CT3I CT2I CT1I CT0I90H SCON SM0SM1SM2REN TB8RB8TI RI98H SBUF99H P2P2.7P2.6P2.5P2.4P2.3P2.2P2.1P2.00A0H IE EA-ET2ES ET1EX1ET0EX00A8H *IEN0EA EAD ES1ES0ET1EX1ET0EX00A8H +CML00A9H +CML10AAH +CML20ABH +CTL00ACH +CTL10ADH +CTL20AEH +CTL30AFH P3RD WR T1T0INT1INT0TXD RXD0B0H IP--PT2PS PT1PX1PT0PX00B8H *IP0-PAD PS1PS0PT1PX1PT0PX00B8H +P4CMT1CMT0CMSR 5 CMSR 4 CMSR 3 CMSR 2 CMSR 1 CMSR 0C0H +P5ADC7ADC6ADC5ADC4ADC3ADC2ADC1ADC00C4H +ADCON ADC.1ADC.0ADEX ADCI ADCS AADR 2 AADR 1 AADR 0C5H +ADCH0C6H T2CON TF2EXF2RCLK TCLK EXEN 2 TR2C/T2 3CP/R L2 0C8H *TM2IR T2OV CMI2CMI1CMI0CTI3CTI2CTI1CTI00C8H +CMH00C9H RCAP2L0CAH *CMH10CAH

相关主题