单片机接口实验指导书
单片机接口技术与应用实验指导书(修改)
实验一定时器实验一、实验目的1.学习89C51内部计数器的使用和编程方法2.进一步掌握中断处理程序的编写方法二、实验说明关于内部计数器的编程主要是定时常数的设置和有关控制寄存器的设置。
内部计数器在单片机中主要有定时器和计数器两个功能。
本实验使用的是定时器,定时为一秒钟。
CPU运用定时中断方式,实现每一秒钟输出状态发生一次反转,即发光管每隔一秒钟亮一次。
定时器有关的寄存器有工作方式寄存器TMOD和控制寄存器TCON。
TMOD用于设置定时器/计数器的工作方式0-3,并确定用于定时还是用于计数。
TCON主要功能是为定时器在溢出时设定标志位,并控制定时器的运行或停止等。
内部计数器用作定时器时,是对机器周期计数。
每个机器周期的长度是12个振荡器周期。
因为实验系统的晶振是12MHZ,本程序工作于方式2,即8位自动重装方式定时器, 定时器100uS中断一次, 所以定时常数的设置可按以下方法计算:机器周期=12÷12MHz=1uS(256-定时常数)³1uS=100uS定时常数=156。
然后对100uS中断次数计数10000次,就是1秒钟。
在本实验的中断处理程序中,因为中断定时常数的设置对中断程序的运行起到关键作用,所以在置数前要先关对应的中断,置数完之后再打开相应的中断。
三、实验内容及步骤本实验需要用到单片机最小应用系统模块(F1区)和十六位逻辑电平显示模块(I4区)。
1.使用单片机最小应用系统模块,用导线将P1.0接到十六位逻辑电平显示的任意一只发光二极管上。
2.用串行数据通信线连接计算机与仿真器,把仿真头插到模块的单片机插座中,打开模块电源,插上仿真器电源插头(USB线)。
3.打开Keil uVision2仿真软件,首先建立本实验的项目文件,接着添加“TH10_定时器.ASM”源程序,编译无误后。
4.全速运行程序,发光二极管隔一秒点亮一次,点亮时间为一秒。
5.也可以把源程序编译成可执行文件,把可执行文件用ISP烧录器烧录到89S52/89S51芯片中运行。
单片机原理与接口技术实验指导书
实验一单片机实验开发系统操作实验一、实验目的和要求1. 学习Keil C51集成开发环境中汇编语言程序的设计和调试。
2. 熟悉TX-1C实验板的应用。
二、实验设备1. Keil C51集成开发环境一套2. TX-1C实验板一台3. PC机一台三、TX-1C实验板的使用1.按实验线路接好线后,检查无误在指导教师允许下才可通电。
2.实验板通电后,不允许在上面放置任何物品,特别是金属物!(因集成芯片或线路引起短路损坏设备)。
四、实验步骤1.打开PC机电源,正常工作后,在显示器的桌面上点击快捷图标“u Vision2”,进入Keil C51集成开发环境的开发调试平台。
2.实验板接好2根USB线后,打开电源。
3. 源文件的建立和打开:(1) 选菜单栏文件/新文件或者工具栏新文件,出现源文件编辑窗口,输入程序S1。
(2) 选文件/存储(或另存),要求输入文件名,同时保存类型选*.asm。
选择保存路径,然后单击保存即可。
(3)编译源文件,选菜单栏/编译、连接、装载或者工具栏“!”,弹出“装载完毕OK”,根据编译结果的错误提示,修正源程序S1,直至成功。
此时可以关闭“编译结果”和源文件编辑窗口。
4.调试和运行程序S1(1)“当前模块”中“小手光标”位置是PC指针所在,“寄存器”中显示当前各寄存器中的内容。
“数据存储区”中地址用右键选显示地址,“输入数据”为十六进制2000,确认后调试。
(2)首先单步运行,选主菜单/调试/单步运行或者选工具栏单步运(F7)。
运行一个循环,观察相关的寄存器和存储区的变化。
(3)运用连续运行和设断点运行。
工具栏/为连续运行,在“当前模块”中鼠标出现“小手”时点击,“红色手”即为断点位置。
5. 记录下数据区2000H~20FFH中,在执行程序S1前后的内容变化。
五、实验内容程序S1的参考程序如下:机器代码汇编语言注释ORG 0000H7800 SE01: MOV R0,#00H ;902000 MOV DPTR,#2000H ;E4 L001: CLR A ;F0 MOVX @DPTR,A ;A3 INC DPTR ;08 INC R0 ;B800F9 CJNE R0,#00H,L001 ;80FE LOOP: SJMP LOOP ;END六、思考题1. 程序S1的功能是什么?画出S1程序框图,并写出注释。
学生-单片机原理及接口技术--C语言版实验指导书
单片机原理及接口技术实验指导书2019年3月目录一、实验环境介绍................................................. - 1 -1.1 Keil集成开发环境介绍 ................................... - 1 -1.2 SUN ES59PA实验仪介绍 .................................. - 10 -二、实验内容............................................................................................................ - 12 -实验一集成调试软件使用练习............................................................................ - 12 -实验二 C51程序语言编程实验(跑马灯)......................................................... - 15 -实验三外部中断实验............................................................................................ - 17 -实验四定时器/计数器应用实验.......................................................................... - 21 -实验五双机串行通信实验.................................................................................... - 25 -实验六交通灯控制综合实验................................................................................ - 28 -实验七 I/O口扩展实验......................................................................................... - 29 -实验八串并/并串实验.......................................................................................... - 32 -实验九键盘及8位数码管显示实验.................................................................... - 37 -实验十并行D/A和A/D转换实验.................................................................... - 43 -实验十一 LCD1602显示屏实验............................................................................. - 50 -实验十二综合实验............................................................................................ - 56 -一、实验环境介绍1.1 Keil集成开发环境介绍Keil C51集成开发环境是众多单片机应用开发的优秀软件之一,它集编辑、编译、仿真于一体,支持汇编语言、C语言的程序设计,具有强大的软件调试功能,生成的程序代码运行速度快,所需存储器空间小,可与汇编语言相媲美,而且界面友好,易学易用。
《单片机与接口技术》实验指导书
《单片机与接口技术》实验指导书本课程理论课程总课时48,其中实验16学时,计划做7个实验,加深对知识的理解与掌握。
本课程实验所用设备有计算机、MPLAB-ICD软件硬件及实验装置。
要求每个学生完成实验后写出实验报告,要求用学校专用实验报告用纸。
实验1 熟悉MPLAB-ICD软硬件开发环境1.实验目的:本实验旨在使学生熟悉MPLAB-ICD软硬件的使用,要求学生通过本实验,掌握MPLAB-ICD的应用,掌握汇编源程序的编辑录入,掌握项目的制作,计算机与开发器的硬件连接,演示板的使用,实验装置的应用,目标程序的下载等等,为后续实验打下必要的知识准备,同时完成指令系统的验证。
具体参考教材第五章内容。
2.实验设备:PC机1台,MPLAB-IDE软硬件环境。
实验2 基本输入输出实验(循环显示实验)1.实验目的:练习基本I/O端口的编程应用方法2.实验设备:PC机1台,MPLAB-ICD实验装置1套。
3.实验原理:本实验实现的功能是,把端口RC的8条引脚全部设置为输出模式,依次从引脚RC0到RC7送出高电平,然后再依次从RC7到RC0送出高电平,从而使得与RC端口相连的8只发光二极管LED循环往复依次点亮。
即依次循环点亮LED0→LED1→......LED7→全熄→LED7→LED6→......LED0→全熄→LED0。
其效果类似于一个简单的霹雳灯。
4.实验电路与程序流程图:5.参考实验程序:;循环显示程序LIST P=16F877INCLUDE "P16F877.INC";源程序编写格式flag EQU 0x24;定义循环变量flagORG 0X00;单片机复位地址Nop ;特定需要CLRF PORTC; PORTC寄存器内容清零bsf STATUS,RP0;STATUS寄存器的RPO位置位movlw 00h ;将立即数00h传送至W寄存器movwf TRISC ;将W寄存器的内容传送至TRISC寄存器bcf STATUS,RP0 ;STATUS寄存器的STATUS位清零movlw 01h ;将立即数01h传送至W寄存器movwf PORTC;将W寄存器的内容传送至PORTC寄存器bsf flag,0 ;flag寄存器的0位置位bcf STATUS,C;STATUS寄存器的C位清零loop btfss STATUS,C;测试STATUS寄存器内容的C位,为1则间跳goto loop1;无条件跳转至loop1处comf flag,1;将flag寄存器内容取“反”后传送至floop1 btfss flag,0;测试flag寄存器内容的0位,为1则间跳goto loop2;无条件跳转至loop2处rlf PORTC,0;PORTC寄存器内容带C左循环后送至Wmovwf PORTC;将W寄存器的内容传送至PORTC寄存器goto loop3;无条件跳转至loop3处loop2 rrf PORTC,0; PORTC寄存器内容带C右循环后送至Wmovwf PORTC;将W寄存器的内容传送至PORTC寄存器loop3call delay;调用delay延时程序goto loop;无条件跳转至loop处delaymovlw 7fh;将立即数7fh传送至W寄存器movwf 20h;将W寄存器的内容传送至20hlp0 movlw 0a0h;将立即数0a0h传送至W寄存器movwf 21h;将W寄存器的内容传送至21hnop;空操作,单条指令周期延时lp1 decfsz 21,f;21减1传送至fgoto lp1;无条件跳转至lp1处decfsz 20h,f;20h内容减一传送至fgoto lp0;无条件跳转至lp0处returnEND;程序结束标志实验3 TMR0应用实验(队列灯)1.实验目的:练习定时器/计数器0编程应用方法2.实验设备:PC机1台,MPLAB-ICD实验装置1套。
单片机实验实验指导书
目录实验一P1口输入、输出实验 (1)实验二P3口输出控制继电器实验 (4)实验三简单I/O实验(交通灯控制) (6)实验四外部中断实验(急救车与交通灯实验) (8)实验五定时器实验 (11)实验六8155输入输出实验 (13)实验七矩阵键盘实验 (15)实验八8279显示实验 (17)实验九串并转换实验 (20)实验十A/D转换实验 (22)实验十一步进电机控制实验 (24)实验十二D/A转换实验 (27)实验十三传送带控制系统综合实验 (29)实验十四机械手控制实验 (32)实验一 P1口输入、输出实验一.实验要求1.P1口做输出口,接八只发光二极管,编写程序,使发光二极管循环点亮。
延时时间500ms。
2.P1口做输入口,接八个开关,以74LS273作输出口,编写程序读取开关状态,将状态写入P0口,在发光二极管上显示出来。
二.实验目的1.学习P1口的使用方法。
2.学习延时子程序的编写和使用。
三.实验电路及连接实验1-1电路图如下:图1.1实验1-2中:P1.0-P1.7接八个按钮K1-K8,P0.0-P0.7接八个发光二极管L1-L8。
四.实验说明1.P1口是准双向口,它作为输出口时与一般的双向口使用方法相同,由准双向口结构可知当P1口作为输入口时,必须先对它置高电平使内部MOS管截止,因为内部上拉电阻阻值是20K~40K,故不会对外部输入产生影响,若不先对它置高,且原来是低电平,则MOS管导通,读入的数据是不正确的。
2.延时子程序的延时计算问题对延时子程序DELAY: MOV R0,#00HDELAY1: MOV R1,#0B3HDJNZ R1,$DJNZ R0,DELAY1查指令表可知MOV,DJNZ指令均需要两个机器周期,而一个机器周期时间长度为12/12MHZ(假设晶振频率是12MHZ),所以该段程序执行时间为:((0B3+1)*256+1)*2*12/12000000=100ms五.实验程序流程图实验要求1的程序框图:实验要求2的程序框图:图1.2 图1.3六、调试方法第一步:打开位于d:\单片机实验\实验一\1_1.uv2,进行实验1_1打开位于d:\单片机实验\实验一\1_2.uv2,进行实验1_2第二步:在资源管理器中如打开.src文件,在程序窗口中输入已编好的程序,保存。
单片机实验模数转换接口实验指导书
实验10_A 模拟信号转换接口
一、实验目的
了解模/数转换和数/模转换工作原理,掌握MSP430单片机内ADC10模/数转换模块的控制和应用。
二、实验任务
1.模/数转换器ADC10的编程控制
利用MSP430G2553内部的ADC10模数转换器,采用单通道单次转换方式,对实验板上的一路模拟信号进行A/D转换,模拟信号为一个0~VCC的直流电压信号,信号大小通过拨码可调电阻的阻值改变,参看附录D实验板原理图中模拟信号电路部分。
对每个模拟信号转换4次,求平均值后,将得到的10位转换结果通过3个数码管以16进制形式显示出来,如数字量0x3AE,则数码管上显示3AE。
记录3个模拟信号的转换结果,将数字量换算为模拟量,与示波器测量的结果比较。
思考:
1)如果模拟信号是从P1.4接入,如何编程?请在实验板上连线,并完成。
2)如果模拟信号是一个峰峰值在0~VCC之间、频率为50Hz的正弦波电压信号,如何编程控制对该正弦波1个周期信号采样32点?
注意:实验时ADC10的参考电压VR+ = VCC,需用示波器测量实验板VCC的实际大小,应用测得的实际值计算模拟量大小。
2.(选做) 制作一个量程为0~VCC的数字电压表B
将任务1中A/D转换得到的10位数字量对应的模拟电压值通过数3个数码管显示出来,即显示到小数点后两位,如数字量0x3AE, 参考电压3.6V,对应3.04V,则数码管上显示3.04。
请记录3组测量值,并与示波器测量的结果进行比较。
单片机原理与接口技术实验指导书0
单片机实验指导书实验1 Keil软件的使用 (3)1.1 创建一个Keil C51使用程序 (3)1.2 程序文件的编译、连接 (8)实验2 基本算术运算 (13)实验3 分支和循环程序设计实验 (17)实验4 汇编基本指令和片内RAM操作实验 (19)实验5 C语言基本指令及程序设计 (20)实验6 实验板电路介绍 (27)实验7 单片机的中断系统 (32)实验8 定时器实验 (35)实验9 流水灯控制实验 (39)实验10 数码管显示实验 (43)实验11 键盘实验 (49)实验12 继电器的控制实验 (62)实验13 电子时钟实验 (64)实验14 蜂鸣器控制实验 (67)实验15 I2C总线实验(at24c02) (75)实验16 数字温度传感器实验 (85)实验17 液晶显示实验 (98)综合实验电子钟的设计 (106)附录:系统电路 (112)实验1 Keil软件的使用1.1 创建一个Keil C51使用程序开发单片机的第一步就是用Keil C51软件编写程序,并形成最终的“*.hex”目标文件,然后用编程器将该文件烧写到单片机中,最后将烧写好的单片机插到电路板上,接通电源就可以工作了。
在 Keil C51集成开发环境下使用工程的方法来管理文件的,而不是单一文件的模式。
所有的文件包括源程序(包括 C 程序,汇编程序)、头文件、甚至说明性的技术文档都可以放在工程项目文件里统一管理。
在使用 Keil C51 前,用户应该习惯这种工程的管理方式。
对于使用 Keil C51 的用户来讲,一般可以按照下面的步骤来创建一个自己的 Keil C51 使用程序。
1.新建一个工程项目文件;2.为工程选择目标器件(例如选择SST的SST89C58);3.为工程项目设置软硬件调试环境;4.创建源程序文件并输入程序代码;5.保存创建的源程序项目文件;6.把源程序文件添加到项目中。
下面以创建一个新的工程文件Led_Light.µV2 为例,详细介绍如何建立一个Keil C51的使用程序。
《单片机原理及接口技术》实验指导书
单片机原理及接口技术实验指导书榆林学院能源工程学院目录实验一、编译软件的认识及流水灯的实现实验二、中断实验三、定时器的应用实验一、编译软件的认识及流水灯的实现1.编译软件的认识目前流行的51系列单片机开发软件是德国Keil公司推出的Keil C51软件,它是一个基于32位Windows环境的应用程序,支持C语言和汇编语言编程,其6.0以上的版本将编译和仿真软件统一为μVision(通常称为μV2)。
(1)应用Keil进行软件仿真开发的主要步骤为:编写源程序并保存—建立工程并添加源文件—设置工程—编译/汇编、连接,产生目标文件—程序调试。
Keil使用“工程”(Project)的概念,对工程(而不能对单一的源程序)进行编译/汇编、连接等操作。
工程的建立、设置、编译/汇编及连接产生目标文件的方法非常易于掌握。
首先选择菜单File-New…,在源程序编辑器中输入汇编语言或C语言源程序(或选择File-Open…,直接打开已用其它编辑器编辑好的源程序文档)并保存,注意保存时必须在文件名后加上扩展名.asm(.a51)或.c;然后选择菜单Project-New Project…,建立新工程并保存(保存时无需加扩展名,也可加上扩展名.uv2);工程保存后会立即弹出一个设备选择对话框,选择CPU后点确定返回主界面。
这时工程管理窗口的文件页(Files)会出现“T arget1”,将其前面+号展开,接着选择Source Group1,右击鼠标弹出快捷菜单,选择“Add File to Group …Source Group1‟”,出现一个对话框,要求寻找并加入源文件(在加入一个源文件后,该对话框不会消失,而是等待继续加入其它文件)。
加入文件后点close返回主界面,展开“Source Group1”前面+号,就会看到所加入的文件,双击文件名,即可打开该源程序文件。
紧接着对工程进行设置,选择工程管理窗口的T arget1,再选择Project-Option for T arget…T arget1‟(或点右键弹出快捷菜单再选择该选项),打开工程属性设置对话框,共有8个选项卡,主要设置工作包括在T arget选项卡中设置晶振频率、在Debug选项卡中设置实验仿真板等,如要写片,还必须在Output选项卡中选中“Creat Hex Fi”;其它选项卡内容一般可取默认值。
MCS-51单片机接口技术实验指导书Protues(电气)
MCS-51单片机接口技术实验(Proteus)适用:电气自动化类专业本科学生实验报告基本要求与书写格式如下:学年:学期:专业:姓名:学号:日期:同组成员: (若单人一组,此项略)实验___ _ 实验名称:一、实验目的:二、实验环境三、实验要求(实验内容与步骤):四、实验总结(由同学们做完实验后写)说明:(1)画出硬件连接图和程序流程图。
(2)编写程序,且给出详尽注释。
(3)本次实验收获是什么?有些什么想法?遇到什么问题等?五、建议与意见说明:对于此实验内容或在实验过程中有任何问题或建议,以及对于改善实验效果有什么建议,均可提出。
在书写实验报告的过程中,主要是帮助自己回顾和总结实验。
重点放在第四项,前三项可以十分简要地列写,第五项有则提出,无则不写。
实验一熟悉Proteus,最小系统,显示、读键子程序与简单监控一、实验目的掌握单片机最小系统,显示、读键子程序编写方法与简单监控程序结构;熟悉Proteus的环境。
二、实验环境1.个人微机,Windows操作系统2.Proteus仿真模拟器3.伟福(WAVE)编程、汇编集成环境三、实验题目基本题:在1个7段数码管上显示1个按键的次数,计到10后回到0。
提高题:使用2个键分别控制2个数码管显示2位数字的增一与减一。
四、实验类型:学习、设计型。
五、实验要求:要将显示与读键分别写成显示子程序与读键子程序;附,可能用到的元件名称:CPU:AT89C51或任一种MCS-51家族CPU;晶振:Crystal;电容器:CAP,选22pf,电解电容:CAP-ELEC或GENELECT10U16V 复位电阻:MINRES10K,限流电阻:MINRES330R按键:BUTTON,数码管:7SEG-COM-AN-BLUE/GRN/ANODE附2,参考电路:实验二系统扩展结构,扩展I/O端口,动态显示一、实验目的掌握系统扩展基本结构,扩展外部I/O端口;编写动态显示子程序;熟悉监控程序结构。
单片机实验指导书
目录实验一P1口输入、输出实验 (2)实验二继电器控制实验 (8)实验三音频控制实验 (11)实验四程序调试 (14)实验五5LED静态串行显示实验 (16)实验六6LED动态扫描显示实验 (21)实验七查询式键盘实验 (28)实验八阵列式键盘实验 (36)实验九计数器实验 (47)实验十定时器实验 (49)实验十一外部中断实验 (54)实验一P1口输入、输出实验一、实验目的1、学习P1口的使用方法2、学习延时子程序的编写和使用二、实验说明P1口是准双向口,它作为输出口时与一般的双向口使用方法相同。
由准双向口结构可知当P1口用作输入口时,必须先对口的锁存器写“1”,若不先对它写“1”,读入的数据是不正确的。
三、实验内容及步骤实验(一):用P1口做输出口,接八位逻辑电平显示,程序功能使发光二极管从右到左轮流循环点亮。
1、使用单片机最小应用系统1模块。
关闭该模块电源,用扁平数据线连接单片机P1口与八位逻辑电平显示模块。
2、用串行数据通信线连接计算机与仿真器,把仿真器插到模块的锁紧插座中,请注意仿真器的方向:缺口朝上。
3、打开Keil uVision2仿真软件,首先建立本实验的项目文件,接着添加P1_A.ASM源程序,进行编译,直到编译无误。
4、进行软件设置,选择硬件仿真,选择串行口,设置波特率为38400。
5、打开模块电源和总电源,点击开始调试按钮,点击RUN按钮运行程序,观察发光二极管显示情况。
发光二极管单只从右到左轮流循环点亮。
实验(二):用P1.0、P1.1作输入接两个拨断开关,P1.2、P1.3作输出接两个发光二极管。
程序读取开关状态,并在发光二极管上显示出来。
1、用导线分别连接P1.0、P1.1到两个拨断开关,P1.2、P1.3到两个发光二极管。
2、添加 P1_B.ASM源程序,编译无误后,运行程序,拨动拨断开关,观察发光二极管的亮灭情况。
向上拨为熄灭,向下拨为点亮。
四、流程图及源程序1.流程图2.源程序:(一)实验一ORG 0000HLJMP STARTORG 0030HSTART: MOV A, #0FEHMOV R2,#8OUTPUT: MOV P1,ARL AACALL DELAYDJNZ R2,OUTPUTLJMP STARTDELAY: MOV R6,#0MOV R7,#0DELAYLOOP:;延时程序DJNZ R6,DELAYLOOPDJNZ R7,DELAYLOOPRETEND(二)实验二KEYLEFT BIT P1.0 ;定义KEYRIGHT BIT P1.1LEDLEFT BIT P1.2LEDRIGHT BIT P1.3ORG 0000HLJMP STARTORG 0030HSTART: SETB KEYLEFT ;欲读先置一SETB KEYRIGHTLOOP: MOV C,KEYLEFTMOV LEDLEFT,CMOV C,KEYRIGHTMOV LEDRIGHT,CLJMP LOOPEND五、思考题(1)对于本实验延时子程序Delay: MOV R6,0MOV R7, 0DelayLoop:DJNZ R6,DelayLoopDJNZ R7,DelayLoopRET如使用12MHz晶振,粗略计算此程序的执行时间为多少?六、电路图实验二继电器控制实验一、实验目的1、学习I/O端口的使用方法2、掌握继电器的控制的基本方法3、了解用弱电控制强电的方法二、实验说明现代自动控制设备中,都存在一个电子电路的互相连接问题,一方面要使电子电路的控制信号能控制电气电路的执行元件(电动机,电磁铁,电灯等),另一方面又要为电子线路和电气电路提供良好的电气隔离,以保护电子电路和人身的安全。
单片机原理与接口技术实验指导书
机械电子工程专业《单片机原理与接口技术》课程实验指导书撰写人:审定人:目录第一部分绪论 (1)第二部分基本实验指导 (2)实验一 (2)实验二 (9)实验三 (11)实验四 (14)实验五 (17)实验六 (19)实验七 (21)实验八 (23)第三部分扩展实验实验九 (26)实验十 (30)实验十一 (35)第一部分绪论本指导书是根据《单片机原理与接口技术》课程实验教学大纲编写的,适用于机械电子工程专业。
一、本课程实验的作用与任务本课程的实践性较强,安排适当的上机可以帮助学生理解教学内容,锻炼动手能力和综合设计能力。
二、本课程实验的基础知识熟悉Keil软件的使用,学习过单片机原理与接口技术及有一定的电路常识。
三、本课程实验教学项目及其教学要求序号实验项目名称学时教学目标、要求1单片机程序设计集成开发环境应用22掌握实验环境的应用,熟练掌握软件的各项功能2 定时器/计数器程序设计实验22掌握定时器的几种工作模式,并应用各种模式进行定时3 数码管显示程序设计实验22会对数码管译码,会进行动态显示数据4 独立式键盘程序设计实验22会对独立键盘进行消抖动,会识别按键5 行列矩阵式键盘程序设计实验22会用扫描法识别行矩阵按键6 秒表显示实验22会运用定时、中断知识进行综合设计7 串口通信实验22会编程让单片机和串口进行通信8 步进电机实验22能控制步进电机正传和反转合计1 16第二部分基本实验指导实验一单片机C51程序设计集成开发环境应用一、实验目的1. 了解集成开发环境Keil Vision3文件管理的特点。
2. 学会使用开发环境新建文件、编辑、编译程序。
3. 掌握开发环境程序设计相关设置及其意义。
二、实验要求实现单片机P1连接的LED发光二极管实现流水灯功能。
三、实验原理1. 熟练操作开发环境。
2. 利用C51相关知识,编写简单程序,生成可执行文件。
3. 记录编译错误信息,总结错误原因,写出解决办法。
物联网《单片机与接口技术》实验指导书
目录实验一P3口输出控制继电器实验 (1)实验二P1口输入、输出实验 (4)实验三定时器中断实验(综合) (7)实验四外部中断实验(综合) (13)附录LCA51软件快速入门 (17)实验一 P3口输出控制继电器实验一、实验目的掌握继电器控制的基本方法和经验。
二、实验原理实验电路原理图如图所示:电路的控制端为JD,当JD为高电平时,继电器不工作,当JD为低电平时,继电器工作,常开触点吸合。
实验中,P3.5 接JD,。
R-MID接L1灯,R-CLOSE接GND。
利用P3.5输出高低电平,控制继电器的开合,实现对外部装置的控制。
三、实验仪器:1.AEDKT598实验箱。
2.PC机及编辑调试软件LCA51。
1.实验用连接线。
四、实验内容及步骤实验内容:编程从P3.5输出高低电平,控制继电器的开合。
实验步骤:1.按实验电路进行连线。
2.运行编辑调试软件LCA51。
3.按实验内容编写源程序,实验程序框图参见图示。
2.调试程序并运行。
五、预习要求阅读实验指导书,根据实验内容和程序框图编写源程序。
六、思考题当P3.5输出高电平时,L1灯的状态是亮?还是灭?结合电路原理图和继电器的工作原理加以说明。
七、实验报告要求1.实验名称、班级、实验者、日期。
2.实验目的与实验线路。
3.实验内容。
4.实验程序的框图及编写的源程序。
5.编写、调试源程序的步骤。
6.调试过程中遇到什么问题?怎样解决的?7.回答思考题;说明程序运行结果。
实验二 P1口输入、输出实验一、实验目的1、学习使用爱迪克T598实验系统2、学习P1口的使用方法。
3、学习延时子程序的编写和使用。
二、实验原理实验电路原理图如图所示:P1口做输出口时,P1.0-P1.7接L0-L7。
可以实现从P1口输出数据去点亮相应的发光二极管。
P1口做输入口时,P1.0-P1.7接八个拨动开关K0-K7,通过P1口可读取开关的状态。
实验机上74LS273做输出口时,CS273接译码器的输出8300H,使得74LS273做输出口的地址是8300H,74LS273的输出端PO0-PO7接八只发光二极管L0-L7;由P1口读取的开关状态,可通过74LS273输出,在发光二极管上显示出来。
单片机实验指导书
实验一、输入输出接口编程一、实验目的1、掌握Keil软件的基本使用。
2、掌握单片机汇编语言基本编程。
二、实验内容1、学习用Keil软件进行51单片机的软件开发;学习Keil软件的一般操作,步骤为:项目建立、程序录入、添加文件、编译生成HEX文件、仿真调试。
(见参考程序一)2、霓虹灯控制程序设计用P1口控制8个LED,按P3口输入信号的不同模式选择4种16次循环点亮方式,用软件延时实现1秒的扫描周期。
将生成的HEX文件下载到实验板上验证。
(见参考程序二)三、实验原理1、Keil软件使用练习设(R0)=20H,(R1)=25H,(20H)=80H,(21H)=90H,(22H)=0A0H,(25H)=0A0H,(26H)=6FH,(27H)=76H,执行程序后,问程序完成什么功能,写出运行结果。
(见参考程序一)2、霓虹灯控制程序设计电路原理图如下,所需元件为:AT89C51、SW-SPST、LED-RED图中用单片机的P1口作输出口接8个LED ,8个LED 按共阳极连接,端口逻辑值为0点亮LED ;P3口作输入口接2个SW-SPST 开关,P3口内含上拉电阻,当开关打开时逻辑值为1,开关闭合时逻辑值为0。
本实验中要实现循环输出,最常用的方法是循环计数实现循环次数控制,对计数器值进行查表转换得出输出值,输出到P1口进行显示,灯亮表示输出为“0”,灯灭表示输出为“1”。
本实验中的延时,用软件延时方法产生,延时时间=程序总机器周期数*循环次数*机器周期。
输出表格确定发光模式,实验中定义表格如下:TAB1:DB 01H,02H,04H,08H,10H,20H,40H,80H (SW3,SW4为:00) TAB2:DB 03H,06H,0CH,18H,30H,60H,0CH,81H (SW3,SW4为:01) TAB3:DB 80H,40H,20H,10H,08H,04H,02H,01H (SW3,SW4为:10) TAB4: DB 用户自己定义(SW3,SW4为:11)输入信号使用P3口的2个位,如P3.2和P3.3,可以确定4种模式。
单片机原理与接口技术实验指导书
《单片机原理与接口技术实验》实验指导书适用专业:电信工程通信工程信息工程自动化信息与通信工程学院前言一、课程性质本课程是电子信息工程、通信工程、信息工程和自动化专业必修的专业实验课程。
通过本课程的教学,使学生深刻体会到单片机原理与接口技术的应用,掌握汇编和C51语言的语法和技巧,熟悉电子系统的设计和调试过程,使其具备研究和开发以单片机为核心的电子系统的能力。
二、项目设置本课程总学时为16,开设的具体实验项目如下:●实验1 跑马灯控制(2学时,必修)●实验2 模拟交通灯控制系统设计(2学时,选修)●实验3 串行口通信实验(3学时,必修)●实验4 动态显示与矩阵式键盘实验(3学时,必修)●实验5 I2C的DA/ADC转换实验(3学时,选修)三、本书特点本指导书的特点是引入工程项目机制来管理实验项目,着重培养学生的方案设计、算法分析和现场调试能力,为将来成为卓越工程师打下坚实的基础。
目录目录 (1)第一章开发平台使用入门 (1)1.1 KEIL C51使用入门 (1).1 Keil C51简介 (1)1.1.2 uVision4操作步骤 (1)1.2P ROTEUS使用入门 (10)1.2.1 Proteus简介 (10)1.2.2 Proteus设计与仿真开发过程 (10)1.3PZ-ISP使用介绍 (18)1.3.1 USB驱动程序安装 (18)1.3.2 PZ-ISP烧录软件使用 (19)第二章 HNIST-2型单片机实验装置原理 (24)2.1HNIST-2型单片机实验装置原理图 (24)2.2单片机主机及外围电路 (24)2.2.1 LED与简单按键电路 (25)2.2.2 动态显示与矩阵式键盘电路 (26)2.2.3 AD与DA电路 (28)2.2.4 E2PROM电路 (29)第三章实验项目 (31)实验报告要求 (31)实验报告封面 (31)实验一跑马灯实验 (33)实验二交通灯实验 (36)实验三串行口通信实验 (40)实验四动态显示与矩阵式键盘实验 (42)实验五I2C的DA/ADC转换实验 (45)第一章开发平台使用入门1.1 keil C51使用入门Keil C51简介Keil C51是德国Keil Software公司出品的51系列兼容单片机开发工具。
单片机接口实验指导书
单片机原理与接口实验东北师范大学物理学院目录第一部分原理实验部分实验一熟悉Keil开发环境和DSDZ-M2实验箱的使用实验二并行口输入输出实验实验三七段LED数码管控制实验实验四定时器中断实验实验五脉冲宽度与频率测量实验实验六串行通信实验实验七 RAM扩展与读写控制实验第二部分接口实验部分实验一基于8255的并口扩展实验实验二基于HD7279的键盘显示接口实验实验三基于MAX232的单片机与微机串行通信实验实验四基于SPI总线的EEPROM读写实验实验五基于I2C总线的EEPROM读写实验实验六基于1Wire总线的DS18B20测温实验实验七A/D转换实验实验八D/A转换实验实验九直流电机控制实验实验十步进电机控制实验实验十一自主设计实验第一部分原理实验部分实验一熟悉Keil开发环境和DSDZ-M2实验箱的使用一、实验目的1.熟悉Keil uVision2 软件,学会编辑编译程序。
2.熟悉DSDZ-M2实验箱的使用方法3.熟悉利用硬件仿真器调试程序的方法二、实验箱介绍1.在Keil uVision2软件中实现8个小灯的循环点亮2.要求用软件延时程序控制灯的亮灭时间,并能精确计算延时程序的延时时间三、相关知识1 DSDZ-M2实验箱1.1 实验箱结构图图1 实验箱结构图1.2 实验箱的主要特点(1)采用扩展板方式,可以进行多种微控制器的原理和接口实验,如8051系列(基本配置),凌阳系列,PIC系列,SOPC等。
(2)可以采用仿真器实验,也可以将芯片直接用于实验。
(3)采用面包板连线,可以真正使学生实践接口电路设计、实现的全过程,真正提高学生动手实践能力。
(4)配置完备的外围电路,可以实现各种接口实验,扩展板为实验更新与扩展提供了可能。
1.3 应用该实验箱可做的实验如下:(1)单片机I/O口控制实验,如拨码开关信号输入,LED发光二极管控制,按键输入等实验;(2)存储器扩展实验;(3)8255,8279等芯片扩展实验;(4)定时器输出PWM实验;(5)蜂鸣器驱动实验;(6)串转并的I/O口实验;(7)并转串的I/O口实验;(8)74HC138译码器实验;(9)8×8LED扫描输出实验;(10)继电器控制实验;(11)RS232串口通信实验;(12)RS485差分串行通信实验;(13)I2C总线实验(实时时钟、EEPROM的实验);(14)结合I2C总线实验而扩展的万年历时钟实验;(15)接触式IC卡读写实验;(16)18B20的单总线实验;(17)结合18B20的单总线实验和I2C总线实验的温度计实验;(18)SPI总线存储器,A/D转换,D/A转换等实验;(19)直流电机实验;(20)步进电机实验;(21)红外收发实验;(22)LCD 16*2 字符型液晶显示实验;(23)LCD 128*64 点阵液晶显示实验;(24)8155I/O扩展及RAM、定时器实验;(25)并行的模数转换实验;(26)并行的数模转换实验;(27)串行的模数转换实验;(28)USB1.1接口控制实验;(29)CAN-bus接口控制实验(CAN PARK可供用户选配);(30)USB2.0接口控制实验(USB2.0 PARK可供用户选配);(31)基于以太网接口的TCP/IP实验(RTL8019AS PARK可供用户选配);(32)ISD1420语音模块实验(ISD1420语音模块可供用户选配);(33)非接触式IC卡读卡模块实验(ZLG500A读卡模块及天线可供用户选配);(34)一系列CPLD综合实验(CPLD PARK 可供用户选配);2 Keil开发环境2.1 Keil uVision2软件介绍Windows应用程序uVision2是一个集成开发环境,它把项目管理源代码编辑程序调试等集成到一个功能强大的环境中。
单片机接口技术实验指导书(6个实验).doc
单片机接口技术实验指导书(6个实验)单片机接口技术实验指导书襄樊学院物理与电子信息技术系实验报告内容及格式 1.实验目的 2.实验设备3.实验原理及环境4.实验内容只做文字叙述,程序部分放在程序清单中。
流程图也可不画。
5.程序清单本实验使用的完整程序。
如果使用了本实验或前面实验中完全相同的子程序,可不列写,只做注明即可。
6.实验步骤7.实验总结主要包括对实验结果、调试过程、错误及产生的原因的分析,以及本次实验的重要收获等。
此项为实验成绩评定的重要依据。
实验1 Keil C51的使用(汇编语言)1.实验目的初步掌握Keil C51(汇编语言)和ZY15MCU12BD型综合单片机实验箱的操作和使用,能够输入和运行简单的程序。
2.实验设备ZY15MCU12BD型综合单片机实验箱一台、具有一个RS232串行口并安装Keil C51的计算机一台。
3.实验原理及环境在计算机上已安装Keil C51软件。
这个软件既可以与硬件(ZY15MCU12BD型综合单片机实验箱)连接,在硬件(单片机)上运行程序;也可以不与硬件连接,仅在计算机上以虚拟仿真的方法运行程序。
如果程序有对硬件的驱动,就需要与硬件连接;如果没有硬件动作,仅有软件操作,就可以使用虚拟仿真。
4.实验内容1.掌握软件的开发过程1)建立一个工程项目选择芯片确定选项。
2)加入C 源文件或汇编源文件。
3)用项目管理器生成各种应用文件。
4)检查并修改源文件中的错误。
5)编译连接通过后进行软件模拟仿真。
6)编译连接通过后进行硬件仿真。
7)I A P 编程操作2.按以上步骤实现在P1.0输出一个频率为1Hz的方波。
3.在2的基础上,实现同时在P1.0和P1.1上各输出一个频率同为1Hz但电平状态相反的方波。
5.程序清单1. P1.0输出一个频率为1Hz的方波程序参见实验步骤中程序2. 同时在P1.0和P1.1上各输出一个频率同为1Hz但电平状态相反的方波ORG 0000H START CPL P1.1 AGAIN CPL P1.0 CPL P1.1 MOV R0,10;延时0.5秒LOOP1MOV R1,100 LOOP2MOV R2,250 DJNZ R2, DJNZ R1,LOOP2 DJNZ R0,LOOP1 SJMP AGAIN END6.实验步骤以下假定你在E\TEST 文件夹下学习、运行Keil 1.建立一个工程项目选择芯片确定选项①Project→②New Project→③输入工程名test→④保存工程文件(鼠标点击保存按钮),然后①选CPU厂家(Atmel)→②选CPU型号89C51, ③选好后确定。
单片机与接口技术实验指导书
实验三 数字式温度计实验(18B20、82C79) ........................................................................... 27
ห้องสมุดไป่ตู้
实验四 步进电机实验......................................................................................................... 28
实验十一 8279 键盘显示实验.............................................................................................. 8
实验十二 并行DA实验................................................................................................................. 9
1
第一章 基础硬件实验
实验一 跑马灯实验
一、实验目的 熟悉星研集成环境软件或熟悉 Keil C51 集成环境软件的使用方法。 熟悉 MCS51 汇编指令,能自己编写简单的程序,控制硬件。
二、实验设备 STAR 系列实验仪一套、PC 机一台
三、实验内容 1、熟悉星研集成环境软件或熟悉 Keil C51 集成环境软件的安装和使用方法。 2、照接线图编写程序:使用 P1 口控制 F5 区的 8 个指示灯,循环点亮,瞬间只有一个
实验九 8155 输入、输出、SRAM实验..................................................................................... 6
单片机实验指导书(恒科)2
单片机实验指导书(恒科)2实验五 P1口输入、输出实验一、实验目的:1、掌握P1口作为I/O口时的使用方法。
2、理解读引脚和读锁存器的区别。
二、实验内容:用P1.3脚的状态来控制P1.2的LED亮灭。
三、实验器材:1、超想-3000TB综合实验仪 1 台2、超想3000仿真器 1 台3、连线若干根4、计算机 1 台四、实验原理:由8051组成的单片机系统通常情况下,P0口分时复用作为地址、数据总线,P2口提供A15-A8即高8位地址,P3口用作第二功能,只有P1口通常用作I/0口。
P1口是8位准双向口,它的每一位都可独立地定义为输入或输出,因此既可作为8位的并行I/O口,也可作为8位的输入输出端。
当工作在输入方式时,对应位的锁存器必须先置1,才能正确地读到引脚上的信号,否则,执行读引脚指令时,若对应位的锁存器的值为0,读的结果永远为0。
每个I/0端口都有两种读入,即读锁存器和读引脚,读引脚指令一般都是以I/0端口为源操作数的指令,如MOV C,P1.3,而读锁存器指令一般为“读-修改-写”指令,如ANL P1.3,C指令,请同学们在实验中体会。
图示中,P1.2作为输出口,P1.3作为输入口。
五、接线图案:“总线插孔”框中P1.2孔连“发光二极管组”的L0孔,P1.3孔连“开关量发生器”的K0孔。
六、实验步骤:1、编写程序实现当P1.3为低电平时,发光管亮;P1.3为高电平时,发光管灭。
2、修改程序在执行读P1.3之前,先执行CLR P1.3,观察结果是否正确,分析在第二种情况下程序为什么不能正确执行,理解读引脚和读锁存器区别。
七、程序框图:八、软件清单:(HKCX\51asm\Ap1.ASM)实验六 P3.0口输入、P1口输出实验一、实验目的:掌握P3口、P1口简单使用。
二、实验内容:P3.0口输入一脉冲,控制P1口按16进制加一方式点亮发光二极管。
三、实验器材:1、超想-3000TB综合实验仪 1 台2、超想3000仿真器 1 台3、连线若干根4、计算机 1 台四、实验原理:由8051组成的单片机系统通常情况下,P0口分时复用作为地址、数据总线,P2口提供A8-A15即高8位地址,P3口用作第二功能,只有P1口通常用作I/0口。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
单片机原理与接口实验东北师范大学物理学院目录第一部分原理实验部分实验一熟悉Keil开发环境和DSDZ-M2实验箱的使用实验二并行口输入输出实验实验三七段LED数码管控制实验实验四定时器中断实验实验五脉冲宽度与频率测量实验实验六串行通信实验实验七 RAM扩展与读写控制实验第二部分接口实验部分实验一基于8255的并口扩展实验实验二基于HD7279的键盘显示接口实验实验三基于MAX232的单片机与微机串行通信实验实验四基于SPI总线的EEPROM读写实验实验五基于I2C总线的EEPROM读写实验实验六基于1Wire总线的DS18B20测温实验实验七A/D转换实验实验八D/A转换实验实验九直流电机控制实验实验十步进电机控制实验实验十一自主设计实验第一部分原理实验部分实验一熟悉Keil开发环境和DSDZ-M2实验箱的使用一、实验目的1.熟悉Keil uVision2 软件,学会编辑编译程序。
2.熟悉DSDZ-M2实验箱的使用方法3.熟悉利用硬件仿真器调试程序的方法二、实验箱介绍1.在Keil uVision2软件中实现8个小灯的循环点亮2.要求用软件延时程序控制灯的亮灭时间,并能精确计算延时程序的延时时间三、相关知识1 DSDZ-M2实验箱1.1 实验箱结构图图1 实验箱结构图1.2 实验箱的主要特点(1)采用扩展板方式,可以进行多种微控制器的原理和接口实验,如8051系列(基本配置),凌阳系列,PIC系列,SOPC等。
(2)可以采用仿真器实验,也可以将芯片直接用于实验。
(3)采用面包板连线,可以真正使学生实践接口电路设计、实现的全过程,真正提高学生动手实践能力。
(4)配置完备的外围电路,可以实现各种接口实验,扩展板为实验更新与扩展提供了可能。
1.3 应用该实验箱可做的实验如下:(1)单片机I/O口控制实验,如拨码开关信号输入,LED发光二极管控制,按键输入等实验;(2)存储器扩展实验;(3)8255,8279等芯片扩展实验;(4)定时器输出PWM实验;(5)蜂鸣器驱动实验;(6)串转并的I/O口实验;(7)并转串的I/O口实验;(8)74HC138译码器实验;(9)8×8LED扫描输出实验;(10)继电器控制实验;(11)RS232串口通信实验;(12)RS485差分串行通信实验;(13)I2C总线实验(实时时钟、EEPROM的实验);(14)结合I2C总线实验而扩展的万年历时钟实验;(15)接触式IC卡读写实验;(16)18B20的单总线实验;(17)结合18B20的单总线实验和I2C总线实验的温度计实验;(18)SPI总线存储器,A/D转换,D/A转换等实验;(19)直流电机实验;(20)步进电机实验;(21)红外收发实验;(22)LCD 16*2 字符型液晶显示实验;(23)LCD 128*64 点阵液晶显示实验;(24)8155I/O扩展及RAM、定时器实验;(25)并行的模数转换实验;(26)并行的数模转换实验;(27)串行的模数转换实验;(28)USB1.1接口控制实验;(29)CAN-bus接口控制实验(CAN PARK可供用户选配);(30)USB2.0接口控制实验(USB2.0 PARK可供用户选配);(31)基于以太网接口的TCP/IP实验(RTL8019AS PARK可供用户选配);(32)ISD1420语音模块实验(ISD1420语音模块可供用户选配);(33)非接触式IC卡读卡模块实验(ZLG500A读卡模块及天线可供用户选配);(34)一系列CPLD综合实验(CPLD PARK 可供用户选配);2 Keil开发环境2.1 Keil uVision2软件介绍Windows应用程序uVision2是一个集成开发环境,它把项目管理源代码编辑程序调试等集成到一个功能强大的环境中。
C51 美国标准优化C交叉编译器从你的C源代码产生可重定位的目标文件A51 宏汇编器从你的8051汇编源代码产生可重定位的目标文件BL51 连接/重定位器组合你的由C51和A51产生的可重定位的目标文件生成绝对目标文件LIB51 库管理器组合你的目标文件生成可以被连接器使用的库文件OH51 目标文件到HEX格式的转换器从绝对目标文件创建Intel HEX 格式的文件RTX-51 实时操作系统简化了复杂和对时间要求敏感的软件项目图2 uVision/Ishell集成开发环境图3 Keil Uvision2 IDE 的组成2.2 Keil uVision2软件的使用步骤2.2.1.建工程。
打开Keil uVision2软件,选择Project/New project…,将弹出一个Creat New Project的对话框,选择要存放的文件夹,输入文件名(不需要加扩展名)。
如下图所示。
图4 建立工程选择SST89E564RD芯片,点击确定。
图5 选择芯片2.2.2在工程下新建文件。
点击File/New 或点击图标, 出现Text1界面,将程序写入Text1,然后点击File/Save或点击图标,将弹出如下界面:图6保存源文件输入文件名,如果是汇编语言文件名后要加上.asm的扩展名,如果是用c语言编写则扩展名是.c。
点击保存。
会发现所有关键词变成蓝色,可以用这种方式初步检查程序有无错误。
2.2.3.将文件加入工程中。
右键点击左侧的Source Group 1,选择Add Files to Group ‘Source Group 1’.图7加入文件选择要添加的源文件,点击Add。
完成设置。
2.2.4.设置目标选项。
点击工具条中的图标。
在“Target”标签下修改“Xtal (Mhz) ”为单片机的晶体振荡频率,选中Use On-chip ROM。
图8 参数设置窗口在“Output”标签下,选中“Create HEX file”(生成hex文件用编程器写到目标板的SST89E564RD单片机中)。
图9 设置是否生成.hex目标文件在“debug”标签中选中“Use keil monitor-51 driver”,此时可以进行串口连接目标电路板进行仿真调试,如果选中“Use Simulator”,则仅仅只进行软件仿真。
图10 调试相关参数设置用鼠标左键单击“Setting”按键,根据你用的串口用鼠标选择Port,左键单击“ok”按键,选中“Load Application at Start”和“Go till main()”。
图11 串口参数设置其余可以按默认值不需修改,点击“确定”完成设置。
2.2.5 编译。
点击Project/Build target或者,即完成了编译。
在Keil界面的最下面的界面中会显示Error和Warning.如果源程序中有语法错误,会有错误报告出现,双击该行,可以定位到出错的位置,对源程序反复修改之后,最终会得到如图6所示的结果,提示获得了名为**.hex的文件,该文件即可被编译器读入并写到芯片中,同时还产生了一些其它相关的文件,可被用于Keil的仿真与调试,这时可以进入下一步调试的工作。
2.2.6 调试。
在对工程成功地进行汇编、连接之后,使用菜单Debug/Start/Stop Debug Session即可进入调试状态,仿真CPU用来模拟执行程序,可以在没有硬件和仿真机的情况下进行程序的调试。
进入调试状态后,工具栏会多出一个用于运行和调试的工具条。
如图7所示,Debug菜单上的大部分命令可以在此找到对应的快捷按钮,从左到右依次是复位、运行、暂停、单步、过程单步、执行完当前子程序、运行到当前行、下一步状态、打开跟踪、观察跟踪、反汇编窗口、观察窗口、代码作用范围分析、1#串行窗口、内存窗口、性能分析、工具按钮等命令。
点击工具条中选项即可以进行调试程序。
图13调试工具条学习程序调试,必须明确两个重要的概念,即单步执行与全速执行。
全速执行是指一行程序执行完以后紧接着执行下一行程序,中间不停止,这样程序执行的速度很快,并可以看到该段程序执行的总体效果,即最终结果正确还是错误,但如果程序有错,则难以确认出现在哪些程序行。
单步执行时每次执行一行程序,执行完该行程序以后即停止,等待命令执行下一行程序,此时可以观察该行程序执行完以后得到的结果,是否与我们写该行程序所想要得到的结果相同,借此可以找到程序中问题所在。
程序调试中,这两种运行方式都要用到。
使用菜单STEP或相应的命令按钮或使用快捷键F11可以单步执行程序,使用菜单STEP OVER或功能键F10可以以过程单步形式执行命令,所谓过程单步,是指将图14 调试窗口可以看到源程序窗口的左边出现了一个黄色调试箭头,指向源程序的第一行,如图11所示。
每按一次F11,即执行该箭头所指程序行,然后箭头指向下一行,当箭头指向LCALL DELAY行时,再次按下F11,会发现,箭头指向了延时子程序DELAY的第一行。
不断按F11键,即可逐步执行延时子程序。
通过单步执行程序,可以找出一些问题的所在,但是仅依靠单步执行来查错有时是困难的,或虽能查出错误但效率很低,为此必须辅之以其他的方法,如本例中的延时程序是通过将D2:DJNZ R6,D2这一行程序执行六万多次来达到延时的目的,如果用按F11六万多次的方法来执行完该程序行,显然不合适,为此,可以采取以下一些方法,第一,用鼠标在子程序的最后一行(ret)点一下,把光标定位于该行,然后用菜单Debug/Run to Cursor line(执行到光标所在行),即可全速执行完箭头与光标之间的程序行。
第二,在进入该子程序后,使用菜单Debug/Step Out of Current Function(单步执行到该函数外),使用该命令后,即全速执行完调试光标所在的子程序或子函数并指向主程序中的下一行程序(这里是JMP LOOP行)。
第三种方法,在开始调试时,按F10而非F11,程序也将单步执行,不同的是,执行到lcall delay行时,按下F10键,调试光标不进入子程序的内部,而是全速执行完该子程序,然后直接指向下一行“JMP LOOP”。
灵活应用这几种方法,可以大大提高查错的效率。
停止仿真调试。
用鼠标左键单击主菜单Debug/Start/Stop Debug Session推出调试模式。
注意:每次重新Debug 前要按一下复位键使单片机复位。
2.2.7 参看运行结果。
在调试程序时往往要查看程序的运行结果,包括程序运行的中间值,这对判断程序的正确性至关重要。
Keil提供了方便的查看工具,以便查看诸如变量、I/O口、存储器等各种运行结果。
用鼠标左键点击主菜单实验二并行口输入输出实验——循环彩灯控制一、实验目的1.掌握并行口的输入输出编程方法。
2.掌握分支和循环程序的设计方法。