实验一清零程序

合集下载

微机原理实验报告清零程序

微机原理实验报告清零程序

竭诚为您提供优质文档/双击可除微机原理实验报告清零程序篇一:微机原理实验报告微机原理与应用课程实验报告实验分工:报告人同组人实验时间:20XX.12.10课程设计一、题目要求(1)在数据段首址为0100h开始的内存区1按从大到小的顺序顺次存入二进制数15~0共16个字节的数据;(2)将上述源区内容传送到目的内存区2(首址为1100h)中;(3)检验上述传送过程是否正确,如有错误,在紧跟内存区2后的第一个字节开始写入AscII码“eRRoR”,否则写入“oK”。

(4)用冒泡法将上述内存区2的数据,按从小到大的次序重新排列,排列后存放在内存区3(开始地址为2100h)。

(5)将上述内存区2和内存区3的第100个数据分别乘以2,并转为bcD码,保存在各自存储区的末尾。

再将上述两个bcD码相乘,其结果保存在内存区1的末尾处。

二、实验程序框图三、程序代码codesegmentassumecs:codeDATA1db16dup(?)DATA2dbeRRoRDATA3dboK;在数据段首址为0100h开始的内存区1按从大到小的顺序顺次存入二进制数15~0共16个字节的数据start:movax,0100h;规定目标程序存放单元的偏移量movds,ax;数据段地址moves,axmovsi,offsetDATA1;偏移地址movcx,0010h;循环次数movbx,0100hmoval,ofhs1:movcs:[si],almov[bx],cs:[si]incsiincbxdecalloops1nop;将内存区1数据搬移到内存区2中movcx,16movsi,0100hmovbx,1100hs2:moval,[si]mov[bx],alincbxloops2nop;对比内存区1的数据与内存区2的数据是否相同mov cx,16movsi,0100hmovbx,1100hcomp:movax,[si]movdx,[bx]cmpax,dxjneerroincsiincbxloopcomp;数据如果都相同,说明上述传输过程正确movsi,offsetDATA3movdi,1110hmovbl,0movcx,2enteroK:movbl,cs:[si]mov[di],blincsiincdiloopenteroKnopjmps3;如果有一个数据不相同,说明上述传输过程不正确err:movsi,offsetDATA2movdi,1110hmovbl,0movcx,5entereRR:movbl,cs:[si]mov[di],blincdiloopentereRR;将内存区2数据搬移到内存区3中s3:movsi,1100hmovcx,0010hmovbx,2100hmoval,0movcx,16fil:moval,[si]mov[bx],alincsiincbxloopfilnop;用冒泡法将内存区3的数据按从小到大重新排列s4: movbl,0movcx,16movsi,2110hdecsideccxagain:moval,[si]cmpal,[si-1]jaenextxchgal,[si-1]mov[si],almovbl,1next:decsiloopagaincmpbl,0jnestart1nopmovsi,1109hmoval,[si]movcl,2mulcl;结果在al中movdx,0movbx,10divbxshlal,4addal,dl;把二进制数转换成bcD码mov[1112h],almovsi,2109hmoval,[si]movcl,2mulcl;结果在al中movdx,0movbx,10divbxshlal,4addal,dl;把二进制数转换成bcD码mov[2110h],al;两个bcD码相乘,其结果保存在内存区1的末尾处。

清零程序

清零程序

实验一清零程序一、实验目的掌握汇编语言设计和调试方法,熟悉键盘操作。

二、实验时间地点时间:2014年4月15日地点:8B204三、实验内容把2000H~20FFH单元的内容清零。

四、实验程序框图五、实验程序(1)基本程序ORG 0000HLJMP SE01ORG 0640HSE01: MOV R0,#00HMOV DPTR,#2000HLOO1: CLR AMOVX @DPTR,AINC DPTRINC R0CJNE R0,#00H,LOO1LOOP:SJMP LOOPEND(2)带注释的基本程序(为方便程序阅读仅对注释部分做了详细的注释而已)ORG 0000HLJMP SE01ORG 0640HSE01: MOV R0,#00H ;(00H)送R0,R0 为计数器MOV DPTR,#2000H ;(2000H)送DPTRLOO1: CLR A ;累加器A 清零MOVX @DPTR,A ;存储空间内容清零INC DPTR ;DPTR 加1INC R0 ;R0 加1CJNE R0,#00H,LOO1 ;若R0 不等于00,则跳转至LOO1 继续循环LOOP: SJMP LOOPEND六、实验步骤使用DICE-51单片机仿真系统,用连续或单步方式运行实验程序,检查执行程序前后2000~20FF单元中的内容变化。

首先打开DICE-51单片机仿真系统软件,新建一个文件名尾缀为.asm的文件,将程序输入到文件当中,打开程序存储器和数据存储器,任意改变存储单元中的内容,经编译,连接,装载后,先采用单步方式运行实验程序,由数据存储器中可以看到2000~20FF单元的内容逐渐清零,程序运行结束2000~20FF单元的内容都为0;再采用连续方式运行实验程序,实验结果为2000~20FF单元的内容都为0。

七、思考假使把1000H~10FFH 中的内容改成FF,如何修改程序,请分别用连续和单步方式运行程序来完成验证。

单片机原理与应用实验教案

单片机原理与应用实验教案

《单片机原理及应用》实验教学大纲课程编号:B04611016课程类别:专业课实验学时:16学时学分:2.5适用专业:计算机科学与技术一、实验教学目的和任务本课程是计算机及应用专业一门重要的专业课。

其教学内容直接面向生产。

同时,微机向小型化、超小型化方面发展愈来愈迅猛。

单片机应用已渗透社会各个领域,特别在通信技术中的应用,大大提高了通信技术水平。

学生应具备这方面的知识与技能,为今后参加工作,打下坚实的基础。

二、实验教学基本要求本课程是一门很注重实践的课程。

以研究MCS-51系列单片机入手,掌握其硬件结构、指令系统和程序设计,以及常用接口技术和典型应用实例。

三、实验教学内容实验项目一:清零程序1、实验目的及要求要求学生掌握软件的结构和键盘的调试。

2、实验内容及学时分配(2学时)(1)了解MCS-51软件的构造(2)掌握清零程序的输入方法(3)了解起始伪指令的输入方法实验项目二:拼字和拆字程序1、实验目的及要求要求学生掌握存储器分配和汇编语言的简单应用。

2、实验内容及学时分配(2学时)(1)进一步掌握MCS-51软件的基本使用方法(2)掌握指令的寻址方式(3)掌握数据传送指令和地址内容的分配实验项目三:数据区传送子程序1、实验目的及要求要求学生掌握RAM数据存储器实际操作。

2、实验内容及学时分配(2学时)(1)掌握MCS-51逻辑运算指令和位操作指令(2)进一步掌握数据传送子程序的简单方法(3)掌握查表程序的编写实验项目四:数据排序实验1、实验目的及要求要求学生掌握汇编语言的应用和实际操作。

2、实验内容及学时分配(2学时)(1)掌握MCS51逻辑运算指令和位操作指令(2)进一步掌握简单顺序程序的编写和调试方法(3)掌握查表程序的编写实验项目五:查找相同个数1、实验目的及要求熟悉汇编语言程序,使用环移指令和加1指令。

2、实验内容及学时分配(2学时)(1)掌握赋值指令(2)掌握带进位的环移指令和加1程序的编写实验项目六:双字节无符号数的乘法实验1、实验目的及要求要求学生掌握MCS-51汇编语言设计和调试方法。

清零程序实验报告

清零程序实验报告

清零程序实验报告清零程序实验报告一、引言在计算机科学领域中,清零程序是一种常见且重要的操作。

它的作用是将某个变量或内存空间的值归零,以便重新使用或准备下一次计算。

清零程序的设计和实现对于提高计算机性能和保证数据的准确性具有重要意义。

本实验旨在探索清零程序的设计思路和实现方法,并通过实际编写代码来验证其功能和效果。

二、实验目的1. 理解清零程序的概念和作用;2. 掌握清零程序的设计原则和实现技巧;3. 通过实验验证清零程序的正确性和效率。

三、实验方法本实验采用C语言作为编程语言,使用Visual Studio Code作为开发工具。

实验步骤如下:1. 定义一个变量或内存空间,并初始化其值;2. 设计清零程序的算法和逻辑;3. 编写代码实现清零程序;4. 运行程序并验证清零结果;5. 分析程序的效率和优化空间。

四、实验过程1. 定义变量并初始化在本实验中,我们选择一个整型变量x作为示例。

首先,我们给x赋一个初始值,例如x=100。

2. 设计清零程序的算法和逻辑清零程序的算法和逻辑可以有多种实现方式。

在本实验中,我们选择一种简单而高效的方法来实现清零功能。

具体算法如下:将变量x的值赋为0。

3. 编写代码实现清零程序根据上述算法,我们可以使用C语言编写清零程序的代码。

代码示例如下:```c#include <stdio.h>int main() {int x = 100; // 初始化变量x的值为100x = 0; // 清零操作printf("清零后的值为:%d\n", x);return 0;}```4. 运行程序并验证清零结果将上述代码保存为一个C文件,使用编译器进行编译和运行。

在运行程序后,我们可以看到输出结果为"清零后的值为:0",证明清零程序的功能正常。

五、实验结果与分析通过本实验,我们成功设计并实现了一个简单的清零程序。

在实验中,我们选择了一种简单而高效的清零算法,即直接将变量的值赋为0。

清零程序实验

清零程序实验

实验一:清零程序实验:一、实验目的:1、掌握单片机的内部存储器在逻辑上的结构。

2、掌握如何对单片机内部,外部存储器RAM中所存的内容进行清零及编程方法。

二、实验内容:将外部存储器RAM 2000H~20FFH中的内容清零。

三、实验程序框图:四、实验步骤:⑴.运行仿真调试环境,打开文件编辑窗口:⑵.进行编辑源文件。

⑶.保存你所编辑的源文件,并进行编译。

即点击图标,如果你是新文件,屏幕会提示以下信息点击“YES”屏幕显示以下信息这时,你应该输入你相要保存文件的文件名。

注意:文件名的长度不能超过8个字符;同时也不能用中文名字存文件名,否则编译器会照不到连接文件而发生编译错误(这是只要因为该编译系统调用国外编译软件进行编译的的原因)。

如果文件编写正确则提示如下信息:表明编译没有警告和错误;连接没有警告和错误。

上述步骤完成后,屏幕会自动弹出调试窗口。

其中:* 表示当前PC指针所在的位置。

上图中图标,表示断点所在的位置,上图中设置了两个断点;即当程序运行到断点处就停下来,并将当前运行的结果,在寄存器或数据窗口中显示出来。

⑷.查看寄存器窗口信息,可以按下图打开寄存器窗口。

点击寄存器栏便可观察寄存器窗口的内容,按照同样的方法可打开其他窗口的信息,如数据窗口等。

按图标会对所打开的窗口进行重新排列。

垂直、水平、或卡片式排列。

⑸.调试与运行,用连续或单步不同方式运行程序,在运行图标时,即进入全速运行状态,遇到断点时便停下来,并刷新当前所运行的结果,在所对应的窗口上显示出来。

运行图标,便进入单步运行状态,该图标表示在遇到CALL指令时会进入到CALL调用的子程序内部;该图标表示在遇到CALL指令时,把所调用的CALL子程序作为一条执行语句执行;学会上述的操作方法后便可进入你所相要做的工作了。

这时你也会查看或检查2000~20FFH中执行程序前后的内容变化。

五、思考:假使把2000H~20FFH中的内容改成FF,如何修改程序。

微型控制技术实验报告

微型控制技术实验报告

实验报告——微控制器技术班级:自动化0703姓名:杨法松学号:090107006目录:一:实验目的及要求 (2)二:实验基本内容(TD-51单片机实验系统实现) (2)三:实验报告基本内容要求 (4)四:实验系统简介 (5)五:实验一到实验三 (7)实验四 (11)实验五 (13)实验六 (15)实验七 (16)实验八 (18)一、实验目的及要求:1、学习Keil C51集成开发工具的操作及调试程序的方法,包括:仿真调试与脱机运行间的切换方法;2、熟悉TD-51单片机系统板及实验系统的结构及使用;3、进行MCS51单片机指令系统软件编程设计与硬件接口功能设计;4、学习并掌握Keil C51与Proteus仿真软件联机进行单片机接口电路的设计与编程调试;5、完成指定MCS51单片机综合设计题二、实验基本内容(TD-51单片机实验系统实现)实验一清零程序与拆字程序设计根据实验指导书之“第二章单片机原理实验”(P17~P23页)内容,熟悉实验环境及方法,完成思考题1、2(P23)基础实验项目。

实验二拼字程序与数据传送程序设计汇编语言完成实验指导书P24思考题3、4题的基础实验项目。

实验三排序程序与散转程序设计汇编语言完成实验指导书P24思考题5、6题的基础实验项目。

实验四静态存储器扩展实验基本部分:阅读、验证C语言程序功能。

使用汇编语言编程,完成实验指导书之“4.1 静态存储器扩展实验”基本实验项目(P57)。

提高部分:阅读、验证C语言程序功能。

使用汇编语言编程,完成实验指导书之“4.2 FLASH存储器扩展实验”实验项目(P60)。

实验五数字量输入输出实验基本部分:阅读、验证C语言程序功能。

使用汇编语言编程,完成实验指导书之“3.1 数字量输入输出实验”基本实验项目(P36),。

提高部分:(任选一题)题目一:LED交通灯控制(使用8255接口芯片)要求:使用汇编语言编程,功能为:通过开关实现LED灯工作方式即时控制,完成LED交通灯的开关控制显示功能和LED交通灯自动循环显示功能。

微机原理与接口技术-清零程序实验报告

微机原理与接口技术-清零程序实验报告

《微机原理与接口技术》课程实验报告
一、实验目的和要求
实验目的:掌握汇编语言设计和调试方式;
实验要求:通过本实验,掌握8051汇编程序设计以及仿真实验的流程及方法。

二、实验环境
DVCC单片机仿真实验系统独立工作以及连PC机。

三、实验内容及实施
【实验内容】把50H~5FH单元的内容清零。

【源程序】
【实验步骤】
DVCC仿真实验系统连PC机时
(1)连接好相应的实验线路;
(2)在闪动“P.”状态,按PCDBG键;
(3)在PC机处于在Win95/98软件平台下,单击DVCC图标;
(4)在系统设置选项中设定仿真模式应设定为内程序、外数据;
(5)根据屏幕提示进入51/96动态调试菜单;
(6)连接DVCC实验系统;
(7)装载目标文件;
(8)设置PC起始地址;
(9)从起始地址开始连续运行程序;
(10)调出外部数据窗口,检查50H~5FH单元的内容是否全部被清零。

四、实验结果
五、实验讨论
通过8051汇编程序的设计、编译及运行,调出外部数据窗口,我们可以观察到从50H~5FH单元的内容已经被全部清零。

刚开始我们并没有做到全部单元清零,后来通过不断地调试错误和运行,实现了实验目的。

通过本次实验,掌握了汇编语言的设计,实现了清零操作,并且熟悉了仿真实验系统的键盘操作以及基本仿真软件的使用。

哈工大单片机实验报告

哈工大单片机实验报告

软件实验在软件实验部分,通过实验程序的调试,使学生熟悉MCS-51的指令系统,了解程序设计过程,掌握汇编语言设计方法以及如何使用实验系统提供的调试手段来排除程序错误。

实验一清零程序一、实验目的掌握汇编语言设计和调试方法,熟悉键盘操作。

二、实验内容把2000~20FFh的内容清零。

三、程序框图四、实验过程(1)实验中定义R0为循环次数,利用定义了初值的数据指针DPTR不断加1指向需要被清零的外部数据存储器单元。

(2)再利用MOVX语句,将外部存储器指定内容清零。

(3)用CJNE比较语句判断循环是否结束。

五、实验结果及分析问题回答:清零前2000H~20FFH中为内存里的随机数,清零后全变为0。

六、实验源程序;清零程序ORG 0000HMOV DPTR,#2000HMOV R0,#0FFHORG 0660HMAIN: MOV A,#00HMOVX @DPTR,AINC DPTRDJNZ R0,MAINEND实验二拆字程序一、实验目的掌握汇编语言设计和调试方法。

二、实验内容把2000h的内容拆开,高位送2001h低位,低位送2002h低位,2001h、2002h高位清零,一般本程序用于把数据送显示缓冲区时用。

三、程序框图四、实验过程(1)定义数据指针DPTR为2000H,将其中内容送入累加器A中,利用高低四位交换语句SWAP可将高四位移至低四位,再用语句ANL与0FH进行与操作取出高四位送入2001H低位(2)再次让数据指针DPTR为2000H,将其中内容送入累加器A中,直接与0FH相与取出低四位送入2002H低位。

五、实验结果及分析问题回答:将ANL A,#0FH改为ORL A,#0F0H可以实现将高位置为1。

六、实验源程序;拆字程序ORG 0000HMAIN: MOV DPL, #00HMOV DPH, #20HMOVX A, @DPTRSWAP AANL A, #0FHINC DPTR-3-MOVX @DPTR, AMOV DPL,#00HMOVX A, @DPTRANL A, #0FHINC DPTRINC DPTRMOVX @DPTR, AEND实验三拼字程序一、实验目的进一步掌握汇编语言设计和调试方法。

单片机实验一 清零程序 实验报告

单片机实验一  清零程序  实验报告
执行程序前20-2F里面的数是任意数,执行程序后20-2F里面的数全部清零。能够实现实验内容的要求
实验报告内容:一.实验目的二.实验仪器(仪器名称、型号、参数、编号)三.实验原理(原理文字叙述和公式、原理图)四.实验步骤五、实验数据和数据处理六.实验结果七.分析讨论(实验结果的误差来源和减小误差的方法、实验现象的分析、问题的讨论等)八.思考题
00h
20h
20h
mov a,#00h
00h
00h
00h
mov b,#16
00h
00h
16h
lop1: mov @r0,a
任意值
00h
00h
inc r0
20h
21h
21h
Djnz b,lop1
16h
15h
15h
Sjmp $
00h
00h
00h
写出20-2F中执行程序前后的内容变化,说明是否实现实验内容要求。
程序框图
开始
赋初始值:R0=20h a=00h b=16
把20h的数清零:R0=a
R0+1
b-1=0?
结束
单步运行程序,填写下表内容。
程序语句
运行前寄存器值
理论分析值
实际运行结果值
Org 00h
00h
00h
00h
Ljmቤተ መጻሕፍቲ ባይዱ star
00h
00h
00h
Org 30h
00h
30h
30h
Star: mov r0,#20h
佛山科学技术学院实验报告课程名称实验项目清零程序专业班级姓名学学号号指导教师成成绩绩日期年月日日实验目的掌握汇编语言设计和调试方法熟悉键盘操作

实验一清零程序

实验一清零程序

实验一清零程序(总8页)--本页仅作为文档封面,使用时请直接删除即可----内页可以根据需求调整合适字体及大小--实验一清零程序一、实验目的: 掌握汇编语言设计和调试方法,熟悉键盘操作。

二、实验内容:把2000H~20FFH 的内容清零。

三、实验程序框图四、实验步骤: 用连续或单步方式运行程序,检查2000~20FF 中执行程序前后的内容变化。

五、思考:假使把1000H~10FFH 中的内容改成FF,如何修改程序,请分别用连续和单步方式运行程序来完成校验证六、程序清单(1)基本程序(文件名)ORG 0000HLJMP SE01ORG 0640HSE01: MOV R0,#00H ;(00H)送R0,R0 为计数器MOV DPTR,#2000H ;(2000H)送DPTRLOO1: CLR A ;累加器A 清零MOVX @DPTR,A ;存储空间内容清零INC DPTR ;DPTR 加1INC R0 ;R0 加1CJNE R0,#FFH,LOO1 ;若R0 不等于00,则跳转至LOO1 继续循环LOOP: SJMP LOOPEND七、思考:假使把1000H~10FFH 中的内容改成FF程序如下:ORG 0000HLJMP SE01ORG 0640HSE01: MOV R0,#00H ;(00H)送R0,R0 为计数器MOV DPTR,#1000H ;(2000H)送DPTRLOO1: MOV A,#FF;累加器A 置FFMOVX @DPTR,A ;存储空间内容置FFINC DPTR ;DPTR 加1INC R0 ;R0 加1CJNE R0,#FFH,LOO1 ;若R0 不等于00,则跳转至LOO1 继续循环LOOP: SJMP LOOPEND现象:运行第一条程序可以发现1000H~10FFH 中的内容变成FF,运行第二条程序1000H~10FFH 中的内容改成00.而其它单元的内容不变。

心得:该实验的内容比较简单。

清零程序 实验报告

清零程序 实验报告

清零程序实验报告清零程序实验报告摘要:本实验旨在探究清零程序的实现原理和效果。

通过设计和编写清零程序,我们可以将计算机系统中的数据归零,使其重新回到初始状态,以提高系统的稳定性和可靠性。

本实验通过详细介绍清零程序的实现过程,分析其优点和不足,并对其在实际应用中的潜在问题进行探讨。

一、引言清零程序是计算机系统中一种重要的功能模块,它可以将存储器中的数据全部清零,以确保系统在重新启动或重新运行时处于稳定的状态。

清零程序的设计和实现对于系统的正常运行具有重要意义。

本实验将通过实际编写清零程序,探究其实现原理和应用效果。

二、清零程序的实现原理清零程序的实现原理主要包括以下几个步骤:1. 确定清零的目标范围:根据实际需求,确定需要清零的存储器地址范围。

2. 遍历目标范围:通过循环遍历目标范围内的存储器地址,将每个地址的数据置零。

3. 数据清零:将每个存储器地址的数据置零,可以通过赋值操作或使用清零函数实现。

4. 完成清零:遍历完目标范围内的所有存储器地址后,清零程序执行完毕。

三、清零程序的设计与实现本实验中,我们选择使用C语言编写清零程序。

以下是程序的设计与实现过程:1. 定义目标范围:根据实际需求,我们选择将存储器地址从0x0000到0xFFFF的范围作为目标范围。

2. 使用循环遍历目标范围:我们使用for循环结构,从目标范围的起始地址开始,逐个遍历每个地址。

3. 数据清零:通过将每个地址的数据置零,实现数据清零的操作。

我们可以使用赋值操作或调用C语言提供的清零函数memset()来实现。

4. 完成清零:当程序遍历完目标范围内的所有存储器地址后,清零程序执行完毕。

四、清零程序的优点和不足清零程序的设计和实现具有以下优点:1. 简单高效:清零程序的设计思路简单明了,实现起来相对容易。

通过循环遍历和数据清零操作,可以快速将存储器中的数据归零。

2. 提高系统稳定性:清零程序的运行可以将系统状态重置为初始状态,消除潜在的数据残留问题,从而提高系统的稳定性和可靠性。

实验1 keil 和清零

实验1 keil 和清零

实验1:keil开发环境介绍单片机内部存储器调用操作一、实验目的1.进行keil开发环境的熟悉和调试;2.能够初步进行一个简单程序的调试二、实验设备及器材启东单片机综合实验箱,计算机等三、实验内容熟悉keil的开发环境,并进行一个简单的程序调试,在keil的串行调试窗口显示“Hello World!”四、实验步骤使用C语言肯定要使用到C编译器,以便把写好的C程序编译为机器码,这样单片机才能执行编写好的程序。

KEIL uVISION2是众多单片机应用开发软件中优秀的软件之一,它支持众多不同公司的MCS51架构的芯片,它集编辑,编译,仿真等于一体,同时还支持,PLM,汇编和C语言的程序设计,它的界面和常用的微软VC++的界面相似,界面友好,易学易用,在调试程序,软件仿真方面也有很强大的功能。

因此很多开发51应用的工程师或普通的单片机爱好者,都对它十分喜欢。

以上简单介绍了KEIL51软件,要使用KEIL51软件,必需先要安装它。

KEIL51是一个商业的软件,对于我们这些普通爱好者可以到KEIL中国代理周立功公司的网站上下载一份能编译2K的DEMO版软件,基本可以满足一般的个人学习和小型应用的开发。

(安装的方法和普通软件相当这里就不做介绍了)图1-1启动时的屏幕接着按下面的步骤建立您的第一个项目:(1)点击Project菜单,选择弹出的下拉式菜单中的New Project,如图1-2。

接着弹出一个标准Windows文件对话窗口,如图1-3,用法技巧也不是这里要说的,以后的章节中出现类似情况将不再说明。

在"文件名"中输入您的第一个C程序项目名称,这里我们用"test",只要符合Windows文件规则的文件名都行。

"保存"后的文件扩展名为uv2,这是KEIL uVision2项目文件扩展名,以后我们可以直接点击此文件以打开先前做的项目。

图1-2New Project菜单图1-3文件窗口(2)选择所要的单片机,这里我们选择常用的Ateml公司的AT89C51。

实验一清零实验

实验一清零实验

实验一清零实验一、实验目的掌握汇编语言设计和调试方法,熟悉键盘操作。

二、实验内容把7000H~70FFH的内容清零。

三、实验程序框图四、实验步骤1、当DVCC单片机仿真实验系统独立工作时(1)将固化区EPROM中实验程序目标码传送到仿真RAM区,操作如下:输入0后按F1键,再输入0FFF后按F2键,再输入0后按EPMOV稍等,系统返回初始状态,显示“P.”。

(2)根据表2—1所示,通过键盘输入实验程序的起始地址0030H,再按执行键EXEC,表示连续运行该程序,稍侯,按RESET键退出运行;如果以单步运行程序,则输入0030后,按SETP键,按一次执行一条语句,直到执行到003CH为止,按MON键退出运行;如果以断点运行程序,则先输入003CH(断点地址),再按F1键,再输入0030(起始地址),然后按EXEC键执行程序,当执行到003CH时自动停下来,此时按MON键退出。

(3)用存贮器读写方法检查7000H~70FFH中的内容应全是00H。

2、当DVCC仿真实验系统联PC机时(1)在闪动“P.”状态,按PCDBG键;(2)在PC机处于在Win95/98软件平台下,单击DVCC图标。

(3)在“系统设置”选项中设定仿真模式为内程序、内数据。

对硬件实验4、5、6、7、8、9、12、15而言,仿真模式应设定为内程序、外数据。

(4)根据屏幕提示进入51/96动态调试菜单。

(5)联接DVCC实验系统(Ctrl+H)(6)装载目标文件(Ctrl+L)(7)设置PC起始地址(8)从起始地址开始连续运行程序(F9)或单步(F8)或断点运行程序(9)单步、断点运行完后,在存贮器窗口内检查7000H~70FFH中的内容是否全为00H一、思考:假使要把7000~70FFH中的内容改成FF,如何编制程序。

实验二拆字实验一、实验目的掌握汇编语言设计和调试方法。

二、实验内容把7000H的内容拆开,高位送7001H低位,低位送7002H低位。

单片机软件实验1-清零实验

单片机软件实验1-清零实验

:学号:班级:同组人:指导老师:报告日期:软件设计实验1:清零实验➢实验目的:掌握汇编语言设计和调试方法。

➢实验容:使用AT89C52单片机对单片机部RAM进行清零操作,实验容如下:1.把 90H-AFH的容置为#55H;2.把90H-9FH的容清零。

➢实验问答:1.清零之后,90H-9FH的容是什么?A0H-AFH的容是什么?答:90H-9FH容:00H;A0H-AFH:#55H================================================$NOMOD51$INCLUDE (80C52.MCU);============================================== =; DEFINITIONS;============================================== =;============================================== =; VARIABLES;============================================== =;============================================== =; RESET and INTERRUPT VECTORS;============================================== =; Reset Vectororg 0000hjmp Start;============================================== =; CODE SEGMENT;============================================== =org 0100hStart:MOV R0,#90HMOV R3,#20HLOOP1:MOV R0,#55HINC R0DJNZ R3,LOOP1MOV R2,#10HMOV R1,#90HCLR0:MOV R1,#00H Loop:jmp Loop;============================================== =ENDINC R1DJNZ R2,CLR0; Write your code here:学号:班级:同组人:指导老师:报告日期:软件设计实验2:拆字拼字实验➢实验目的:进一步掌握汇编语言设计和调试方法。

《单片微机原理及应用》实验参考程序(32页)

《单片微机原理及应用》实验参考程序(32页)

《单片微机原理及应用》实验参考程序杭州电子科技大学电子信息学院张学超编写(使用达爱思Dais-80958B单片机实验开发系统)一、软件实验参考程序软件实验一清零程序Array ;将2000H-20FFH的内容清零SS01: CLR AMOV DPTR, #2000HMOV R7, #0FFHCLR0: MOVX @DPTR,AINC DPTRDJNZ R7, CLR0CLR1: SJMP CLR1 ; SJMP $软件实验二拆字程序;把2000H的内容拆开,高4位送2001H的低4位,低4位清零。

SS02: MOV DPTR, #2000HMOVX A, @DPTR ;取数MOV B, A ;暂存该数SW AP A ;高低半字节交换ANL A, #0FH ;屏蔽高4位INC DPTRMOVX @DPTR,A ;原数高半字节送2001HMOV A, B ;取回原数ANL A, #0FH ;屏蔽高4位INC DPTRMOVX @DPTR,A ;原数低半字节送2002HSJMP $软件实验三拼字程序;把2000H和2001H的低4位分别送入2002H的高低4位。

SS03: MOV DPTR, #2000HMOVX A, @DPTR ;取第一个半字节ANL A, #0FH ;屏蔽高4位SW AP A ;高低半字节交换MOV B, A ;暂存该数INC DPTRMOVX A, @DPTR,;取第二个半字节ANL A, #0FH ;屏蔽高4位ORL A, B ;两个半字节拼成一个字INC DPTRMOVX @DPTR,A ; 拼好的字送2002HSJMP $软件实验四数据区传送子程序;把R2R3为源RAM区首址内的R6R7字节数据传送到R4R5为目的RAM区。

SS04: MOV DPH, R2MOV DPL, R3 ;取源地址指针MOVX A, @DPTR ;取数据INC DPTR ;源地址指针+1MOV R2, DPHMOV R3, DPL ;保存源地址指针MOV DPH, R4MOV DPL, R5 ;取目的地址指针MOVX @DPTR, A ;存数据INC DPTR ;目的地址指针+1MOV R2, DPHMOV R3, DPL ;保存目的地址指针CLR CMOV A, R7SUBB A, #1MOV R7, AMOV B, A ;暂存16位字节数低字节MOV A, R6SUBB A, #0MOV R6, A ;字节数减一:(R6R7)← (R6R7)−1ORL A, B ;(R6R7)=0?JNZ SS04 ;未完继续传送RETSS04C: MOV R3, #00HMOV R2, #20H ;指定源地址为MOV R5, #00HMOV R4, #30H ;指定目的地址为3000HMOV R7, #00HMOV R6, #01H ;传送字节数为100HLCALL SS04 ;从2000H开始向3000H开始的地址区传送100H个数据SJMP $软件实验五数据排序实验;把8051中RAM 50H-5AH中放入不等的数据,运行本实验程序后检查50-5AH中内容是否按从小到大排列。

清零实验报告程序

清零实验报告程序

清零实验报告程序清零实验报告程序在科学研究和实验中,报告程序是非常重要的一环。

它能够帮助研究者整理和总结实验结果,向他人传达实验的目的、方法和结论。

本文将探讨清零实验报告程序的重要性,并提供一个简单的清零实验报告程序示例。

1. 引言在进行实验之前,首先需要明确实验的目的和背景。

在清零实验中,我们的目的是通过一系列操作将特定设备或系统的数值归零,以确保其正常运行。

清零实验在许多领域都有应用,例如电子设备维修、环境监测等。

2. 实验步骤在清零实验中,我们需要按照一定的步骤进行操作。

以下是一个示例的清零实验步骤:步骤一:准备工作在开始实验前,确保实验所需的设备和工具齐备,并检查其状态是否正常。

步骤二:了解设备或系统在进行清零实验前,我们需要对待清零的设备或系统进行了解。

这包括了解其工作原理、功能和常见问题等。

步骤三:确定清零方法根据设备或系统的特点,确定适用的清零方法。

这可能涉及按特定顺序按下按钮、调整参数或进行其他操作。

步骤四:执行清零操作按照确定的方法,逐步执行清零操作。

确保按照正确的顺序和步骤进行操作,以避免错误。

步骤五:验证清零结果在完成清零操作后,验证设备或系统是否成功清零。

这可以通过观察数值是否归零、设备是否正常运行等方式进行验证。

3. 实验结果在清零实验中,我们需要记录和呈现实验结果。

以下是一些常见的实验结果记录方式:方式一:文字描述通过文字描述实验的目的、步骤和结果。

这种方式适用于简单的清零实验,可以清晰地表达实验过程和结果。

方式二:数据表格将实验结果以表格的形式呈现,包括实验前后的数值对比、清零时间等。

这种方式适用于需要比较和分析不同实验结果的情况。

方式三:图表展示通过图表的形式展示实验结果,例如折线图、柱状图等。

这种方式适用于需要直观展示实验结果的情况。

4. 结论与讨论在清零实验报告中,我们需要总结实验的结果并进行讨论。

以下是一些常见的结论与讨论内容:结论一:清零方法有效性总结清零方法的有效性,即该方法是否成功将设备或系统的数值归零。

微机原理实验一8086清零实验

微机原理实验一8086清零实验

Before After
清零 写入值55h
目标地址增1
已循环256次?
yes
结束
可能用到的指令
MOV 值传送 INC 增加1 LOOP 循环 no LEA 地址传送命令
谢谢观赏
定义在数据段中定义一片长为256字节的空 间,并将此段空间写入数据
提示:可以定义初值为00h,也可定义初值 为ffh,写入数据与初值不同即可
实验环境介绍
• 实验箱的配套软件
• 如果不小心错过了,可以在这里找到
菜单栏、工具栏 asm格式
保存
新建程序文档
知识补充
• DOS基础知识 符合DOS标准的文件(夹)名
• 选择文件夹时要双击文件夹,选中后文件 夹呈打开的样子 否则会无法正常选中相应文件夹
编在译这、里重编新写编程译序 在这里会出现错误提示信息
知识补充
• 8086汇编程序基础格式
stack segment stack ……
stack ends 堆栈段
data segment ‘data’ ……
data ends 数据段
8.3格式文件名
文件夹名长度小于8个字符
符合标准的字符为数字、字母等ASCII字符 且不能为 / \ * : < > | 引号
注意事项
• 不要选择某个盘的根目录 若选择某个盘的根目录,则本次所建立 的所有文件会自动跳到C:\XingYan\下
• 不要使用不符合标准的文件名、文件夹名 否则会无法编译并报错
微机原理实验一8086 清零实验
实验前言
约法三章
• 带课本、带实验指导书! • 按时签到、按时交实验报告! • 请自重,不要在课堂上玩游戏!
关于做程序

单片机实验指导书

单片机实验指导书

第一章DVCC-52196JH单片机仿真实验系统简介第一节DVCC系列单片机仿真实验系统性能§ 1 . 1 系统性能指标1.仿真、实验相结合。

2.实验模块化结构,互不影响,通过连线又可将各模块有机结合。

3.实验内容设置丰富、合理,满足教学大纲要求。

4.每项实验连线方便,既能满足学生动手能力愿望,又能充分发挥学生的创新能力,提高教学实验的质量和效率。

5.自带集成调试环境,Win9X/NT软件平台,含:源程序库、芯片资料库、原理图库、元器件位置图库、实验说明、动态调试工具库。

6.提供源程序编辑、汇编、链接。

7.电路具有过压保护,确保系统安全、可靠工作。

8.整机采用热风整平工艺基板、波峰焊接,实验连接接口采用圆孔插座,整机可靠性好。

9.自带EPROM写入器,可对27128、2764EPROM进行写入。

10.自带键盘显示器,进口键座,专用彩色键帽,决无按键不可靠现象。

11.系统用串行口、用户用串行口相互独立,在通过RS232与上位机联机状态下,同样可以调试用户串行口程序。

12.系统带有示波器功能,通过RS232口,可将测得的信号显示在上位机的屏幕上。

该系统通过RS232口可连各种上位机,在Win9X/NT软件平台进行仿真开发和实验。

同时系统自带键盘显示器,无须任何外设也能独立工作,支持因陋就简建立单片机实验室。

系统提供实验程序库,均放在系统光盘上,可直接使用。

同时全部实验程序机器码已固化在EPROM中,作为用户程序。

在进入实验前,需将该EPROM中的程序(在固化区)传送到仿真RAM区,以便以单步、断点、连续等方式运行程序。

§ 1.2 系统提供的主要实验项目如下:一、MCS—51部分软件实验1、清零程序实验 6、字符串查找并统计相同字符串个数2、拆字程序实验 7、双字节乘法程序3、拼字程序实验 8、多分支程序设计4、数据块传送实验 9、定时/计数器实验5、数据排序实验 10、电脑时钟实验二、MCS—51部分硬件实验1、8031单片机P3、P1口应用 11、步进电机控制2、工业顺序控制 12、直流电机控制3、并行I/O口8255应用 13、电子音响4、简单I/O口输入、输出扩展 14、继电器控制5、A/D转换0809应用 15、数据存贮器扩展和程序存贮器扩展6、D/A转换0832应用 16、8031串行口应用实验(一)—双机通信实验7、串并转换实验 17、8031串行口应用实验(二)—与PC机通信8、定时计数器8253A应用 18、温度测量实验(5G14433应用)9、可编程键盘显示8279A应用 19、压力测量实验10、打印机接口应用对DVCC—××JH+机型增加下列四个扩展实验一、128×64液晶显示实验二、16×16LED点阵显示实验三、语音录放实验四、IC卡读写实验§ 1.3 实验系统主要机型如下:DVCC—52JH(JH+) 51实验、仿真DVCC—52196JH(JH+) 51、196实验、仿真DVCC—5286JH(JH+) 51实验、仿真,8088实验DVCC—598JH(JH+) 51、196实验、仿真,8088实验第二节 MCS—51实验系统安装与启动§ 2.1 MCS51实验系统安装与启动1. DVCC系列实验系统在出厂时均为51状态对DVCC—52196JH机型:SK1位1—5置ON位置,位6—10置OFF对DVCC—5286JH和DVCC—598JH机型:a.SK1位1—5置ON,位6—10置OFF;b.SK2位1—2置ON;c.SK3置ON;d.SK4置OFFe.卧式KBB置51、96位置,立式KBB1开关置51、88位置(只对DVCC—598JH/JH+);f.DL1—DL4连1、22. 如果系统用于仿真外接用户系统,将40芯仿真电缆一头插入系统中J6插座,另一头插入用户系统的8051CPU位置,注意插入方向,仿真头上小红点表示第一脚,对应用户8051CPU 第一脚。

单片机实验报告概要

单片机实验报告概要

微控制器技术实验报告专业班级:学号:姓名:指导老师:时间: 2014.04目录一、实验目的及要求 (1)二、实验基本内容 (1)三、实验设备 (5)四、实验设计思想和结果分析 (8)4.1清零程序与拆字程序设计 (8)4.2拼字程序与数据传送程序 (10)4.3 排序程序与散转程序 (12)4.4 数字量输入输出实验 (14)4.5定时器/计数器实验 (16)4.6 A/D、D/A转换实验 (22)4.7 串行通讯实验 (31)五、结束语 (40)一、实验目的及要求:1、学习Keil C51集成开发工具的操作及调试程序的方法,包括:仿真调试与脱机运行间的切换方法;2、熟练使用SST89C554RC单片机核心板及I/O扩展实验系统;3、熟练掌握在Keil C51与Proteus仿真软件虚拟联机环境下,基于51单片机控制器数字接口电路的硬件、软件设计与功能调试;4、完成MCS51单片机指令系统软件编程设计和硬件接口功能设计题;二、实验基本内容(TD-51单片机实验系统实现)实验一清零程序与拆字程序设计根据实验指导书之“第二章单片机原理实验”(P17~P23页)内容,熟悉实验环境及方法,完成思考题1、2(P23)基础实验项目。

实验二拼字程序与数据传送程序设计汇编语言完成实验指导书P24思考题3、4题的基础实验项目。

实验三排序程序与散转程序设计汇编语言完成实验指导书P24思考题5、6题的基础实验项目。

实验四数字量输入输出实验基本部分:阅读、验证C语言程序功能。

使用汇编语言编程,完成实验指导书之“3.1 数字量输入输出实验”基本实验项目(P36),。

提高部分:(任选一题)题目一:LED交通灯控制(使用8255接口芯片)要求:使用汇编语言编程,功能为:通过开关实现LED灯工作方式即时控制,完成LED交通灯的开关控制显示功能和LED交通灯自动循环显示功能。

题目二:LED灯控制(使用8255接口芯片)要求:使用汇编语言编程,功能为:通过KK1实现LED灯工作方式即时控制,完成LED开关控制显示和LED灯左循环、右循环、间隔闪烁功能。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验一清零程序一、实验目的: 掌握汇编语言设计和调试方法,熟悉键盘操作。

二、实验内容:把2000H~20FFH 的内容清零。

三、实验程序框图四、实验步骤: 用连续或单步方式运行程序,检查2000~20FF 中执行程序前后的内容变化。

五、思考:假使把1000H~10FFH 中的内容改成FF,如何修改程序,请分别用连续和单步方式运行程序来完成校验证六、程序清单(1)基本程序(文件名SW01.ASM)ORG 0000HLJMP SE01ORG 0640HSE01: MOV R0,#00H ;(00H)送R0,R0 为计数器MOV DPTR,#2000H ;(2000H)送DPTRLOO1: CLR A ;累加器A 清零MOVX DPTR,A ;存储空间内容清零INC DPTR ;DPTR 加1INC R0 ;R0 加1CJNE R0,#FFH,LOO1 ;若R0 不等于00,则跳转至LOO1 继续循环LOOP: SJMP LOOPEND七、思考:假使把1000H~10FFH 中的内容改成FF程序如下:ORG 0000HLJMP SE01ORG 0640HSE01: MOV R0,#00H ;(00H)送R0,R0 为计数器MOV DPTR,#1000H ;(2000H)送DPTRLOO1: MOV A,#FF;累加器A 置FFMOVX DPTR,A ;存储空间内容置FFINC DPTR ;DPTR 加1INC R0 ;R0 加1CJNE R0,#FFH,LOO1 ;若R0 不等于00,则跳转至LOO1 继续循环LOOP: SJMP LOOPEND现象:运行第一条程序可以发现1000H~10FFH 中的内容变成FF,运行第二条程序1000H~10FFH 中的内容改成00.而其它单元的内容不变。

心得:该实验的内容比较简单。

实验二P3.3 口输入,P1 口输出一、实验目的:掌握P3 口、P1 口简单使用。

二、实验内容: P3.3 口输入一脉冲,P1 口按16 进制加一方式点亮发光二极管。

三、实验步骤P3.3 用导线连至K1 开关, P1.0~P1.7 导线连至L1~L8,K1 拨动一次,L1~L8 发光二极管按16 进制方式加一点亮。

快捷连线说明:P3.3→K1P1.0~P1.7→L1~L8(发光二极管)四、思考:修改程序,使发光二极管左移方式点亮。

五、程序清单(1)基本程序(文件名 HW01·ASM)ORG 0000HLJMP J100ORG 0810HJ100: MOV A,#00HJ101: JB P3.3,J101MOV R2,#10HLCALL DELYJB P3.3,J101J102: JNB P3.3,J102MOV R2,#10HLCALL DELYJNB P3.3,J102INC APUSH ACCCPL AMOV P1,APOP ACCAJMP J101DELY: PUSH 02HDEL2: PUSH 02HDEL3: PUSH 02HDEL4: DJNZ R2,DEL4POP 02HDJNZ R2,DEL3POP 02HDJNZ R2,DEL2POP 02HDJNZ R2,DELYRETEND九,改变延时常数,使发光二极管闪亮时间改变。

修改程序,使发光二极管闪亮移位方向改变的程序:ORG 0000HLJMP J100ORG 0810HJ100: MOV A,#09HJ101: JB P3.3,J101MOV R2,#10HLCALL DELYJB P3.3,J101J102: JNB P3.3,J102MOV R2,#10HLCALL DELYJNB P3.3,J102DEC APUSH ACCCPL AMOV P1,APOP ACCAJMP J101DELY: PUSH 02HDEL2: PUSH 02HDEL3: PUSH 02HDEL4: DJNZ R2,DEL4POP 02HDJNZ R2,DEL3POP 02HDJNZ R2,DEL2POP 02HDJNZ R2,DELYRETEND实验现象:当执行第一个程序时K1 开关向下拨动一次时A中的内容从0依次加1,P1口的发光二极管也依次发光并向右移。

当执行第二个程序时K1 开关向下拨动一次时A中的内容从8依次减1,P1口的发光二极管也依次发光并向左移。

心得:该实验运用了累加器A并不断加1.还有该程序连续两次判断P3.3口是否为高电平在执行下一条语句和连续两次判断P3.3口是否为低电平在执行下一条语句的原因是为了消除开关的抖动。

实验三中断基础实验一、实验目的: 掌握MCS-51 单片机中断原理以及编程使用方法;理解下降沿中断和低电平中断的区别。

二、实验预备知识MCS-51 单片机有2 个由/INT0、/INT1 引脚输入的外部中断源。

触发外部中断有两种方式,即下降沿引起中断或低电平引起中断。

当编程TCON 中的ITi(i=1 或0,下同)为1 时,则引起触发的方式为边沿触发方式,反之为低电平触发方式。

每个中断源的中断请求能否得到响应要受两级“开关”的控制,即一个总“开关”EA 和EXi 的控制,只有当EA 为1,且对应的分“开关” EXi 也为1 时,相应中断源的中断请求才能被响应。

外部中断0、外部中断1 对应有2 个固定的中断服务程序入口地址0003H、0013H。

响应中断后中断申请标志IEi 由硬件自动清零三、实验内容编写主程序,读取K1 状态,当其与地端闭合时(P1.3 为低电平)初始化为低电平触发,反之,初始化为下降沿触发,且发光二极管灭;编写中断服务程序,使图中的发光管闪烁5 次,间隔250ms,即中断服务程序的执行时间为2.5 秒,退出中断程序时,使发光管灭。

六、实验步骤把“总线插孔”框中的P1.2、P1.3、P3.2 分别连L1、 K1、“单脉冲与时钟”的“”孔。

快捷连线说明:P1.2→L1,P1.3→K1,P3.2→七、思考:1.要LED 亮5 次,程序应如何改动?2.若改为外部中断1 来实现以上实验,如何修改实验的硬件和软件?3.电平触发在输入信号后,灯闪的次数受谁的控制?八、程序清单(1)基本程序(文件名 int011ok·ASM)ORG 0000HlJMP MAINORG 0003H ;外中断0 入口地址LJMP INTER0ORG 0660HMAIN: JB P1.3,MAIN1 ;判断是电平触发还是沿触发clr it0 ;P1.3=0 低电平触发lJMP MAIN2MAIN1: SETB it0 ;中断初始化,P1.3=1 下降沿边缘触发MAIN2: ORL IE,#81HORL IP,#02HlJMP MAININTER0: CLR EA ;中断处理程序SETB P1.2LCALL DELYCLR P1.2LCALL DELYSETB P1.2LCALL DELYCLR P1.2LCALL DELYSETB P1.2LCALL DELYCLR P1.2LCALL DELYSETB EARETIDELY: MOV R6,#200H ;延时DELY1: MOV R7,#125HDELY2: DJNZ R7,DELY2DJNZ R6,DELY1RETEND实验现象:外部T0如果有中断的话,LED灯闪烁三次,中间间隔250ms否则程序一直在等待中断源。

若改为外部中断1 来实现以上实验,如何修改实验的硬件和软件?如果改为外部中断1 来实现以上实验,硬件方面单脉冲时钟接P3.3,即外部中断1入口,而在软件方面,把IE和IP设置为ORL IE,#84HORL IP,#04H即可。

电平触发在输入信号后,灯闪的次数受谁的控制?灯闪烁的次数受子程序中P1.2高电平的次数的控制。

心得:了解中断和定时计数器的使用。

还有老师给我们的那个程序有错误。

应把DELY: MOV R6,#00H ;延时DELY1: MOV R7,#00H改为DELY: MOV R6,#200H ;延时DELY1: MOV R7,#125H实验四定时/计数器基础实验一、实验目的: 掌握MCS-51 单片机内部定时/计数器的程序设计与调试方法。

二、实验预备知识MCS-51 单片机有两个16 位的定时计数器T0 和T1,它们都有定时和对外部事件进行计数的功能,可用于定时控制、对外部事件检测和计数等场合。

计数和定时实质上都是对脉冲信号进行计数,只不过脉冲源不同而已。

当工作在定时方式时,计数脉冲来自单片机的内部,即振荡器信号12分频后作计数脉冲,每个机器周期的时间使计数器加1,由于计数脉冲的频率是固定的(即每个脉冲为1 个机器周期的时间),故可通过设定计数值来实现定时功能;当工作在计数方式时,计数脉冲来自单片机的引脚,每当引脚上出现一个脉冲时,计数器加1,从而实现计数功能。

可以通过编程来指定定时/计数器的功能,以及它的工作方式。

中断申请标志TF,在中断响应后有硬件中断清零,查询方式时必须由软件清零。

三、实验内容利用定时器1,通过对外部脉冲的计数,利用查询方式,实现在P1.0引脚上产生输出信号。

四、实验步骤把P3.5、P1.0 分别连K1、L1。

快捷连线说明:P3.5→K1P1.0→L1五、思考:1.开关来回拨4 次才取反,程序应如何修改?2.采用中断方式,该如何设计程序?八、程序清单基本程序(文件名TIME01ok.ASM)ORG 0000HLJMP DSJUORG 0660HDSJU: MOV TMOD,#60H ;T1 计数,工作方式2MOV TH1,#0FEH ;赋初值MOV TL1,#0FEHSETB TR1 ;启动DEL: JBC TF1 ,REP ;查询计数溢出AJMP DELREP: CPL P1.0 ;取反AJMP DELEND实验现象:每按一次开关,L1灯变化一次。

思考修改:1.开关来回拨4 次才取反,程序应如何修改?答:把初值设置为FB即可,即为把MOV TH1,#0FEHMOV TL1,#0FEH修改为:MOV TH1,#0FBHMOV TL1,#0FBH2.采用中断方式,该如何设计程序?答:程序如下:ORG 0000HLJMP MAINORG 001BHLJMP T1ORG 0660HT1:CPL P1.0 ;取反RETMAIN: MOV TMOD,#60h ;T1 计数,工作方式2MOV TH1,#0FEH ;赋初值MOV TL1,#0FEHSETB TR1 ;启动END心得:我们要熟练掌握中断的编程方法和它的原理图。

这样才能随心所欲的修改程序。

相关文档
最新文档