1、 1 1 设计课题任务、功能要求说明及总体方案介绍 1.1 设计课题任务 课题:简易计算器 任务:设计一个具有特定功能的计算器。该计算器上电或按键复位后能自动显 示系统提示界面,进入准备工作状态。能实现基本的加、减、乘、除四则运算。 1.2 功能要求说明 在本次工程实践中,主要完成如下方面的设计任务: (1)计算器上电或按键复位后能显示初始化界面 (2)2 秒后进入计算器界面 (3)按键能进行加、减、乘、除运算并显示结果 (4)按清零键后能进行下一次计算 1.3 设计课题总体方案介绍及工作原理说明 计算器的总体功能原理是以 AT89S52 单片机为主要控制核心,通过外接 4*4 行 列式键盘作
2、为控制信号输入源,一块 12864 液晶作为显示器件,通过按键控制,单 片机实时地去执行,在 12864 液晶上显示界面。系统控制原理图如图 1 所示。 液晶 显示 电路 AT89S52 电源电路 复位电路 下载电路 键盘电路 图 1 系统控制原理图 2 2 设计课题硬件系统的设计 2.1 设计课题硬件系统各模块功能简要介绍 2.1.1 AT89S52 控制模块 考虑到设计功能需要,控制器的功能用于外部键盘信号的接收和识别、液晶模 块的显示控制、复位电路等,我们选择了 AT89S52 系列单片机,具有反应速度极 快,工作效率特高的特点。 AT89S52 是一种低功耗、高性能 CMOS8 位微控
3、制器,具有 8K 在系统可编程 Flash 存储器。使用 Atmel 公司高密度非易失性存储器技术制造,与工业 80C51 产品指令和引脚完全兼容。片上 Flash 允许程序存储器在系统可编程,亦适于常规 编程器。在单芯片上,拥有灵巧的 8 位 CPU 和在系统可编程 Flash,使 AT89S52 为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。 AT89S52 具有以下标准功能: 8k 字节 Flash,256 字节 RAM,32 位 I/O 口 线,看门狗定时器,2 个数据指针,三个 16 位定时器/计数器,一个 6 向量 2 级 中断结构,全双工串行口,片内晶振及时钟电路。另外,
4、AT89S52 可降至 0Hz 静 态逻辑操作,支持 2 种软件可选择节电模式。空闲模式下,CPU 停止工作,允许 RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM 内容被保 存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。 2.1.2 12864 液晶模块 FYD12864-0402B 是一种具有 4 位/8 位并行,2 线或 3 线串行多种接口方式, 内含国家一级、二级简体中文字库的点阵图形液晶显示模块;其显示分辨率为 128*64,内置 8192 个 16*16 点汉字,和 128 个 16*8 点 ASC字符集。利用该模 块灵活的接口和简单、方便的
5、操作指令,可构成全中文人机交互图形界面。12864 液晶的控制口线主要接在 AT89S52 单片机的 P0 和 P3 的部分口线上,可以显示 8 4 行,1616 点阵的汉字。低压低功耗是其又一显著特点。与同类液晶模块相 比,无论硬件电路或显示程序都要简洁得多,且该模块的价格也略低于相同点阵的 液晶模块。 3 2.1.3 键盘功能模块 根据系统的基本要求,采用由 16 个键构成的行列式键盘分别接在 AT89S52 单 片机的 P1.0-P1.7,相对于独立式键盘节省了大量口线和空间,给电路设计带来极 大的方便,不过也相应的增加了程序的设计难度。采用矩阵式连接方法,组成 4 4 式 16 个按键
6、,分别代表数字“09”、运算符“+、-、*、/”、等于号“=”、 清零键。 2.2 设计课题电路原理图、PCB 图、元器件布局图 2.2.1 电路原理图 电路原理图(见附录 A) 2.2.2 电路 PCB 图 电路 PCB 图(见附录 B) 2.2.3 元器件布局图 元器件布局图(见附录 C) 2.2.4 键盘电路原理图及 PCB 图 键盘电路原理图及 PCB 图(见附录 D) 2.3 设计课题元器件清单 见附录 E 4 3 设计课题软件系统的设计 3.1 设计课题使用单片机资源的情况 AT89S52 的片外资源: P0、P1:基本输入输出口; P3.5:E(12864 液晶); P3.0:RS(12864 液晶); P3.1:RW(12864 液晶); XTAL1、XTAL2:晶振输入; RST: 复位输入。 AT89S52 的片内资源: 30H、31H、32H、33H 单元:临时暂存器单元;23H 单元:第一操作数存储 单元;24H 单元:第二操作数存储单元;24H 单元:第一操作数单元;25H 单元: 第二操作数单元;26H 单元:运算的高位存放单元;27H 单元