发布时间 : 星期四 文章单片机实验实训指导书II更新完毕开始阅读41bad9d684254b35eefd34be
一、实验目的:
实验一 单片机最小系统设计
1、学习单片机时钟电路设计; 2、学习单片机复位电路设计; 3、学习单片机I/O口输出控制; 4、学习keil编译软件的应用 5、学习Proteus仿真软件的应用 6、学习延时子程序设计。
二、实验任务
1、设计单片机最小系统;
2、利用单片机最小系统控制发光二极管秒周期闪烁。
三、实验仪器
PC一台 、keil编译软件、 Proteus 仿真软件 四、实验说明
单片机最小系统,或者称为最小应用系统,是指用最少的元件组成的单片机可以工作的系统. 对51系列单片机来说,单片机+晶振电路+复位电路,便组成了一个最小系统.
1、系统时钟电路
单片机内部具有一个高增益反相放大器,用于构成振荡器。通常在引脚XTALl和XTAL2跨接石英晶体和两个补偿电容构成自激振荡器,系统时钟电路结构如图2所示,可以根据情况选择6MHz、8MHz或12MHz等频率的石英晶体,补偿电容通常选择20-30pF左右的瓷片电容。
图1 系统时钟电路
2、复位电路
单片机小系统采用上电自动复位和手动按键复位两种方式实现系统的复位操作。上电复位要求接通电源后,自动实现复位操作。手动复位要求在电源接通的条件下,在单片机运行期间,用按钮开关操作使单片机复位。复位电路结构如图3所示。上电自动复位通过电容C3充电来实现。手动按键复位是通过按键将电阻R2与VCC接通来实现。
图2 复位电路
3、延时子程序设计
单片机延时程序可以采用延时子程序和定时中断完成,定时中断延时不会占用CPU时间,将在后续章节介绍,延时子程序主要采用CPU运行指令占用时间而得到,通常采用循环指令编写,本例中单片机晶振为12MHz,因此机器周期为1μs,0.05s程序如下:
DLYHS:MOV R5,#1 ;置外循环次数
DLY0: MOV DLY1: MOV DLY2: DJNZ
DJNZ DJNZ RET
R6,#100 R7,#250 R7,DLY2 R6,DLY1 R5,DLY0
;置中循环次数 ;置内循环次数 ;2机周×250×1μs=0.5ms ;0.5ms × 100=0.05s ;0.05ms × 1=0.05s
五、实验说明
1、根据单片机最小系统定义,设计单片机最小系统设计,并设计单片机控制发光二极
管电路;
2、编程并调试,实现对发光二极管循环闪烁;
3、编写500ms延时子程序,并于主程序中调用,完成对时间周期的控制。
六、实验原理图:
图3 LED控制电路仿真运行
七、实验步骤
1、开机启动Proteus仿真软件,并画出对应仿真原理图
2、启动Keil软件,建立一个工程文件,添加编写好的程序,编译文件,软编译有错,直接进行修改,直至汇编成功
3、编译无错后,进入调试运行环境。
4、以单步运行,跟踪运行,断点运行,全速运行等形式调试程序。 5、观察程序运行情况。
八、程序流程
开始程序初始化点亮LED延时0.5s熄灭LED延时0.5s图4 LED闪烁控制流程图
实验二 内存数据复制程序设计
一、实验目的
1、掌握单片机最小系统设计 2、掌握子程序的编写及调用
3、掌握单片机源程序的编辑、汇编、调试及运行过程 4、掌握循环分支程序的编写及调试方法 二、实验任务
应用AT89C51单片机芯片,设计单片机最小系统,并在此基础上编写两程序实现如下功能:
1.设计程序分别将0~31数据写入单片机RAM地址30h~4fh内,然后将30h~4fh内数据复制到50h~6fh内;
2.将存放在ROM中以TABLE为标号地址起始的连续16个数据依次复制到RAM 70H~7FH单元。
三、实验仪器
PC一台 、keil编译软件、 Proteus 仿真软件 四、实验说明