特点
兼容MCS- 51 产品
编程的Flash存储器1K字节
- 耐力: 1000写/擦除周期
2.7V至6V的工作电压范围
全静态操作: 0 Hz至24 MHz的
两级程序存储器锁
64字节的SRAM
15个可编程I / O线
1个16位定时器/计数器
三个中断源
直接驱动LED输出
片上模拟比较器
低功耗空闲和掉电模式
描述
该AT89C1051是一个低电压,高性能CMOS 8位微计算机与
闪存可编程可擦除只读存储器( PEROM ) 1K字节。该
器件采用Atmel的高密度非易失性存储器技术制造
并与行业标准的MCS- 51 指令集兼容。通过结合
与Flash单片芯片上的多功能8位CPU , Atmel的AT89C1051是一种pow-
强大的微型计算机,它提供了高度灵活和具有成本效益的解决方案
许多嵌入式控制应用。
该AT89C1051提供以下标准功能:为1K字节的Flash , 64字节
的RAM , 15个I / O口线, 1个16位定时器/计数器,一个三向量2级中断架构设计师用手工
tecture ,精密模拟比较器,片上振荡器和时钟电路。此外
化时, AT89C1051设计了静态逻辑操作下降到零频率
并支持两种软件选择的省电模式。空闲模式下停止
CPU同时允许RAM ,定时器/计数器,串行口和中断系统CON组
tinue运作。掉电方式保存RAM中的内容,但冻结
振荡器禁用所有其他芯片功能,直到下一个硬件复位。
8-Bit
微控制器
有1K字节
FL灰
AT89C1051
引脚配置
PDIP / SOIC
0366D-A–12/97
4-3
AT89C1051
引脚说明
V
CC
电源电压。
GND
地面上。
端口1
端口1是一个8位双向I / O口。端口引脚P1.2来
P1.7提供内部上拉电阻。 P1.0和P1.1需要克斯特
最终上拉电阻。 P1.0和P1.1还作为正输入
( AIN0 )和负输入端( AIN1 ) ,分别对
片上精密模拟比较器。端口1输出
缓冲器可吸收20毫安,可直接驱动LED显示器。
当1秒写入端口1引脚,它们可以用作
输入。当引脚P1.2至P1.7被用作输入,并且
外部拉低时将输出电流(I
IL
),因为
内部上拉电阻。
端口1也是在FLASH编程代码接收数据
和验证。
端口3
端口3引脚P3.0至P3.5 , P3.7七个双向I / O
引脚内部上拉电阻。 P3.6是硬连线作为输入,以
片上比较器和的输出是不能访问
作为通用I / O引脚。端口3输出缓冲器可
沉20毫安。当1秒写入端口3引脚他们
拉高由内部上拉和可被用作
输入。作为输入使用时, P3口被外部
拉低时将输出电流(I
IL
)由于上拉的。
端口3也可以用做其他不同的特殊功能,该功能
该AT89C1051的具体如下:
端口引脚
P3.2
P3.3
P3.4
第二功能
INT0 (外部中断0 )
INT1 (外部中断1 )
T0 (定时器0外部输入)
振荡器特性
XTAL1和XTAL2是输入和输出,分别
可以使用被配置为一个反相放大器的
片上振荡器,如示于图1中。石英
晶体或陶瓷谐振器都可以使用。驱动
装置从外部时钟源, XTAL2要保持
悬空而XTAL1被驱动,如图2中所示。
有对外部的占空比没有要求
时钟信号,由于输入到内部时钟电路
是通过除以2的触发器,但最小和马克西
妈妈高电压和低时间规范必须是
观察到。
图1 。
振荡器连接
注意:
C1,C2 = 30 pF的
±
10 pF对于晶体
= 40 pF的
±
10 pF的陶瓷谐振器
图2中。
外部时钟配置
3口还接收了闪存程序一些控制信号
编程和验证。
RST
复位输入。所有I / O引脚复位到1秒,只要RST
变高。抱着RST引脚为高电平两个机器周期
振荡器运行时,复位设备。
每个机器周期为12个振荡器或时钟周期。
XTAL1
输入到振荡器反相放大器和输入到
内部时钟工作电路。
XTAL2
输出振荡器反相放大器器。
4-5
特殊功能寄存器
片上存储器区域的地图被称为特殊功能
灰寄存器(SFR)空间被示于下表中。
注意,不是所有的地址都被占用,并unoc-
cupied地址可能不能在芯片上实现。
读这些地址将在总体回报
随机数据,并写入访问将有indetermi-
内特效果。
用户软件不要向其写入1秒到这些未上市的某些地区可能
系统蒸发散,因为它们可能会在未来的产品可用于调用
新的功能。在这种情况下,复位或不活动的值
新的比特总是为0 。
在某些指令的限制
该AT89C1051是一种既经济又符合成本效益的MEM
BER爱特梅尔的微控制器越来越多的家庭。它CON组
闪存程序存储器的tains 1K字节。它是完全compati-
竹叶提取与MCS- 51体系结构,并且可以被编程
采用MCS- 51指令集。但是,也有一
几方面的考虑利用当一个人必须牢记
某些指令编程该器件。
凡是涉及到跳转或分支应该说明
进行限制,使得该目标地址落在
该装置的物理程序存储空间,这是
1K的AT89C1051 。这应该是负责
软件程序员。例如, LJMP 3FEH
是的AT89C1051 (以1K的有效指令
内存) ,而LJMP 410H不会。
表1中。
AT89C1051 SFR映射和复位值
0F8H
0F0H
0E8H
0E0H
0D8H
0D0H
0C8H
0C0H
0B8H
0B0H
0A8H
0A0H
98H
90H
88H
80H
P1
11111111
TCON
00000000
TMOD
00000000
SP
00000111
TL0
00000000
DPL
00000000
DPH
00000000
TH0
00000000
PCON
0XXX0000
IP
XXX00000
P3
11111111
IE
0XX00000
PSW
00000000
加
00000000
B
00000000
0FFH
0F7H
0EFH
0E7H
0DFH
0D7H
0CFH
0C7H
0BFH
0B7H
0AFH
0A7H
9FH
97H
8FH
87H
4-6
AT89C1051
AT89C1051
1.分支指令:
LCALL , LJMP , ACALL , AJMP , SJMP , JMP @ A + DPTR
这些无条件转移指令将执行
正确只要程序员保持记住该
目标分支地址必须属于物理
程序存储器大小的边界(地址00H到
3FFH为89C1051 ) 。违反物理空间的限制
可能会造成未知程序的行为。
CJNE [...] , DJNZ [ ...] , JB , JNB , JC , JNC , JBC , JZ , JNZ带
这些条件转移指令的同一规则
上述适用。再次,违反了内存的边界
可能会造成不稳定的执行。
对于涉及应用程序中断正常中断
在80C51系列架构设计师用手工的服务程序地址位置
tecture被保存。
2. MOVX相关的指令和数据存储器:
该AT89C1051包含64个字节的内部数据存储器的
ORY 。因此,在本AT89C1051堆栈深度被限制为
64个字节,可用RAM的数量。外部数据
存储器访问不支持在该装置中,也不是克斯特
最终程序存储器执行。因此,不执行MOVX
[... ]说明应包括在该计划。
一个典型的80C51汇编仍将汇编指令,
即使它们被写入时违反限制men-
tioned以上。它是在控制器的用户的责任
知道该设备的物理特性和限制
使用和调整使用相应的说明
多地。
空闲模式
在空闲模式下,CPU把自己睡,而所有的导通
片上外设保持活跃。该模式是通过调用
软件。的芯片上的RAM中的内容,包括所有出特殊
CIAL功能寄存器在此保持不变
模式。空闲模式可由任何允许被终止
中断或硬件复位。
P1.0和P1.1应设置为“0” ,如果没有外部上拉是
使用,或设置为'1 ' ,如果外部上拉电阻的使用。
应当指出的是,当空闲是由硬终止
洁具复位后,设备恢复正常程序执行
化,从离开的地方,最多两个机器周期前
内部复位算法获得控制权。片上硬件
禁止访问内部RAM在这种情况下,但访问
该端口没有被禁止。要消除的可能性
一个意外的写入空闲时被终止端口引脚
复位后,指令之后的一个调用空闲
不应该是一个写入端口引脚或外部
内存。
掉电模式
在电源关断模式时,振荡器停止,并且
指令调用掉电是最后的指令
执行。片内RAM和特殊功能寄存器
TER值保留其值,直到掉电模式时结
经过NAT 。从掉电唯一的出口是一个硬件复位。
复位重新定义了特殊功能寄存器但不改变片
内存。复位不应V前被激活
CC
is
恢复到它的正常操作电平,并且必须保持
主动足够长的时间以使振荡器重新启动并台站
bilize 。
P1.0和P1.1应设置为“0” ,如果没有外部上拉是
使用,或设置为'1 ' ,如果外部上拉电阻的使用。
程序存储器锁定位
在芯片都可以留给外部器件了两个锁定位
编程( U),或可以被编程(P),以获得额外
tional特性列于下表:
锁定位保护模式
(1)
程序锁定位
LB1
LB2
1
2
3
注意:
U
P
P
U
U
P
保护类型
没有程序锁功能。
对Flash编程的进一步
被禁用。
模式2相同,也就是验证
禁用。
Flash进行编程
该AT89C1051是随片上的1K字节
在擦除状态PEROM代码存储器阵列(即,连续的
帐篷= FFH) ,并准备进行编程。该代码的MEM
储器阵列编程一个字节的时间。
一旦阵列
是编程的,要重新程序的任何非空白字节,则
整个存储器阵列需要被电擦除。
内部地址计数器:
该AT89C1051包含
内部PEROM地址计数器,它总是被重置
000H上的RST的上升沿和由硐高级
荷兰国际集团一正向脉冲引脚XTAL1 。
1.锁定位只能通过芯片擦除功能
操作。
4-7