外部程序存储器取指令(或数据)时,每个机器周期两次PSEN有效,即输出两个脉冲。当访问外部数据存储器时,没有两次有效的PSEN信号。
EA/VPP:外部访问允许。欲使CPU仅访问外部程序存储器(地址为0000H-FFFFH),EA端必须保持低电平(接地)。需要注意的是:如果加密位LB1被编程,复位时内部会锁存EA端状态。
如EA端保持高电平(接VCC端),CPU则执行内部程序存储器中的指令。 Flash存储器编程期间,该引脚用于施加+12V编程电压(VPP)。 XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入端。 XTAL2:反向振荡放大器器的输出端。 (3)晶体振荡器特性:
AT89S51中有一个用于构成内部振荡器的高增益反相放大器,引脚XTAL1和XTAL2分别为该反向放大器的输入端和输出端。这个反向放大器与作为反馈元件的片外石英晶体或陶瓷谐振器一起构成自激振荡器。
外接石英晶体(或陶瓷谐振器)及电容C1、C2接在放大器的反馈回路中构成并联振荡电路。对外接电容C1、C2虽然没有十分严格的要求,但电容容量的大小会轻微影响振荡频率的高低、振荡器工作的稳定性、起振的难易程度及温度稳定性。如果使用石英晶体,电容应该使用30pF?10pF。
还可以使用外部时钟。这种情况下,外部时钟脉冲接XTAL1端,即内部时钟发生器的输入端, XTAL2应悬空。
由于外部时钟信号是通过一个2分频触发器后作为内部时钟信号的,所以外部时钟信号的占空比没有特殊要求,但最小高电平持续时间和最大低电平持续时间应符合产品技术条件的要求。
2.2 AT89S52的主要性能参数:
(1)与MCS-51产品指令系统完全兼容。 (2)8K字节在系统可编程(ISP)Flash闪速存储器。 (3)1000次擦写周期。 (4)4.0—5.5V的工作电压范围。 (5)全静态工作模式:0Hz--33Hz。 (6)三级程序加密。 (7)128x8字节的内部RAM。 (8)32个双向可编程I/O口线。 (9)2个16位可编程定时/计数器。 (10)6个中断源。 (11)全双工UART串行通道。 (12)低功耗空闲和掉电模式。 - 9 -
(13)中断可从空闲模式唤醒系统。 (14)看门狗(WDT)及双数据指针。 (15)掉电标识和快速编程特性。 (16)灵活的在系统编程(ISP-字节或页写模式)。 2.3 AT89S52的新功能:
AT89S52兼容标准MCS-51指令系统及AT89C52引脚结构,它相对于AT89C52增加的新功能包括: (1)ISP在线编程功能,这个功能的优势在于改写单片机存储器内的程序不需要把芯片从工作环境中剥离。是一个强大易用的功能。 (2) 最高工作频率为33MHz,AT89C52的极限工作频率是24M,所以AT89S52具有更高工作频率,从而具有了更快的计算速度。 (3)具有双工UART串行通道。 (4)内部集成看门狗计时器,不再需要像AT89C52那样外接看门狗计时器单元电路。 (5)双数据指示器。 (6)电源关闭标识。 (7)全新的加密算法,这使得对于AT89S52的解密变为不可能,程序的保密性大大加强,这样就可以有效的保护知识产权不被侵犯。 (8) 兼容性方面:向下完全兼容51全部字系列产品。比如8051、AT89C51等早期MCS-51产品 3 方案设计
使用ADC0832模拟/数字转换器芯片设计数字电压表电路。该设计方案以单片机AT89S52为主控芯片,以ADC0832模拟/数字转换器芯片为核心转换模拟/数字量的芯片,组成数字电压表电路。该电路能准确地测出所被测有效电压值、附加四位显示功能,可精确到有效电压值为0.01V。
4 设计流程图 4.1总体设计流程图
- 10 -
开始端口初始化调用AD转换子程序调用显示子程序 4.2
AD转换关系设计流程图
- 11 -
开始启动一次转换NA/D转换结束EOC=1?Y返回
5 软硬件设计 5.1 硬件电路设
该设计的硬件电路由主控部分(单片机AT89S51)、采集模拟量部分(A/D转换一路ADC0832)、显示部分(四位八段数码管)、电源部分由电脑USB(5V)供电4个部分组成。各部分之间相互协作,构成一个统一的有机整体,实现数字电压表的功能。各部分的硬件电路设计如下。设计总电路图见附录一。
5.2 单片机AT89S52外围电路设计
4.2.1复位电路设计
MCS-51的复位输入引脚RST为MCS-51提供了初始化的手段,可以使程序从指定处开始执行,在MCS-51的时钟电路工作后,只要RST引脚上出现超过两个机器周期以上的高电平时,即可产生复位的操作,只要RST保持高电平,则MCS-51循环复位,只有单RET由高电平变成低电平以后,MCS-51才从0000H
- 12 -