欢迎来到天天文库
浏览记录
ID:11909415
大小:2.02 MB
页数:139页
时间:2018-07-14
《单片机实验实训指导书ii》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、实验一单片机最小系统设计一、实验目的:1、学习单片机时钟电路设计;2、学习单片机复位电路设计;3、学习单片机I/O口输出控制;4、学习keil编译软件的应用5、学习Proteus仿真软件的应用6、学习延时子程序设计。二、实验任务1、设计单片机最小系统;2、利用单片机最小系统控制发光二极管秒周期闪烁。三、实验仪器PC一台、keil编译软件、Proteus仿真软件四、实验说明单片机最小系统,或者称为最小应用系统,是指用最少的元件组成的单片机可以工作的系统.对51系列单片机来说,单片机+晶振电路+复位电路,便组成了一个最小系统.1、系统时钟电路单片机内部具有一个高增益反
2、相放大器,用于构成振荡器。通常在引脚XTALl和XTAL2跨接石英晶体和两个补偿电容构成自激振荡器,系统时钟电路结构如图2所示,可以根据情况选择6MHz、8MHz或12MHz等频率的石英晶体,补偿电容通常选择20-30pF左右的瓷片电容。图1系统时钟电路2、复位电路单片机小系统采用上电自动复位和手动按键复位两种方式实现系统的复位操作。上电复位要求接通电源后,自动实现复位操作。手动复位要求在电源接通的条件下,在单片机运行期间,用按钮开关操作使单片机复位。复位电路结构如图3所示。上电自动复位通过电容C3充电来实现。手动按键复位是通过按键将电阻R2与VCC接通来实现。图
3、2复位电路3、延时子程序设计单片机延时程序可以采用延时子程序和定时中断完成,定时中断延时不会占用CPU时间,将在后续章节介绍,延时子程序主要采用CPU运行指令占用时间而得到,通常采用循环指令编写,本例中单片机晶振为12MHz,因此机器周期为1µs,0.05s程序如下: DLYHS:MOVR5,#1;置外循环次数DLY0:MOVR6,#100;置中循环次数DLY1:MOVR7,#250;置内循环次数DLY2:DJNZR7,DLY2;2机周×250×1µs=0.5msDJNZR6,DLY1;0.5ms×100=0.05sDJNZR5,DLY0;0.05ms×1=0.0
4、5sRET二、实验说明1、根据单片机最小系统定义,设计单片机最小系统设计,并设计单片机控制发光二极管电路;2、编程并调试,实现对发光二极管循环闪烁;3、编写500ms延时子程序,并于主程序中调用,完成对时间周期的控制。三、实验原理图:二、实验步骤1、开机启动Proteus仿真软件,并画出对应仿真原理图2、启动Keil软件,建立一个工程文件,添加编写好的程序,编译文件,软编译有错,直接进行修改,直至汇编成功3、编译无错后,进入调试运行环境。4、以单步运行,跟踪运行,断点运行,全速运行等形式调试程序。5、观察程序运行情况。八、程序流程实验二内存数据复制程序设计一、实验
5、目的1、掌握单片机最小系统设计2、掌握子程序的编写及调用3、掌握单片机源程序的编辑、汇编、调试及运行过程4、掌握循环分支程序的编写及调试方法二、实验任务应用AT89C51单片机芯片,设计单片机最小系统,并在此基础上编写两程序实现如下功能:1.设计程序分别将0~31数据写入单片机RAM地址30h~4fh内,然后将30h~4fh内数据复制到50h~6fh内;2.将存放在ROM中以TABLE为标号地址起始的连续16个数据依次复制到RAM70H~7FH单元。三、实验仪器PC一台、keil编译软件、Proteus仿真软件四、实验说明从广义上讲,80C51内RAM(128B)
6、和特殊功能寄存器(128B)均属于片内RAM空间,为了加以区别,内RAM通常指00H~7FH的低128空间,它又可以分为3个物理空间:工作寄存器区、位寻址区和用户数据区,具体内存分配如图2-1所示。1、工作寄存器区地址从00H~1FH共32个字节属工作寄存器区。工作寄存器(R0、R1¼R7)是80C51的重要寄存器,指令系统中有专用于工作寄存器操作的指令,读写速度比一般内RAM要快,指令字节比一般直接寻址指令要短,另外工作寄存器还具有间接功能,能给编程和应用带来方便。工作寄存器分为4个区,0区、1区、2区、3区。每个区有8个寄存器:R0~R7,寄存器名称相同。但当
7、前工作寄存器区只能有一个,至于哪一个工作寄存器区处于当前工作状态则有程序状态字PSW中的D4(RS1)、D3(RS0)位决定。若用户程序不需要4个工作寄存器区,则不用的工作寄存器区单元可作为一般的RAM使用。2、位寻址区从20H~2FH共16字节属位寻址区。16字节(Byte,缩写为大写B)每B有8位(bit,缩写为小写b),共128位,每一位均有一个位地址(如图1-4)。在MCS—51单片机机中,RAM,ROM均以字节为单位,每个字节有8位,每一位可容纳一位二进制数的1或0.但是一般RAM只有字节地址,操作时只能8位整体操作,不能按位单独操作。而位寻址区的16个
8、字节,非但
此文档下载收益归作者所有