鍩轰簬鍗曠墖鏈烘暟瀛楁椂閽熻璁″紑棰樻姤鍛?- 鐧惧害鏂囧簱 联系客服

发布时间 : 星期日 文章鍩轰簬鍗曠墖鏈烘暟瀛楁椂閽熻璁″紑棰樻姤鍛?- 鐧惧害鏂囧簱更新完毕开始阅读f0b48f38f605cc1755270722192e453611665b7d

.

两次,而在访问外部数据存储器时,PSEN 将不被激活。

EA /VPP:访问外部程序存储器控制信号。为使能从0000H 到FFFFH的外部程序存储器读取指令,EA 必须接GND。为了执行内部程序指令,EA 应该接VCC。

在flash编程期间,EA 也接收12伏VPP电压。

XTAL1:振荡器反相放大器和内部时钟发生电路的输入端。 XTAL2:振荡器反相放大器的输出端。 特殊功能寄存器

如图1中所示的存储器区域称为特殊功能寄存器。应该注意到,并不是所有的地址都会被定义,单片机中那些没有被定义的地址是无效的。读访问这些地址一般会返回随机数据,写访问这些地址则会产生一个不确定的影响。用户软件不应将那些没有被列举出来的地址置1。在这种情况下,复位后这些单元数值总是0。

定时/计数器2

定时/计数器2的控制和状态位位于T2CON和T2MOD。寄存器对(RCAO2H、RCAP2L)是定时器2在16位捕获方式或16位自动重装载方式下的捕获/自动重装载寄存器。 中断寄存器

.

.

所有单独的中断允许位都存在于中断允许寄存器IE中。中断优先级寄存器IP可以为六个中断源设置两个中断优先级。

数据存储器 AT89C52实现256字节片上RAM。高128个字节与特殊功能寄存器(SFR)地址是重叠的,也就是高128字节的RAM和特殊功能寄存器的地址是相同的,但物理上它们是分开的。 当一条指令访问7FH 以上的内部地址单元时,指令中使用的寻址方式是不同的,也即寻址方式决定是访问高128 字节RAM 还是访问特殊功能寄存器。如果指令是直接寻址方式则为访问特殊功能寄存器。例如,下面的直接寻址指令访问特殊功能寄存器0A0H(即P2 口)地址单元。 MOV 0A0H,#data 间接寻址指令访问高128 字节RAM,例如,下面的间接寻址指令中,R0 的内容为0A0H,则访问数据字节地址为0A0H,而不是P2 口(0A0H)。 MOV @R0,#data 堆栈操作也是间接寻址方式,所以,高128 位数据RAM 亦可作为堆栈区使用。 定时器0/定时器1 AT89C52的定时器0和定时器1的工作方式与AT89C51相同。 定时器2 定时器2 是一个16位定时/计数器。它既可当定时器使用,也可作为外部事件计数器使用,其工作方式由特殊功能寄存器T2CON(如表3)的C/T2位选择。定时器2有三种工作方式:捕获方式,自动重装载(向上或向下计数)方式和波 特率发生器方式,工作方式由T2CON的控制位来选择。定时器2由两个8位寄存器TH2和TL2组成,在定时器工作方式中,每个机器周期TL2寄存器的值加1,由于一个机器周期由12个振荡时钟构成,因此,计数速率为振荡频率的1/12。 在计数工作方式时,当T2引脚上外部输入信号产生由1至0的下降沿时,寄存器的值加1,在这种工作方式下,每个机器周期的5SP2期间,对外部输入进行采样。若在第一个机器周期中采到的值为1,而在下一个机器周期中采到的RCLK +TCLK CP/RL2 TR2 MODE 值为0,则在紧跟着的下一个周期的S3P1期间寄存器加1。由于识别1至0的0 0 1 16-bit Auto-reload 跳变需要20 个机器周期(,因此,最高计数速率为振荡频率的1/24。1 24个振荡周期)1 16-bit Capture 为确保采样的正确性,要求输入的电平在变化前至少保持一个完整周期的时间,1 X 1 Baud Rate Generator 以保证输入信号至少被采样一次。 (Off) X X 0 捕获方式: 在捕获方式下,通过T2CON控制位EXEN2来选择两种方式。如果EXEN2=0,定时器2是一个16位定时器或计数器,计数溢出时,对T2CON的.

.

溢出标志TF2置位,同时激活中断。如果EXEN2=1,定时器2完成相同的操作,而当T2EX引脚外部输入信号发生1至0负跳变时,也出现TH2 和TL2 中的值分别被捕获到RCAP2H和RCAP2L中。另外,T2EX引脚信号的跳变使得T2CON中的EXF2置位,与TF2相仿,EXF2也会激活中断。

自动重装载(向上或向下计数器)方式:

当定时器2工作于16位自动重装载方式时,能对其编程为向上或向下计数方式,这个功能可通过特殊功能寄存器T2CON的DCEN位(允许向下计数)来选择的。复位时,DCEN位置“0”,定时器2 默认设置为向上计数。当DCEN置位时,定时器2既可向上计数也可向下计数,这取决于T2EX引脚的值。

当DCEN=0时,定时器2自动设置为向上计数,在这种方式下,T2CON 中的EXEN2 控制位有两种选择,若EXEN2=0,定时器2为向上计数至0FFFFH溢出,置位TF2 激活中断,同时把16 位计数寄存器RCAP2H 和RCAP2L重装载,RCAP2H 和RCAP2L 的值可由软件预置。若EXEN2=1,定时器2的16位重装载由溢出或外部输入端T2EX从1至0的下降沿触发。这个脉冲使EXF2置位,如果中断允许,同样产生中断。定时器2 的中断入口地址是:002BH ——0032H 。

当DCEN=1时,允许定时器2向上或向下计数,如图6所示。这种方式下,T2EX引脚控制计数器方向。T2EX引脚为逻辑“1”时,定时器向上计数,当计数0FFFFH向上溢出时,置位TF2,同时把16 位计数寄存器RCAP2H和RCAP2L重装

.

.

载到TH2和TL2中。 T2EX引脚为逻辑“0”时,定时器2向下计数,当TH2 和TL2中的数值等于RCAP2H和RCAP2L中的值时,计数溢出,置位TF2,同时将0FFFFH数值重新装入定时寄存器中。

当定时/计数器2向上溢出或向下溢出时,置位EXF2位。

.