1、 1 单片机课程设计实验报告单片机课程设计实验报告 简易计算器简易计算器 2 目目 录录 一、设计任务和性能指标3 1.1 设计任务3 1.2 性能指标3 二、设计方案3 三、系统硬件设计4 3.1 单片机最小系统4 3.2 键盘接口电路5 3.3 数码管显示电路6 3.5 按键监视电路6 四、系统软件设计7 4.1 键盘扫描子程序设计7 4.2 移位子程序及结果计算子程序设计8 4.3 显示子程序设计8 4.4主程序设计21 五、 调试及性能分析21 5.1调试步骤21 5.2性能分析21 六、 心得体会22 参考文献 22 附录 1、系统硬件电路图23 附录 2、硬件实物图24 附录 3、
2、器件清单 25 3 一、设计任务和性能指标一、设计任务和性能指标 1.1 设计任务设计任务 自制一个单片机最小系统,包括复位电路,采用外部小键盘输入数据,能够 实现加法、乘法及一个科学计算,计算结果显示在四位一体的数码管上。 1.2 性能指标性能指标 1. 加法:四位加法,计算结果若超过四位则显示计算错误; 2. 减法:四位减法,计算结果若小于零则显示计算错误; 3. 乘法:个位数乘法; 4. 除法:整数除法; 5. 取对数; 6. 开平方; 7. 指数运算; 8. 有清零功能 二二.设计方案设计方案 按照系统设计的功能的要求,初步确定设计系统由主控模块、监测模块、显 示模块、键扫描接口电路共
3、四个模块组成,电路系统构成框图如图 1.1 所示。主 控芯片使用 51 系列 AT89C52 单片机,采用高性能的静态 80C51 设计,由先进工 艺制造,并带有非易失性 Flash 程序存储器。它是一种高性能、低功耗的 8 位 COMS 微处理芯片,市场应用最多。 监测模块采用二极管和扬声器(实验室用二极管代替)组成电路。 键盘电路采用 4*4 矩阵键盘电路。 显示模块采用 4 枚共阳极数码管和 74ls273 锁存芯片构成等器件构成。 整个单片机的接口电路: P0 用于显示输出; P1 用于键扫描输入; P2 用于数码管位选控制; P3 用于键盘扩展(部分运算符输入) ; 三三.系统硬件设
4、计系统硬件设计 3.1 单片机最小系统单片机最小系统 单片机最小系统就是支持主芯片正常工作的最小电路部分,包括主控芯片、 4 复位电路和晶振电路。 主控芯片选取 STC89C52RC 芯片,因其具有良好的性能及稳定性,价格便 宜应用方便。 晶振选取 11.0592MHz,晶振旁电容选取 20pF。 采用按键复位电路,电阻分别选取 100和 10K,电容选取 10F。 以下为单片机最小系统硬件电路图。 单片机最小系统硬件电路 3.2 键盘接口电路键盘接口电路 计算器所需按键有: 数字键:1,2,3,4,5,6,7,8,9,0 功能键:+, - , *, / , = , C( 清零) 扩展键: “
5、log” , “ln” , “x2” “小数点” , “开方” 共计 25 个按键,采用 4*4 矩阵键盘,键盘的行和列之间都有公共端相连, 四行和四列的 8 个公共端分别接 P1.0P1.7, 这样扫描 P1 口就可以完成对矩阵键 盘的扫描,通过对 16 个按键进行编码,从而得到键盘的口地址,对比 P1 口德扫 描结果和各按键的地址,我们就可以得到是哪个键按下,从而完成键盘的功能。 以下为键盘接口电路的硬件电路图 5 键盘接口电路 实物图: 扩展键接口电路: 6 3.3 数码管显示电路数码管显示电路 采用 8 位数码管对计算数据和结果的显示(实验时只用到了 4 位) ,这里选 取共阴数码管,利用 74LS244N 对数码管进行驱动,为了节省 I/