智能电度表设计(一)信息工程毕业论文(3)
2013-06-01 01:23
导读:·低功耗空闲和掉电模式 AT89C2051 的引脚结构如图2.2 图2.2 89C2051引脚结构 引脚功能: ·VCC 电源电压 ·GND 地 ·P1 口:P1 口是一组8位双相I/O口,P1.2—P1.7提供内
·低功耗空闲和掉电模式
AT89C2051 的引脚结构如图2.2
图2.2 89C2051引脚结构
引脚功能:
·VCC 电源电压
·GND 地
·P1 口:P1 口是一组8位双相I/O口,P1.2—P1.7提供内部上拉电阻主要是考虑它们分别是内部精密比较器的同相输入端(AINO)和反相输入端(AIN1),如果需要应在外部接上拉电阻。Pl口输出缓冲器可吸收20M电流并可直接驱动LED。当P1口引脚写入“1”时可作输入端,当引脚 Pl. 2-Pl. 7用作输入并被外部拉低时,它们将因内部的上拉电阻而输出电流。
·P3口 接收一些用于Flash闪速存储器编程和程序校验的控制信号。
·RST: 复位输入。RST引脚一旦变成两个机器周期以上高电平,所有的 I /O口都将复制到“1"(高电平)状态,当振荡器正在工作时,持续两个机器周期以上的高电平便可完成复位,每个机器周期为12个振荡时钟周期。
·XTALl:振荡器反相放大器及内部时钟发生器的输入端。
·XTAL2:振荡器反相放大器的输出端。
振荡器特征:
XTAL1, XTAL2为片内振荡器的反相放大器的输入和输出端,如下图所示。可采用石英晶体或陶瓷振荡器组成时钟振荡器,如需从外部输入时钟驱动AT89C2051,时钟信号从XTAL1输入,XTAL2应悬空。由于输入到内部电路是经过一个2分频触发器,所以输入的外部时钟信号无需特殊要求,但它必须符合电平的最大值和最小值及时序规范。
2) AT89C2051指令的约束条件:
AT89C2051是经济型低价位的微控制器,它含有2k字节的Flash闪速程序存储器,指令系统与MCS-51完全兼容,可使用MCS-51指令系统对其进行编程。但是在使用某些有关指令进行编程时,须注意一些事项和跳转或分支有关的指令有一定的空间约束,使目的地址能安全落在AT89C2051的2k字节的物理程序存储器空间内。对于2k字节存储器的AT89C2051来说,LJMP 7EOH是一条有效指令,而LJMP 900H则为无效指令。
内容来自www.nseac.com
(1)分支指令
对于LCALL, LJMP, ACALL, AJMP, SJMP, JMP @A+DPTR等指令,只要记住这些分支指令的目的地址在程序存储器大小的物理范围(AT89C2051程序地址空间为:OOOH-7FFH单元),这些无条件分支指令就会正确执行,超出物理空间的限制会出现不可预知的程序出错。
CJNE[……],DJNZ[……], JB, JNB, JC, JNC, JBC, JZ, JNZ等这些条件转移指令的使用与上述原则一样,同样,超出物理空间的限制也会引起不可预知的程序出错。至于中断的使用,80C51系列硬件结构中已保留标准中断服务子程序的地址。
(2)与MOVX相关的指令,数据存储器
AT89C2051包含128字节内部数据存储器,这样,AT89C2051的堆栈深度局限于内部RAM的128字节范围内,它既不支持外部数据存储器的访问,也不支持外部程序存储器的执行,因此程序中不应有MOVX[……」指令。 一般的80C51汇编器即使在违反上述指令约束而写入指令时仍对指令进行汇编,用户应了解正在使用的AT89C2051微控制器的存储器物理空间和约束范围,适当地调整所使用的指令寻址范围以适应AT89C2051。
AT89C2051可使用对芯片上的两个加密位进行编程(P)或不编程(U)来得到,功能如表2.3所示
表2.3
空闲模式:
在空闲模式下,CPU保持睡眠状态而所有片内的外设仍保持激活状态,这种方式由软件产生。此时,片内RAM和所有特殊功能寄存器的内容保持不变。空闲模式可由任何允许的中断请求或硬件复位终止。P1.0和P1.1在不使用外部上拉电阻的情况下应设置为“0 ",或者在使用上拉电阻的情况下设置为“1"
应注意的是:在用硬件复位终止空闲模式时,AT89C2051通常从程序停止一直到内部复位获得控制之前的两个机器周期处恢复程序执行。在这种情况下片内硬件禁止对内部RAM的读写,但允许对端口的访问,要消除硬件复位终止空闲模式对端口意外写入的可能,原则上进入空闲模式指令的下一条指令不应对端口引脚或外部存储器进行访问。
(科教范文网 fw.nseac.com编辑发布)
掉电模式:
在掉电模式下,振荡器停止工作,进入掉电模式的指令是最后一条被执行的指令,片内RAM和特殊功能寄存器的内容在终止掉电模式前被冻结。退出掉电模式的唯一方法是硬件复位,复位后将重新定义全部特殊功能寄存器但不改变RAM中的内容,在Vcc恢复到正常工作电平前,复位应无效,且必须保持一定时间以使振荡器重启动并稳定工作。P1.0和P1.1在不使用外部上拉电阻的情况下应设置为“0 ",或者在使用外部上拉电阻时应设为“1"。
2.2.2 A/D转换器TLC549
TLC549是以8位开关电容逐次逼近A/D转换器为基础而构造的CMOSA/D转换器。它设计成能通过3态数据输出与微处理器或外围设备串行接口。TLC549仅用输入/输出时钟和芯片选择输入作数据控制。TLC549的I/O CLOCK输入频率最高可达1.1MHz。
TLC549的使用与较复杂的TLC540和TLC541非常相似;不过,TLC549提供了片内系统时钟,它通常工作在4MHz且不需要外部元件。片内系统时钟使内部器件的操作独立于串行输入/输出端的时序并允许TLC549象许多软件和硬件所要求的那样工作。I/OCLOCK和内部系统时钟一起可以实现高速数据传送,对于TLC549为每秒40,000次的转换速度。 TLC549的其他特点包括通用控制逻辑,可自动工作或在微处理器控制下工作的片内采样-保持电路,具有差分高阻抗基准电压输入端,易于实现比率转换(ratiometricconversion)、定标(scaling)以及与逻辑和电源噪声隔离的电路。整个开关电容逐次逼近转换器电路的设计允许在小于17μs的时间内以最0±0.5最低有效位(LSB)的精度实现转换。
2.2.3 看门狗监控器的选择 X25045
看门狗电路一般有软件看门狗和硬件看门狗两种。软件看门狗不需外接硬件电路,但系统需要出让一个定时器资源,这在许多系统中很难办到,
(转载自中国科教评价网http://www.nseac.com)
而且若系统软件运行不正常,可能导致看门狗系统也瘫痪。硬件看门狗是真正意义上的“程序运行监视器”,如计数型的看门狗电路通常由555多谐振荡器、计数器以及一些电阻、电容等组成,分立元件组成的系统电路较为复杂,运行不够可靠。
1) X25045芯片
X25045是美国Xicor公司的生产的标准化8脚集成电路,它将EEPROM、看门狗定时器、电压监控三种功能组合在单个芯片之内,大大简化了硬件设计,提高了系统的可靠性,减少了对印制电路板的空间要求,降低了成本和系统功耗,是一种理想的单片机外围芯片。
X25045引脚如图2-4所示。
图2.4 X25045引脚结构
其引脚功能如下
CS:片选择输入;SO:串行输出,数据由此引脚逐位输出;SI:串行输入,数据或命令由此引脚逐位写入X25045;SCK:串行时钟输入,其上升沿将数据或命令写入,下降沿将数据输出;WP:写保护输入。当它低电平时,写操作被禁止;Vss:地;Vcc:电源电压;RESET:复位输出。
X25045在读写操作之前,需要先向它发出指令,指令名及指令格式如表2.5所示。
表2.5 X25045指令及其含义
指令名 指令格式 操 作
WREN 00000110 设置写使能锁存器(允许写操作)
WRDI 00000100 复位写使能锁存器(禁止写操作)
RDSR 00000101 读状态寄存器
WRSR 00000001 写状态寄存器
READ 0000A8011 把开始于所选地址的存储器中的数据读出
WRITE 0000A8010 把数据写入开始于所选地址的存储器