1、1 目录目录 一、概述 2 二、实验内容 2 三、硬件设计 3 1 设计总体框图 3 2 实际电路 3 (1)复位电路 4 (2)时钟电路 5 (3)EA/VPP(31 脚)的功能和接法 . 6 (4)键盘输入电路 6 (5)数码管显示电路 7 四、软件设计 8 1 程序内容 8 2 C 语言程序 9 五、Protues 仿真 9 六、设计总结 10 七、附录 11 1 C 语言程序: 11 2 焊接电路板实物图 . 18 3 芯片引脚图 18 2 一、概述一、概述 单片机课程设计是一门实践课程,要求学生具有制作调试单片机 最小系统及外设的能力,能够掌握单片机内部资源的使用。 单片机课程设计内
2、容包括硬件设计、制作及软件编写、调试,学 生在熟练掌握焊接技术的基础上,能熟练使用单片机软件开发环境 Keil C51 编程调试, 并使用 STC ISP 调试工具采用串口下载方式联调 制作的单片机最小系统。 单片机课程设计题目包含基本部分及扩展部分,基本部分即单片 机最小系统部分,扩展部分是对单片机内部资源及外部 IO 口的功能 扩展,使制作的单片机系统具有一定的功能。 二、实验内容二、实验内容 自制一个单片机最小系统,包括串口下载、复位电路,采用外部 小键盘输入数据,能够实现加法、乘法及一个科学计算,计算结果显 示在四位一体的数码管上。 3 三、硬件设计三、硬件设计 1 设计总体框图设计总
3、体框图 2 实际电路实际电路 4 (1)复位电路复位电路 在单片机系统中,复位电路是非常关键的,当程序跑飞(运行不 正常)或死机(停止运行)时,就需要进行复位。 MCS-5l 系列单片机的复位引脚 RST( 第 9 管脚) 出现 2个机 器周期以上的高电平时,单片机就执行复位操作。如果RST 持续为 高电平,单片机就处于循环复位状态。 复位操作通常有两种基本形式:上电自动复位和开关复位。 上电 瞬间,电容两端电压不能突变,此时电容的负极和 RESET 相连,电 压全部加在了电阻上,RESET 的输入为高,芯片被复位。随之+5V 电源给电容充电,电阻上的电压逐渐减小,最后约等于 0,芯片正常 工
4、作。并联在电容的两端为复位按键,当复位按键没有被按下的时候 电路实现上电复位,在芯片正常工作后,通过按下按键使 RST 管脚 出现高电平达到手动复位的效果。一般来说,只要 RST 管脚上保持 10ms 以上的高电平,就能使单片机有效的复位。本次课程设计选用 开关复位电路,设计如下: 5 (2)时钟电路时钟电路 XTAL1(19 脚) :芯片内部振荡电路输入端。 XTAL2(18 脚) :芯片内部振荡电路输出端。 XTAL1 和 XTAL2 是独立的输入和输出反相放大器,它们可以 被配置为使用石英晶振的片内振荡器, 或者是器件直接由外部时钟驱 动。本次课程设计采用的是内时钟模式,即采用利用芯片内
5、部的振荡 电路,在 XTAL1、XTAL2 的引脚上外接定时元件(一个石英晶体和 两个电容) ,内部振荡器便能产生自激振荡。一般来说晶振可以在 1.2 12MHz 之间任选,甚至可以达到 24MHz 或者更高,但是频 率越高功耗也就越大。 在本次课程设计采用的 11.0592M 的石英晶振。 和晶振并联的两个电容的大小对振荡频率有微小影响, 可以起到频率 微调作用。 当采用石英晶振时, 电容可以在 20 40pF 之间选择 (本 实验套件使用 30pF) ;当采用陶瓷谐振器件时,电容要适当地增大一 些,在 30 50pF 之间。通常选取 33pF 的陶瓷电容就可以了。具 体电路如下: 6 (3
6、)EA/VPP(31 脚)的功能和接法脚)的功能和接法 51 单片机的 EA/VPP(31 脚) 是内部和外部程序存储器的选 择管脚。 当 EA 保持高电平时, 单片机访问内部程序存储器; 当 EA 保 持低电平时,则不管是否有内部程序存储器,只访问外部存储器。 对于现今的绝大部分单片机来说,其内部的程序存储器(一般为 flash)容量都很大,因此基本上不需要外接程序存储器,而是直接使 用内部的存储器。 在本实验套件中,EA 管脚接到了 VCC 上,只使用内部的程序 存储器。 (4)键盘输入电路键盘输入电路 在键盘中按键数量较多时,为了减少 I/O 口的占用,通常将按键 排列成矩阵形式,如图 1 所示。在矩阵式键盘中,每条水平线和垂直 线在交叉处不直接连通,而是通过一个按键加以连接。这样,一个端 口(如 P1 口) 就可以构成 4*4=16 个按键, 比之直接将端口线用于键 盘多出了一倍,而且线数越多,区别越明显,比如再多加一条线就可 以构成 20 键的键盘,而直接用端口线则只能多出一键(9 键) 。由此 可见,在需要的键数比较多时,采用矩阵法来做键盘是合