单片机实验程序报告(北交大)
单片机实训报告

单片机实训报告一、实训目的本次单片机实训的目的在于通过实际操作和项目实践,深入理解单片机的工作原理和应用开发,提高自身的硬件设计能力、软件编程能力以及解决实际问题的能力。
同时,培养团队合作精神和创新思维,为今后从事相关领域的工作打下坚实的基础。
二、实训设备在本次实训中,我们使用了以下主要设备:1、单片机开发板:用于实验和项目的开发与调试。
2、计算机:安装相关的编程软件和开发工具。
3、示波器:用于观察电路中的信号波形。
4、万用表:用于测量电路中的电压、电流等参数。
三、实训内容1、单片机基础知识学习首先,我们对单片机的基本结构、工作原理、指令系统等进行了系统的学习。
了解了单片机的内部组成,包括中央处理器(CPU)、存储器、输入输出端口等。
通过学习指令系统,掌握了如何使用汇编语言或 C 语言对单片机进行编程控制。
2、硬件电路设计在硬件电路设计方面,我们学习了如何根据实际需求设计单片机的最小系统,包括电源电路、时钟电路、复位电路等。
同时,还掌握了如何扩展外部存储器、输入输出设备等。
通过实际绘制电路图和制作电路板,提高了我们的硬件设计能力和动手实践能力。
3、软件编程在软件编程方面,我们使用了汇编语言和 C 语言两种编程方式。
通过编写简单的程序,如点亮 LED 灯、控制数码管显示、实现按键输入等,逐渐熟悉了单片机的编程方法和技巧。
同时,还学习了如何使用中断、定时器、串口通信等功能,提高了程序的复杂程度和实用性。
4、项目实践在项目实践环节,我们分组完成了一个基于单片机的温度控制系统的设计与实现。
该系统通过温度传感器采集环境温度,经过单片机处理后,控制风扇的转速和加热装置的工作状态,从而实现对环境温度的自动控制。
在项目实践过程中,我们充分运用了所学的知识和技能,从系统方案设计、硬件电路搭建、软件编程调试到系统测试优化,每个环节都进行了精心的设计和认真的实施。
四、实训过程在实训开始阶段,我们首先进行了单片机基础知识的学习和实验。
北京交通大学-单片机课程设计

单片机课程设计自适应屏幕亮度调节班级:自动化摘要:本设计是基于单片机的的液晶屏幕亮度自动调节系统,如今市场上大多数电子设备的显示屏都是液晶的,虽然相比于传统电子设备的屏幕,它具有功耗小,辐射小(几乎没有辐射)等优点,但是由于它的亮度过高,反而更容易是我们的眼睛变得疲劳,造成视力下降,甚至产生头痛等症状。
基于此原因,我设计出了一个比较简易的液晶屏幕亮度自动调节装置,它通过根据所处环境中的光的亮度,来自动调节屏幕的背光的亮度,而不是使屏幕一直保持在同一个亮度,通过自动调节,在一定程度上可以使得它的功耗进一步减少,此外最重要的是通过自适应亮度调节,可以使我们(观察者)在浏览屏幕内容的时候,眼睛更加舒服,减少了亮度不适带来的眼睛疲劳,保护了我们的视力。
关键词:单片机技术、自动调节一、实验设计目的学习并掌握单片机I/O口的基本输入输出功能;学习信号处理中比较常用的A/D和D/A的过程处理;学习单片机内部定时器的操作;学习并掌握液晶屏1602的显示操作;学习并掌握光敏电阻的使用方法;二、设计任务及要求以单片机为核心处理部件,根据液晶屏设备所处的环境来自动调节屏幕背光亮度;除了自动调节功能外,出于特殊情况,自动调节后的屏幕亮度可能不能满足我们的要求,这时就需要手动调节屏幕亮度,所以设计中还需要一个开关来负责切换自动调节功能和手动调节功能,在自动调节功能中,有两个按钮负责控制亮度增大或亮度减小。
三、硬件设计1.光敏部分和A/D处理此部分是根据当前所处环境的光的强度,转化成一个8位的数字量,其中这个数字量是自己定义的,然后送到89C52芯片中进行处理。
原理框图如下:光敏部分提取电压ADC0809转化电压为数字量74LS373锁存器89C52处理电路原理图(用proteus仿真):1)光强的处理部分,出于经济方面的原因,我采用的最原始的光敏电阻,根据光敏电阻的物理特性:随着外界光照强度的变大,光敏电阻的阻值减小。
如上图所示,让它和一个电阻串联,根据分压关系,通过采集定值电阻两端的电压,来大致判断光线强度的变化。
单片机实验报告

单片机实验报告第一篇:单片机实验报告单片机实验报告一、实验目的1.熟练使用Keil、Protues两款软件2.通过上机操作,增强个人动手实践能力3.加深对理论知识的理解4.培养运用汇编语言进行初步编写程序的能力二、实验内容1.将片外RAM3050-306FH中数据转移至片内70-8FH中。
要求:可以从Keil或Protues上看到RAM的数据转移结果。
2.设计一个外部中断触发流水灯系统:当外部中断来临时,启动流水灯,即令P2口的LED轮流循环点亮。
要求:开发板或Prrotues演示3.将片内存储器80H中存放的BCD码转换为ASCII码,要求使用表格查询技术。
要求:在Keil或Protues上看到数据转换结果。
4.各使用中断方式和查询方式设计一个方波发生器,频率为50HZ。
要求:Protues使软件间示波器显示方波。
三、实验程序1.将片外RAM3050-306FH中数据转移至片内70-8FH中ORG 0000H AJMP MAIN 上电,转向主程序ORG 0030H 主程序入口MAIN: MOV DPTR,#3050H 数据指针指向地址3050H MOV A,#04H 将立即数04H送A寄存器MOV R0,#20H NEXT: MOVX @DPTR,A INC DPTR 数据指针DPTR自加一DJNZ R0,NEXT 判断是否跳转到NEXT或继续向下执行MOV DPTR,#3050H MOV R0,#70H MOV R2,#20H NEXT1: MOVX A,@DPTR MOV @R0,A INC DPTR INC R0 DJNZ R2,NEXT1SJMP $ 等待END 2.设计一个外部中断触发流水灯系统:当外部中断来临时,启动流水灯,即令P2口的LED轮流循环点亮ORG 0000H SJMP MAIN 上电,转向主程序ORG 0003H 外部中断0向量入口AJMP INSER ORG 0030H 主程序入口MAIN: SETB EX0 SETB IT0SETB EA CPUHERE: SJMP HERE ORG 0200H INSER: MOV R2,#08H MOV A,#01H NEXT: MOV P2,A LCALL DELAY RL A DJNZ R2,NEXT NEXT或继续向下执行RETI DELAY: MOV R3,#0FFH DEL2: MOV R4,#0FFH DEL1: NOP 允许外部中断0中断选择边沿触发方式开中断等待中断设置循环次数赋初值,设置高电平亮将初值送往P2口延时左移一位判断循环次数,是否跳转到中断返回延时程序DJNZ R4,DEL1 DJNZ R3,DEL2 RET END 3.将片内存储器80H中存放的BCD码转换为ASCII码,要求使用表格查询技术 ORG 0000H LJMP MAIN ORG 0030H主程序起始地址 MAIN: MOV 80H,#05H 将立即数50H转送内存单元80H MOV A,80H 将内存单元80H中的内容送寄存器A MOV DPTR,#TAB MOVC A,@A+DPTR A寄存器内容加指针偏移量后送A寄存器 MOV 80H,A RET TAB: DB 30H,31H,32H,33H,34H DB 35H,36H,37H,38H,39H 4.1中断方式产生50HZ方波ORG 0000HAJMP MAINORG 0030H 主程序入口 MAIN: MOV TMOD,#10H 设置定时器工作模式为模式1 MOV TH1,#0D8H 装入T1计数初值MOV TL1,#0F0HSETB ET1 开中断SETB EA CPU开中断SETB TR1 启动定时器T1 HERE: SJMP HERE 等待中断ORG 001BH T1中断向量地址CLR TF1 将TF1清零CPL P2.0 P2.0取反输出MOV TH1,#0D8H 重装初值MOV TH0,#0F0HRETI;中断返回END 4.2 查询方式产生50HZ方波ORG 0000HAJMP MAINORG 0030H 主程序入口MAIN: MOV TMOD,#10H 设置定时器的工作模式为模式1 SETB TR1 启动定时器T1 LOOP: MOV TH1,#0D8H 装入T1计数初值MOV TH0,#0F0H JNB TF1,$ T1没有溢出则等待CLR TF1产生溢出,清标志位CPL P2.0 P2.0取反输出SJMP LOOP 循环END四、实验结果截图1.23.4.14.2第二篇:单片机实验报告实验四、中断交通灯实验林立强1000850116一、实验目的1、了解MCS-51单片机的组成、中断原理,中断处理过程、外部中断的中断方式。
单片机实验程序报告(北交大)

单片机实验程序实验二8155并行I/O口扩展和动态扫描程序编制1.实验目的(1)掌握8155并行I/O芯片扩展和使用方法(2)掌握数码管动态扫描汇编语言的编制方法2.预习要点(1)8155芯片基础知识(2)51单片机的总线时序、地址译码的原理(3)数码管动态扫描显示方法3.实验设备计算机、单片机实验箱。
4.实验内容基本要求:通过实验板的上的8155(U16)显示电路(在电路板上已经固定连接字形和字位控制线的8155部分),并通过跳线确定8155的地址,在8个LED数码管上依次动态显示数字1~8。
扩展要求:假定30H~33H的存储单元内容为4个字节16进制数,请依序将他们显示在8个LED数码管上根据程序要求做如下程序流程图:主程序流程图:显示子程序流程框图:基本要求编程如下:ORG 0000HAJMP MAINORG 0050HMAIN: MOV SP,#60H ;压栈MOV DPTR, #4100HMOV A,#0FH ;方式控制字0FH送AMOVX @DPTR, A ;8155初始化MOV 70H,#01H ;设置显示缓冲区MOV 71H,#02HMOV 72H,#03HMOV 73H,#04HMOV 74H,#05HMOV 75H,#06HMOV 76H,#07HMOV 77H,#08HLOOP: ACALL DISPLAY ;循环调用显示子程序AJMP LOOPDISPLAY:MOV R0,#70H ;显示缓冲区首地址送R0MOV R3,#0FEH ;字位控制初值送R3LD0: MOV DPTR,#4102HMOV A,#0FFHMOVX @DPTR, A ;B口字位送高,关共阴显示MOV A,@R0MOV DPTR,#DISTABMOVC A,@A+DPTR ;查表MOV DPTR,#4101H ;PA口作字形MOVX @DPTR,AMOV DPTR,#4102H ;PB口作字位MOV A,R3MOVX @DPTR,AACALL DELAY ;延时1msINC R0 ;修正显示缓冲区指针JNB ACC.7,LD1 ;若显示完一遍,则LD1RL A ;字位码左移一位此处A中的值是R3MOV R3,A ;送回R3AJMP LD0 ;显示下一个数码LD1: RET ;此处把每一个八位显示看成一次函数。
单片机实训报告优选范文5篇分享

单片机实训报告优选范文5篇分享单片)是一种集成电路芯片,是具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器计数器等功能集成到一块硅片上构成的一个小而完善的微型计算机系统,在工业控制领域广泛应用。
下面就是小编给大家带来的单片机实训报告优选范文5篇分享,希望大家喜欢!单片机实训报告范文(一)前言一周的单片机实训很快就结束咯,在这一周的时间里,我学到了很多关于单片机各方面的知识。
老师在实训课中也教会咯我们很多关于单片机软件编程与硬件设施的知识。
一周的实训中我们一共实训咯好几个项目,通过这几个项目的实训,我们掌握咯一些单片机的汇编语言和硬件调试,达到了很好的效果。
一周时间实训过后,我把之前在课堂上不懂的知识点,通过实际操作的练习,我都搞明白咯。
当然在实训过程中也遇到咯很多问题,就是有时在调试方面不能调试成功,有时程序是没有错误,但是就是调试不好,一直找原因也找不出是什么原因。
希望以后能够拥有更多的实训时间和机会学习单片机。
实训任务一一、实验目的熟悉Keil C51集成开发环境的使用方法二、实验设备及器件IBM PC机三、实验内容按照本书的第2章的2.1节到2.4节内容进行Keil C51集成开发环境的安装和使用练习。
然后按照以下内容建立文件并编译产生HEX文件。
ORG 8000HLJMP MainORG 80F0HMain:MOV R7,#0LOOP:MOV R6,#0DJNZ R6,$DJNZ R6,$DJNZ R6,$DJNZ R6,$DJNZ R7,LOOP ;延时一台CPL P1.0CPL P1.1CPL P1.2CPL P1.3CPL P1.4CPL P1.5CPL P1.6CPL P1.7SJMP MainEND ;P1.0取反 ;P1.1取反 ;P1.2取反 ;P1.3取反 ;P1.4取反 ;P1.5取反 ;P1.6取反 ;P1.7取反通过该程序实现八盏灯的同时亮和同时灭的功能,更好的掌握汇编指令。
北京交通大学单片机试验报告-电子时钟

北京交通大学单片机实验报告- 电子时钟单片机课程设计实验报告电子时钟电子时钟、实验目的学习8051定时器时间计时处理、按键扫描及LED 数码管显示的设计方法。
二、设计任务及要求利用实验平台上4个LED数码管,设计带有闹铃功能的数字时钟,要求:1.在4位数码管上显示当前时间。
显示格式“时时分分”2.由LED闪动做秒显示。
3.利用按键可对时间及闹玲进行设置,并可显示闹玲时间。
当闹玲时间到蜂鸣器发出声响,按停止键使可使闹玲声停止。
4.拓展:使数字时钟的闹铃为音乐。
(电子音调发生器)三、硬件设计1.显示模块为了将时间在LED数码管上显示,可采用静态显示法和动态显示法,由于静态显示法需要数据锁存器等较多硬件,可采用动态显示法实现LED显示。
方法是将所有位的段选线相应并联,由一个8位I/O 口控制,从而形成段选线的多路复用,同时各位的公共端分别由相应的I/O线控制,实现分时选通硬件电路图如下,图中10k电阻起到限流作用;三极管起到驱动数码管的作用。
若不使用三极管,数码管发光微弱。
'A '' PN1 '£TH2■闹铃模块闹铃声由交流蜂鸣器产生,电路图如下。
当P1.7输出不同频率的方波,.蜂鸣器便会发出不同的声音。
■!—Hfc 415'IP■i a > J-■■r ■• _ ■… . … IB"'81:::汇JQ_ n R§TPTPD外毗FD.右心咏旅円Z.'^E F2咖II 吃砂雄P2 5Jjftl3n e.'^k.[FZz牆铝3.整体硬件电路图四、软件设计1.计时模块利用单片机定时器0完成计时功能。
定 时器0计时中断程序每隔1ms 中断一次并 当作一个计数,每中断一次计数加 1,当 计数1000次时,则表示1s 到了,秒变量 加1。
当秒变量达k ii<iP岖屮 PDJWmprr PH 7-.'fOF3 Wn.iMFSFFT ALEPx LAp= cmpi 」闪 1.T®P 询Ll Pl 3P- 4 n 如n円耳 PJ 咼 p- r>h : wnr TrwSQUNC®R& : 10D -<TDCT到60时,秒变量清零同时分变量加1。
北京交通大学 单片机实验与课程设计

课程设计题目(扩展题)
扩展题(要自己写:目的、设计任务及要求、 工作原理及设计思路、可扩展性) 1:高级电子琴(遥控按键、音乐播放与录制) 2:带天气预报的电子钟(要实际的数据) 3:波形发生器(采用PWM方式、显示频率) 4:单片机控制手机发短信系统(通过串口) 5:单片机多通信系统(多于2点) ; 6:单片机与PC组成数据采集与显示系统(PC 通过串口通信,并采用VB编程) 。
15
扩展题与自选题
题目应该是51单片机应用类; 可根据自己的实际能力,选择 51 单片机 完成课程设计; 选题须老师认可。
16
课程设计基本要求
学生每人任选其中的一个题目。也可经教师 同意自行选择51单片机应用方面的题目; 根据课程设计题目,收集相关资料,进行系 统总体方案设计,选择最优方案; 完成所选方案的硬件、软件设计,并调试通 过; 写出课程设计报告;
5
2.LCD字符型液晶显示器控制
设计任务及要求 在JD51开发板上扩展一块LCD点阵字符型液晶 显示器,要求: 1. 用按键输入与显示数字; 2. 实现显示实时时钟。 3. 利用按键可对闹铃进行设置,并可显示闹铃时 间。当闹铃时间到蜂鸣器发出声响,按停止键 使可使闹铃声停止。 4. 使所显示内容滚动。 工作原理及设计思路 在JD51上有一标准的LCD液晶显示器接口,采 用DS1602液晶显示器。
12
8.红外接收与控制
利用JD51平台完成单片机接收红外数据, 实现红外遥控。 要求:
通过红外遥控器发送控制命令,单片机 通过1838红外接收头红外数据,并执行 相应操作。 了解红外遥控器、红外接收器的工作原 理。
13
单片机实训报告3篇

单片机实训报告【三篇】单片机实训报告篇一通过为期一周的单片机实训,是我们对这门课有了许多新的了解,弥补了在课堂上学习的不足。
相信这对我们以后的学习和工作都会有很大的帮助。
我们一定要在最短的时间里对这些不足加以改正!首先,在这次试训中我被单片机强大的功能所震撼,以前在课堂上完全没有能理解可编程单片机的优越性。
这次通过实体仿真软件等辅助软件的共同效果,是这次试训有了鲜明的活力。
换是我们认识到这次试训不仅仅是一个软件的应用,更多的是使我们认识到学习到很多在课堂上无法得到的东西。
特别是protues软件的功能是我们了解了当今开发系统的新方向,简直太不可思议啦!单片机作为一种最简单的软件,与我们的日常生活息息相关,了解一些单片机程序的简单录入是非常必要的。
如:LED显示器、键盘和显示器的应用和原理。
在被刺实训中我们每个人通过一个八位流水灯的制作,使我们深深地体会到了单片机在现实生活中的小小应用,既增强了我们的好奇心,又巩固了我们的理论知识。
更让我们体会到了单片机手动的开始平台的完善与成熟。
只要你有想法,单片机就有可能让他成为现实。
这里我学习完protues软件后的第一感觉是,虽然这软件工作不稳定,但是会有相当不错的效果出来。
这对我以后的工作一定会有帮助的。
在这次试训中不仅只对单片机编程有了新的认识,还对整个单片机的开发平台都有了一厅的了解,这是一笔不错的收获。
通过这几天的试训,使我的感触很深,真实“条条大路通罗马”,要达到目的,不同的人就有不同的方法。
只要你的方法不错!五花八门都可以,而且是各有特色。
走出来的结果都有各自的独到之处。
在编程中“简”字贯穿于整个程序设计中,越简单越好,毕竟单片机留给用户的资源是有限的,所以我们要充分利用这些资源,达到更好的效果,这些是我们在以后的学习生活中应值得注意的地方。
在试训中有苦有甜,当我们为一个很难攻破的程序找出路时,心情烦躁,感觉自己很不可理喻,当程序一点一点编好后,自己从心底感觉到一点小小的安慰,看着自己的成果。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
单片机实验程序实验二8155并行I/O口扩展和动态扫描程序编制1.实验目的(1)掌握8155并行I/O芯片扩展和使用方法(2)掌握数码管动态扫描汇编语言的编制方法2.预习要点(1)8155芯片基础知识(2)51单片机的总线时序、地址译码的原理(3)数码管动态扫描显示方法3.实验设备计算机、单片机实验箱。
4.实验内容基本要求:通过实验板的上的8155(U16)显示电路(在电路板上已经固定连接字形和字位控制线的8155部分),并通过跳线确定8155的地址,在8个LED数码管上依次动态显示数字1~8。
扩展要求:假定30H~33H的存储单元内容为4个字节16进制数,请依序将他们显示在8个LED数码管上根据程序要求做如下程序流程图:主程序流程图:显示子程序流程框图:基本要求编程如下:ORG 0000HAJMP MAINORG 0050HMAIN: MOV SP,#60H ;压栈MOV DPTR, #4100HMOV A,#0FH ;方式控制字0FH送AMOVX @DPTR, A ;8155初始化MOV 70H,#01H ;设置显示缓冲区MOV 71H,#02HMOV 72H,#03HMOV 73H,#04HMOV 74H,#05HMOV 75H,#06HMOV 76H,#07HMOV 77H,#08HLOOP: ACALL DISPLAY ;循环调用显示子程序AJMP LOOPDISPLAY:MOV R0,#70H ;显示缓冲区首地址送R0MOV R3,#0FEH ;字位控制初值送R3LD0: MOV DPTR,#4102HMOV A,#0FFHMOVX @DPTR, A ;B口字位送高,关共阴显示MOV A,@R0MOV DPTR,#DISTABMOVC A,@A+DPTR ;查表MOV DPTR,#4101H ;PA口作字形MOVX @DPTR,AMOV DPTR,#4102H ;PB口作字位MOV A,R3MOVX @DPTR,AACALL DELAY ;延时1msINC R0 ;修正显示缓冲区指针JNB ACC.7,LD1 ;若显示完一遍,则LD1RL A ;字位码左移一位此处A中的值是R3MOV R3,A ;送回R3AJMP LD0 ;显示下一个数码LD1: RET ;此处把每一个八位显示看成一次函数。
DISTAB: DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH ;(共阴极字形表) DELAY: MOV R7,#02H ;1ms延时DELAY1:MOV R6,#0FFHDELAY2:DJNZ R6,DELAY2DJNZ R7,DELAY1RETEND实验中遇到的问题:开始时没有预先在显示缓冲区中存入1~7,故实验显示的数据不是1、2、3、4、5、6、7、8,而是显示缓冲区中之前存在的无规则的一些数据,待向显示缓冲区重新赋值后,显示正常。
扩展要求编程如下:ORG 0000HLJMP MAINORG 1000HMAIN: MOV SP,#50HMOV 30H,#0A1HMOV 31H,#0C2HMOV 32H,#0D3HMOV 33H,#0F4HLCALL TRANMOV DPTR,#4100HMOV A,#0FHMOVX @DPTR,ALOOP: LCALL DISPLAYSJMP LOOPTRAN: MOV R1,#30H ;将30-31H里的十六进制数分成两位存在70-71H中MOV R0,#70HMOV R3,#04LD2: MOV A,@R1ANL A,#0FH ;取出低字节MOV @R0,AINC R0MOV A,@R1ANL A,#0F0H ;取出高字节SWAP A ;高低字节交换,将十六进制数的两位分开存放MOV @R0,AINC R0INC R1DJNZ R3,LD2RETDISPLAY:MOV R1,#0FEH ;显示部分同基本要求MOV R0,#70HMOV A,R1LD0: MOV DPTR,#4102HMOVX @DPTR,AMOV A, @R0MOV DPTR,#TABMOVC A,@A+DPTRMOV DPTR,#4101HMOVX @DPTR,ALCALL DELAYINC R0MOV A,R1JNB ACC.7,LD1RLAMOV R1,ASJMP LD0LD1: RETTAB: DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FHDB 77H,7CH,39H,5EH,79H, 71HDELAY: MOV R7,#02HDELAY1:MOV R6,#0FFHDELAY2:DJNZ R6,DELAY2DJNZ R7,DELAY2RETEND实验三查询式键盘实验1.实验目的(1)掌握查询式按键检测方法(2)掌握数码管动态扫描汇编语言的编制方法2.预习要点(1)按键检测的基本原理(2)数码管动态扫描显示方法3.实验设备计算机、单片机实验箱。
4.实验内容基本要求:接实验二的实验内容,通过实验板的4个按键电路,将按键的检测线连接到CPU 的p1.0~p1.3上。
当按下按键1到4时,在实验板显示电路(U16)分别对应显示1,2,3,4。
扩展要求:30H~33H中放置字母A~D,字母在LED上循环显示,默认的循环周期为50ms,当按下按键1到4时,A~D循环间隔分别变为1至4秒,无按键按下时,恢复默认的时间间隔。
根据程序要求得到如下程序流程图:基本要求编程如下:ORG 0000H MAIN: MOV 70H,#0MOV 71H,#1MOV 72H,#2MOV 73H,#3MOV 74H,#4MOV DPTR,#4100HMOV A,#03HMOVX @DPTR,A READKEY:MOV A,#0FFHMOV P1,AMOV A,P1JNB ACC.0,RP10JNB ACC.1,RP11JNB ACC.2,RP12JNB ACC.3,RP13 OFF: MOV R0,#70HMOV R3,#0FFHSJMP LD0RP10: MOV R0,#70HMOV R3,#0FEHAJMP LD0RP11: MOV R0,#71HMOV R3,#0FEHAJMP LD0RP12: MOV R0,#72HMOV R3,#0FEHAJMP LD0RP13: MOV R0,#73HMOV R3,#0FEHAJMP LD0LD0: MOV A,R3MOV DPTR,#4102HMOVX @DPTR,AMOV A,@R0MOV DPTR,#TABMOVC A,@A+DPTRMOV DPTR,#4101HMOVX @DPTR,AACALL DELAYAJMP MAINTAB: DB 06H, 5BH, 4FH, 66HDB 6DH, 7DH, 07H, 7FH DELAY: MOV R7,#02H DELAY1:MOV R6,#0FFH DELAY2: DJNZ R6,DELAY2DJNZ R7,DELAY1RETSJMP$END扩展要求编程如下:ORG 0000HLJMP MAINORG 1000HMAIN: MOV SP,#60HMOV 30H,#0AHMOV 31H,#0BHMOV 32H,#0CHMOV 33H,#0DHMOV A,#0FHMOV DPTR,#4100HMOVX @DPTR,AREADKEY:MOV A,#0FFHMOV P1,AMOV A,P1JNB ACC.0,RP10JNB ACC.1,RP11JNB ACC.2,RP12JNB ACC.3,RP13 OFF: MOV R7,#50AJMP DISPLAY RP10: MOV R7,#100AJMP DISPLAY RP11: MOV R7,#200AJMP DISPLAYRP12: MOV R7,#300AJMP DISPLAYRP13: MOV R7,#400AJMP DISPLAYDISPLAY: MOV R0,#30HMOV R2,#0FEHLD: MOV A,@R0MOV DPTR,#TABMOV A,@A+DPTRMOV DPTR,#4101HMOVX @DPTR,AMOV DPTR,#4102HMOV A,R2MOVX @DPTR,AACALL DELAYINC R0JNB ACC.3,LD1RL AMOV R2,AAJMP LDLD1: AJMP READKEYDELAY : MOV R6,#500DELAY1: DJNZ R6,DELAY1DJNZ R7,DELAYRETTAB: DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FHDB 77H,7CH,39H,5EH,79H, 71H实验四利用中断控制LED灯1.实验目的(1)掌握单片机中断的基本原理。
(2)掌握单片机中断程序的编制方法。
2.预习要点(1)单片机中断基本原理(2)中断程序编制方法3.实验设备计算机、单片机实验箱、信号发生器。
4.实验内容基本要求:将信号发生器输出的脉冲信号连接到CPU的INT0上,将CPU的P1.0到P1.7和8个红色LED灯连接,脉冲信号为5V、100Hz,每输入一百个脉冲LED灯亮一次,并且LED灯顺序循环移位一次,形成跑马灯。
扩展要求:在LED数码管上与跑马灯同步显示1~8,顺序为P1.0对应的灯亮时对应显示数字1,依次类推。
根据程序要求得到如下程序流程图:主程序流程图中断子程序流程图基本要求编程如下:ORG 0000HLJMP MAINORG 0003HLJMP L1MAIN:SETB IT0SETB EX0SETB EAMOV R0,#00HMOV P1,#0FEHL2:SJMP L2L1:INC R0CJNE R0,#64H,L3MOV R0,#00HMOV A,P1RL AMOV P1,AL3:RETI扩展实验程序:ORG 0000HAJMP MAINORG 0003HAJMP EXINT0ORG 0060HMAIN: MOV SP,#60HSETB IT0SETB EX0SETB EAMOV 30H,#0MOV 31H,#1MOV 32H,#3MOV 33H,#2MOV 34H,#5MOV 35H,#6MOV 36H,#7MOV 37H,#8 ;缓存器中送入1--8MOV R3,#00H ;用于计脉冲MOV P1,#00H ;关LED显示MOV R4,#01H ;控制跑马灯MOV R0,#30HMOV R5,#0FEHMOV R2,#8MOV DPTR,#4100HMOV A,#03HMOVX @DPTR,A ;方式控制字送8155命令口SJMP $EXINT0:INC R3CJNE R3,#64H,NEXT ;计算脉冲达到100MOV R3,#00H ;清零,重新计数MOV A,R4MOV P1,A ;跑马灯显示RL AMOV R4,ADISPLAY1:MOV R0,#30HMOV R5,#0FEHMOV A,@R0MOV DPTR,#TABMOVC A,@A+DPTRMOV DPTR,#4101HMOVX @DPTR,AMOV DPTR,#4102HMOV A ,R5MOVX @DPTR,AACALL DELAY ;INC R0DJNZ R2,NEXTMOV R2,#8MOV R0,#30HNEXT: RETITAB: DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FHDELAY:MOV R7,#05HDELAY1:MOV R6,#0FFHDELAY2:DJNZ R6,DELAY2DJNZ R7,DELAY1RETEND实验五单相方波波形发生器1.实验目的(1)掌握单片机定时器基本原理和使用方法。