单片机原理与应用技术实验报告(实验项目:发光二极管闪烁)
- 格式:doc
- 大小:256.50 KB
- 文档页数:3
单片机原理及应用综合性实验报告单片机原理及应用综合性实验报告姓名:学号班级:指导教师:单片机原理及应用实验报告实验项目名称:键盘、数码管显示综合实验实验日期:2014.12.22 实验成绩:实验评定标准:一、实验目的1.通过实验,掌握单片机在输入输出口线不够用时,怎样扩展接口的方法来支持8位LED显示和16键盘集成实现。
2.熟悉8255、8279等芯片性能;掌握其编程方法。
3.掌握键盘子程序调试方法,掌握按一个键并将键值显示出来的编程方法,这是诊断硬件、测试硬件、产品开发、软件编程必须掌握的方法。
二、实验器材PC机一台以及Keil、Proteus软件表1 以8155为扩展方式的器件表表2 实验原理图元件清单表三、实验内容(一)基本内容1.编写并调试出一个键盘实验子程序2.用子程序调用方法,分别调用键盘子程序和显示子程序,将按一个键的键值,在数码管上显示出来。
3.通过8155芯片的扩展功能,建立描述线与数据线同步功能,如图3.1。
图3.1 键盘显示器原理图图3.2 数码管管脚及电路连接图(二)扩展内容模拟控制以红、绿、黄3个发光二极管表示交通信号灯。
还有有两位数码倒计时显示。
具体要求:上电红灯亮并且数码管倒计时30秒,最后5秒黄灯闪烁,倒计时完毕,绿灯亮并且数码管倒计时60秒,最后5秒黄灯闪烁,如此循环。
四、实验步骤(一)仿真实验过程:1. 打开Keil 程序,执行菜单命令“Project ”à“New Project ”创建“键盘数码管显示综合实验”项目,并选择单片机型号为AT89C52.BUS 。
GND ab c d e f g dpg f e d c b a (a)图4.1 创建工程图4.2 选择单片机类型2.执行菜单命令“File”à“New”创建文件,输入源程序,保存为“键盘数码管显示综合实验.A51或键盘数码管显示综合实验.c”。
在“Project”栏的File 项目管理窗口中右击文件组,选择“Add Files toGroup ‘Source Group1’”将源程序“键盘数码管显示综合实验.A51或键盘数码管显示综合实验.c”添加到项目中。
单片机原理及其应用实验指导书南通大学电气工程学院自动化教研室2011 年 3 月前言单片机目前已广泛应用在智能仪表、工业控制、家用电器等各个领域,成为现代电子系统的一个极其重要的组成部分,对于电类专业学生来说,掌握单片机知识,具备基本应用技能,才能符合当前社会对专业人才的要求。
单片机是一门应用性极强的课程,学生在掌握基本理论知识的基础上,更要通过实验训练,提高其调试动手能力,学会解决具体问题的思路和手段,具备初步的系统设计和调试能力。
因此,为了更好地做好单片机课程的软硬件实验,特编写本实验指导书,书中叙述了各实验的目的、要求,对于设计性实验,给出了列出了接线图、程序结构框图和清单。
学生按要求完成本实验指导书中的实验,可基本掌握MCS-51单片机的结构原理、接口技术以及程序设计技巧。
另外:一、所有实验都是相互独立的,次序上也没有固定的先后关系,在使用本书进行教学时,教师可根据教学要求,选择相应实验。
二、对同一问题的解决方法往往不是唯一的,欢迎各位指导教师在使用本实验指导书的过程中提出更完善的实验方案,指出书中的错误和不足,并希望大家反馈给我们,以便及时修改。
目录第一章集成开发环境简介 (1)第二章演示程序 (9)第三章实验项目 (15)实验一仿真环境熟悉,清零、拆字程序设计 (15)实验二内部、外部RAM数据传送程序设计 (17)实验三单片机I/O口实验 (18)实验四A/D、D/A转换实验 (20)实验五并行接口扩展实验 (24)第一章 集成开发环境简介Super ICES-51 80C51单片机实验仪使用当前流行的Keil C51开发软件,采用uVision2集成开发环境。
1.1 Keil C51简介Keil C51软件是德国Keil 公司开发的功能完善的C51开发软件,近年来在国内得到了迅速普及。
Keil 包括以下几个部分:uVision2 IDE 、C51编译器、A51汇编器、LIB 库管理器、BL51连接器/定位器、uVision 硬件调试器、RTX51实时多任务操作系统。
单片机控制发光二极管实验报告发光二极管广东石油化工学院单片机实验一实验报告实验报告实验一发光二极管实验学院: 电信学院专业:班级学生学号:实验时间一、实验目的1、掌握AT89C51 单片机IO 口的输入输出。
2、掌握用查表方式实现AT89C51 单片机IO 口的控制。
3、练习单片机简单延时子程序的编写。
4、熟练运用Proteus 设计、仿真AT89C51 系统。
二、实验内容1、编写延时子程序,延时时间为0.1S。
代码:void delay(){int i, j;for (i = 0; i 100; i++)for (j = 0; j 125; j++);}2、见图一。
通过AT89C51 单片机控制8 个发光二极管发光,实现亮点以由上到下循环移动,间隔时间为0.1S。
代码:#includereg51.h#includeintrins.hvoid delay(){int i, j;for(i = 0; i 100; i++)for(j = 0; j 125; j++);}void main(){P1 = 0xFE;while(1){P1 (转载于: 写论文网:单片机控制发光二极管实验报告)= _crol_(P1,1);delay();}}运行结果截图:图一3、见图一。
通过AT89C51 单片机控制8 个发光二极管发光,循环实现亮点由上到下移动1 次(间隔时间为0.2S),由下到上移动1 次(间隔时间为0.2S),闪烁1 次(即先全亮0.1S,再全灭0.1S)。
代码:#includereg51.h#define uchar unsigned char#define uint unsigned intvoid delay(){uint i, j;for (i = 0; i 100; i++){for (j = 0; j 128; j++){//delay 100ms, do nothing.}}}void shangXia(){uchar k;P1 = 0xFE;for (k = 0; k 8; k++){delay();P1 = _crol_(P1,1);}}void xiaShang(){uchar k;P1 = 0x7F;for (k = 0; k 8; k++){delay();P1 = _crol_(P1,-1);}}void main(){while(1){shangXia();xiaShang();}}截图与题一相同,增加由下至上。
实验报告一、实验目的1、掌握51单片机实验开发板的使用步骤。
2、以LED闪烁为例子,通过keil4软件进行汇编程序的输入、运行、调试、仿真。
3、掌握STC-ISP的使用方法,将程序下载到实验板中。
二、实验设计1、实验仪器、设备:计算机、型号为STC89C52RC的51单片机开发板2、软件:USB驱动软件、keil4开发软件、STC-ISP3、实验流程图设计:4、软件设计:1)keil4软件使用A.双击keil4标志,执行keil4软件B.在E盘中新建文件夹:zuoye1,以保存本实验中所产生的文件。
将计算机中原有的main.c文件复制到文件夹zuoye1中。
C.点击“project”“New uVision project”,给工程取名为zuoye1,保存在文件夹zuoye1中。
在新出现的窗口中选择“Atmel”“AT89C51”,按“OK”后在新出现的窗口选择“否”。
D.点击“file”“New”,新建一个原文件。
双击“source Group1 ”,添加main.c文件。
添加成功后将LED程序输入文件中。
#include<AT89X51.H>//=======================================#define uint unsigned int;#define uchar unsigned char;//=======================================uint x,y;uchar idx;//=======================================void main(void){P1_3 = 1;P0 = 0xff;idx=0;while(1){P1_3 = 0;P0 = ~(7<<idx);//add delayfor( x=0;x<250;x++ ){for( y=0;y<1000;y++ ){}}idx++;idx=(idx%8);}}//=======================================//endE、输入完成后,点击图标保存,再分别点击进行调试。
实验报告课程名称单片机实验实验项目LED灯闪烁实验专业班级姓名学号指导教师任国芳实验成绩2014年月日【实验目的】(4分)________________________________________________________________ ________________________________________________________________ ________________________________________________________________ ________________________________________________________________ 【实验环境】(6分)1.实验设备:______________________________________________________2.软件:__________________________________________________________ 【实验原理】(26分)1.连线方式(4分):_______________________________________________;2.完成下列表格:(16分)表1-1 LED灯闪烁原理3. P2.x= 时,对应的LED灯亮;当P2.x= 时,对应的LED灯灭;当P2的值为你的学号的后两位时,有_______个LED灯亮。
(6分)【实验内容】(64分)1.完成《实验指导书-LED灯闪烁实验》中汇编语言程序的编写和编译,请回答:1.1汇编语言源程序的扩展名是;汇编后产生的可执行程序的扩展名是;(4分)1.2程序运行结果描述:(10分)_________________________________________________________________________________________________ 2.请参照《实验指导书-LED灯闪烁实验》,按照自己学号的尾号,写出实现相应功能的程序:(50分)_______________________________________________________________ _______________________________________________________________ _______________________________________________________________ _______________________________________________________________ _______________________________________________________________ _______________________________________________________________ _______________________________________________________________ _______________________________________________________________ _______________________________________________________________ _______________________________________________________________ _______________________________________________________________ _______________________________________________________________ _______________________________________________________________ _______________________________________________________________ _______________________________________________________________ _______________________________________________________________ _______________________________________________________________ 【实验心得】(5分)_______________________________________________________________ _______________________________________________________________ _______________________________________________________________【教师评语】指导教师签字:年月日。
单片机原理及应用的实验报告1. 引言在现代电子领域中,单片机技术的应用越来越广泛。
单片机(Microcontroller)是一种集成电路芯片,具有完整的处理器系统和外围设备。
它拥有小巧、灵活和强大的特点,适用于各种嵌入式系统的设计和应用。
本实验报告旨在介绍单片机的原理及其在实际项目中的应用。
2. 单片机的原理单片机是一种嵌入式微处理器,通常由中央处理器(CPU)、存储器、输入输出接口(I/O)、定时器、串行通信接口等部分组成。
其原理如下:•中央处理器(CPU):单片机的核心部件,负责执行各种指令和算术逻辑运算。
•存储器:包括随机存储器(RAM)和只读存储器(ROM),用于存储程序和数据。
•输入输出接口(I/O):用于与外部设备进行数据交互,如控制LED 灯、读取传感器数据等。
•定时器:用于产生精确的时间延时和定时触发操作。
•串行通信接口:用于和其他设备进行串行数据通信。
3. 单片机的应用单片机具有广泛的应用领域,下面列举了几个常见的应用实例:1.家电控制系统:使用单片机可以实现对家电设备的智能控制,如空调温度控制、灯光调节等。
2.汽车电子系统:单片机在汽车电子控制单元(ECU)中,用于控制发动机、变速器、制动系统等。
3.工业自动化:单片机可以应用于工业自动控制系统,如生产线上的自动化控制、温度监控等。
4.电子游戏机:单片机在电子游戏机中用于处理游戏逻辑和玩家输入。
5.智能穿戴设备:使用单片机可以实现智能手表、智能眼镜等穿戴设备的功能。
4. 单片机实验为了更好地理解单片机的原理和应用,我们进行了以下实验:4.1 LED闪烁实验这个实验旨在通过编程控制单片机,使LED灯以一定的频率闪烁。
实验步骤: 1. 连接单片机和LED灯,将LED的正极连接到单片机的IO口,负极连接到接地。
2. 编写程序,配置IO口为输出模式,并设置IO口的高低电平来控制LED的亮灭。
3. 将程序下载到单片机,运行程序。
4. 观察LED是否按照预期频率闪烁。
太原理工大学单片机原理与应用技术课程实验报告专业班级学号姓名指导教师LED 灯闪烁控制一、实验目的(1)掌握C语言、汇编语言编写单片机控制程序的方法;(2)掌握使用Keil C软件编写、编译、调试程序的方法;(3)掌握使用Proteus软件绘制电路原理图、硬件仿真和程序调试;(4)理解LED灯控制电路原理和延时程序的编写。
二、实验硬件和软件计算机1台,并安装Proteus软件和Keil C51软件。
三、实验任务在单片机I/O口上外接一个发光二极管LED,通过程序实现LED闪烁显示,即不停地一亮一灭,亮、灭持续时间均为0.2秒。
四、实验电路及分析实验电路如图所示,在P1.7口(也可选择其它端口)外接一个发光二极管D1,分析可知P1.7输出“0”时,D1点亮,P1.7输出“1”时D1熄灭。
LED 灯闪烁控制电路图五、实验程序编写1.程序编写(1)C语言程序#include <reg51.H>sbit D1=P1^7;void Delayms(unsigned int n){ unsigned int i, j;for(j=n; j>0;j--)for(i=112; i>0; i--);}int main( ){ while(1){ D1=0;Delayms(200);D1=1;Delayms(200);}}(2)程序流程图六、实验步骤1.利用Proteus软件绘制仿真电路图(1)打开Proteus软件,File→New Project进入工程创建向导,选择项目文件存放路径,项目文件名为“实验1.pdsprj”。
(2)创建原理图(schematic),默认模板为default,可根据电路规模选择合适的图纸大小。
(3)选择“Do not create a PCB layout”,即不绘制PCB图。
(4)选择第一项“No Firmware Project”,即不在Proteus平台下创建源程序。
单片机实习总结一实习目的1.通过对单片机小系统的设计、焊接、装配,掌握电路原理图及电子线路的基本焊接装配工艺、规范及注意事项;2.通过对系统板的测试,了解系统板的工作原理及性能,掌握元器件及系统故障的排除方法;3.掌握程序编制及调试方法,完成系统初始化、存储器操作、端口操作、键盘、显示等程序的编制及调试(汇编语言、C语言均可);4.通过单片机系统的硬件焊接、调试,程序的编制、调试及运行,与理论及实验的有机结合和指导教师的补充介绍,使学生掌握测控系统的工作原理、开发方法;5.培养学生解决实际问题的能力,提高对理论知识的感性认识。
二实习意义通过本实习不但可以单片机的软硬件的综合调试方法,而且可以熟练掌握电路原理图,激发对单片机智能型的探索精神,提高学生的综合素质,培养学生应用单片机实现工业控制系统的设计、开发与调试的能力。
在制作学习过程中,不但可以掌握软硬件的综合调试方法,而且可以是学生对单片机智能性产生强烈的欲望达到最大限度的掌握微机应用技术,软件及接口设计和数据采集与处理的技能,培养电综合实践素质的目的。
三系统基本组成及工作原理3.1 系统基本组成最小系统包括单片机的晶振、复位、电源、下载电路,以及简单的输入输出等模块,其框图如图1所示。
在基本档完成的前提下设计完成扩展模块,使显示信息更丰富,其框图如图2所示。
图1 最小系统框图图2 扩展总框图3.2 系统工作原理在单片机的P3口接12个发光二极管,通过外部中断、定时中断和位扫描等程序控制实现每个发光二极管指示灯闪烁。
将全部行线至于低电平,检验列线的状态,只要有一列的电平为底,则表示键盘中键被按下,而且闭合的键位于低电平线与4根行线相交叉的4个按键之中;若所有列线均为高电平,则表示键盘中无按键按下。
四 系统硬件设计4.1电路设计利用单片机的P1口扩展一个4×4的矩阵键盘;单片机的P3.0和P3.1连接联机通讯模块; P2.0-P2.3口作四位数码显示接口;P3.2—P3.7口做交通灯和循环灯接口。
51单片机实验报告一、引言51单片机是一种广泛应用于嵌入式系统开发的微控制器芯片。
本实验旨在通过对51单片机的实验研究,加深对该芯片的理解和应用。
二、实验一:LED灯闪烁控制本实验通过编写程序,控制51单片机上的LED灯以特定的频率闪烁。
为了实现这个目标,我们首先需要了解51单片机的引脚布局,确定LED灯的连接方式。
然后,通过编写相应的汇编程序,控制引脚的电平变化,从而实现LED灯的闪烁。
三、实验二:数码管显示数码管是一种常见的输出设备,通过控制引脚的输出来显示特定的数字。
本实验中,我们通过编写程序,实现通过51单片机控制数码管的显示。
通过对数码管的驱动原理和编程的学习,我们可以灵活地控制数码管的显示内容和频率。
四、实验三:蜂鸣器发声蜂鸣器是一种常见的声音输出设备,通过控制引脚的输出来产生特定的声音。
本实验中,我们通过编写程序,实现通过51单片机控制蜂鸣器的发声。
通过学习蜂鸣器的驱动原理和编程,我们可以根据需要产生不同频率和节奏的声音。
五、实验四:温湿度检测温湿度检测是一种常见的环境监测需求。
本实验中,我们通过引入温湿度传感器,实现通过51单片机获取环境的温度和湿度信息。
通过编写程序和读取传感器的数据,我们可以实时监测环境的温湿度,并进行相应的控制和反馈。
六、实验五:红外遥控红外遥控是一种常见的无线通信方式,通过发送和接收红外信号来实现远程控制。
本实验中,我们通过引入红外发射和接收模块,实现通过51单片机进行红外遥控。
通过编写相应的程序,设置红外遥控的编码和解码方式,我们可以实现对外部设备的遥控操作。
七、实验六:定时器应用定时器是51单片机中的重要模块,它可以实现定时和计数等功能。
本实验中,我们通过学习定时器的工作原理和编程,实现通过51单片机进行定时和计数的应用。
通过编写相应的程序和设置定时器的参数,我们可以实现不同的定时和计数功能,满足各种需要。
八、实验七:串口通信串口通信是一种常见的数据通信方式,通过串口接口发送和接收数据。
单片机实验--实验报告-LED灯闪烁实验
为了深入了解单片机,本次实验我们选取LED灯闪烁实验,研究单片机控制LED闪烁
的原理。
经过这次实验,初步了解了单片机实验的基本设备及操作步骤,掌握了单片机语
言操控LED进行简单应用。
实验做法如下:
一、设计流程:
1.实验目的
本次实验的目的是了解单片机的原理,掌握单片机语言的基本使用方法,编制可控制LED灯闪烁的程序,完成LED灯闪烁的控制。
2.实验设备
实验设备主要包括:单片机51系列主控板,51单片机芯片,备有LED等硬件。
3.原理描述
本次实验主要是利用单片机来实现LED灯发出的闪烁效果,将单片机的P0作为一个
数据口出口实现闪烁的控制,这里使用一个定时器定时,通过程序实现数据口的翻转,可
以实现LED的闪烁效果。
二、实验步骤:
1.硬件的准备及接线
准备所需要的硬件,将单片机的芯片插入51系列主控板,将LED灯接线到主控板上。
2.软件编译
打开Keil软件,创建一个单片机工程文件,然后调用单片机库函数,建立用于控制LED灯闪烁的相关函数。
3.程序下载
编译、链接生成hex文件,将hex文件下载到单片机芯片上,运行程序(此处使用51编程器),完成LED的闪烁控制。
4.程序调试
完成程序的编写、下载即可实现LED的闪烁,对程序做个完整的测试,保证程序的可
靠性。
单片机原理及应用实验报告一、引言单片机(Microcontroller Unit,简称MCU)是一种集成电路芯片,内部集成了微处理器、存储器、输入输出接口和定时器等功能模块,广泛应用于各种电子设备和控制系统中。
本实验报告将介绍单片机的基本原理以及其在实际应用中的实验。
二、单片机的基本原理单片机的核心是微处理器,它负责执行程序指令。
单片机的存储器包括程序存储器(Program Memory)和数据存储器(Data Memory)。
程序存储器用于存储程序指令,数据存储器用于存储数据和中间结果。
单片机通过输入输出接口与外部设备进行通信,通过定时器来控制程序的执行时间。
三、单片机的应用实验1. LED闪烁实验LED闪烁实验是单片机入门实验的经典案例。
通过控制单片机的输出口,周期性地改变LED的状态,从而实现LED的闪烁效果。
这个实验可以帮助初学者了解单片机编程的基本概念和操作。
2. 温度测量实验温度测量实验可以通过连接温度传感器和单片机的输入口,实时地获取环境温度,并通过数码管或LCD显示器来显示温度数值。
这个实验可以帮助学生掌握单片机输入输出口的使用方法,以及模拟信号的处理和显示。
3. 蜂鸣器控制实验蜂鸣器控制实验可以通过连接蜂鸣器和单片机的输出口,实现对蜂鸣器的控制。
通过编写程序,可以使蜂鸣器发出不同的声音,如单调的蜂鸣声、警报声等。
这个实验可以帮助学生学习单片机的数字输出和PWM(脉冲宽度调制)技术。
4. 电机控制实验电机控制实验可以通过连接电机和单片机的输出口,实现对电机的控制。
通过编写程序,可以控制电机的转动方向和速度。
这个实验可以帮助学生理解单片机输出口的电流和电压特性,以及电机的控制原理。
5. 红外遥控实验红外遥控实验可以通过连接红外接收器和单片机的输入口,实现对红外遥控信号的解码和处理。
通过编写程序,可以实现对各种红外遥控器的解码和按键处理。
这个实验可以帮助学生学习单片机输入口的中断处理和红外通信原理。
单片机原理及应用实验
单片机是一种微型计算机,它集成了中央处理器、内存、输入输出端口和其他外设接口等功能模块在一个芯片上。
单片机通过程序控制,能够完成各种处理任务,因此在很多电子产品中得到了广泛的应用。
单片机的工作原理是通过电子信号实现的。
当外部设备或传感器与单片机连接后,单片机可以通过输入输出端口收集、处理和输出数据。
单片机内部的中央处理器执行存储在其内部存储器中的程序,通过运算和逻辑操作控制外部设备或实现其他功能。
单片机的应用实验非常丰富。
下面介绍几个常见的实验:
1. LED闪烁实验:连接一个或多个LED到单片机的输出端口,通过编写程序控制LED的亮灭,实现不同的闪烁效果。
2. 温度测量实验:通过连接温度传感器到单片机的输入端口,采集传感器输出的模拟信号,进行模数转换后得到温度值,并通过输出端口显示或者通过通信接口传输到其他设备。
3. 蜂鸣器控制实验:连接蜂鸣器到单片机的输出端口,通过编写程序控制蜂鸣器的开关,实现不同的声音和音乐效果。
4. 数码管显示实验:连接数码管到单片机的输出端口,通过编写程序控制数码管的显示,实现数字、字符和动画等效果。
5. 无线通信实验:通过单片机的通信接口连接无线模块,实现与其他设备的无线数据传输,可以用于远程控制、传感器网络等应用。
以上是单片机原理及应用实验的简要介绍,单片机在电子技术领域有着广泛的应用前景,通过不断学习和实践,可以进一步掌握其原理和应用。
实验二:发光二极管
一、实验目的:
1、实现第一个发光二极管不停闪烁的功能。
2、先进行实验板上的LED1管脚定义:sbit led1=P1^0;//P1^0是我所购买的单片机实验板上的LED1管脚。
用led1代替管脚来控制工作,为了方便。
3、通过for循环控制闪烁。
二、实验原理
当P1^0端为低电平时,发光二极管工作,点亮。
当P1^0端为高电平时,发光二极管不工作,熄灭。
三、实验原理图
四、程序框图
五、实验源程序
#include <reg52.h>
sbit led1=P1^0;
unsigned int a;
void main()
{
while(1)
{
led1=0;
for(a=0;a<50000;a++);
led1=1;
for(a=0;a<50000;a++);
}
}
六、实验总结
在实验过程中,主要问题是在闪烁的问题上,需要了解for循环的作用。
单片机原理及应用实验报告实验课程:单片机原理及应用实验项目:单片机控制LED灯亮灭专业班级:学号:姓名:实验日期:实验一单片机控制LED灯实验.一、实验目的1、进一步掌握Keil的使用,熟悉单片机C语言编程。
2、学习I/O口的使用方法。
二、实验原理发光二级管是半导体二极管的一种,可以把电能转化为光能,常简写为LED。
发光二极管与普通二极管一样是由一个PN结组成,也具有单向导电性。
只要加在发光二极管两端的电压超过它的导通电压(一般为1.7V-1.9V)它就会导通,而当流过它的电流超过一定电流时(一般2-3mA)它就会发光。
LED常用在MCS-51单片机中指示单片机的某个开关量的状态。
对单片机的控制,其实就是对I/O口(单片机引脚)的控制。
单片机共四个端口,P0、P1、P2、P3;每个端口分别有8个引脚P0.0-P0.7、P1.0-P1.7、P2.0-P2.7、P3.0-P3.7;这32个引脚既可以作输出脚,又可以作输入脚。
作输出脚时,单片机可以控制指示灯、数码管、电机等外部器件;作输入脚时,可以“感受”按键、开关、传感器等外部器件(例如接收数据-此就是作为输入脚的),单片机的每个引脚都是可以分开控制的,即独立的给高或者低电平。
想要点亮一个小灯,首先要将小灯与单片机的一个I/O 口连接好,然后将此引脚给高或者低电平,接着这个小灯就可以按照你给的电平实现点亮或熄灭了。
三、硬件电路设计LED模块排线接口如图3-1所示。
依据实验原理,只要将所需控制的LED 对应排线引脚连接到单片机一个I/O口即可。
1、连接方法:JP11(P2)和JP1和LED灯的JP1用8PIN排线连接起来。
2、硬件说明:使用单片机的P2口来驱动8个LED,发光二极管的阳极接高电平,故P2口为低电平时,就可以驱动其点亮。
四、软件设计1.单灯D3闪烁#include<reg51.h>void delay(void) //延时程序{unsigned int i;for(i=0;i<20000;i++);}void main(void){while(1){}2、双4只 LED 灯(D1、D3、D5、D7 与D2、D4、D6、D8)交替闪烁#include<reg51.h> P2=0xfb; //灯亮delay(); //延时P2=0xff; //灯灭 delay(); //延时 }#define uint unsigned int#define uchar unsigned charvoid delay();void main(){while(1)}void delay() //延时程序{}3、8只LED灯(D1、D2、D3、D4、D5、D6、D7、D8)流水灯显示 #include<reg51.h>void delay(void){unsigned char i,j;for(i=0;i<250;i++) } for(j=0;j<250;j++); uint x,y; for(x=100;x>0;x--) for(y=600;y>0;y--); { } P2=0xaa; //1010 1010 delay(); P2=0x55; //0101 0101 delay();void main(){while(1)} { P2=0xfe; delay(); P2=0xfd; delay(); P2=0xfb; delay(); P2=0xf7; delay(); P2=0xef; delay(); P2=0xdf; delay(); P2=0xbf; delay(); P2=0x7f; delay(); }三、实验结果分析:刚开始不是很熟悉,无法按照老师所讲的进行试验,反复操作后,完成了试验。
微处理器原理与应用实验报告姓名:李声勇同组人:袁钟达,张秋实学号:1080510123班级:0805101指导教师:张云院系:电子与信息工程学院1 实验一简单I/O口扩展实验(一)交通灯控制实验1.1实验要求扩展实验箱上的74LS273作为输出口,控制八个发光二极管燃灭,模拟交通灯管理。
1.2实验目的1.学习在单片机系统中扩展简单I/O接口的方法2.学习数据输出程序的设计方法3.学习模拟交通灯控制的实现方法1.3实验原理要完成本实验,首先必须了解交通路灯的燃灭规律。
本实验需要用到实验箱上八个发光二极管中的六个,即红、黄、绿各两个。
不妨将L1、L3、L5作为东西方向的指示灯,将L2、L4、L6作为南北方向的指示灯。
而交通灯的燃灭规律为:初始态是两个路口的红灯全亮,之后,东西路口的绿灯亮,南北路口的红灯亮,东西方向通车,延时一段时间后,东西路口绿灯灭,黄灯开始闪烁。
闪烁若干次后,东西路口红灯亮,而同时南北路口的绿灯亮,南北方向开始通车,延时一段时间后,南北路口的绿灯灭,黄灯开始闪烁。
闪烁若干次后,再切换到东西路口方向,重复上述过程。
各发光二极管共阳极,阴极接有与非门,因此使其点亮应使相应输入端为高电平。
1.4 实验内容(包括实验电路和程序流程图)1.5 实验结果成功模拟交通灯管制系统,红绿灯方向指示正常,黄灯闪烁正常1.6 实验结果讨论分析实验中发现交通灯在黄灯和红绿灯切换的时候有抖动和延时,初步估计是单片机定时系统不稳定以及程序的延时冗余没有添加所导致。
1.7 实验程序代码变量说明:R1、R2、R3用来做延时控制变量。
EW段表示东西导通南北截止;SNBY是SN STAND BY的缩写,表示南北准备;SN段表示南北导通东西截止。
延时控制由若干延时控制单元组合而成(参考了一下老师的程序)。
片选地址和显示单元调用了老师的部分程序。
PORT EQU 0CFA0H ;片选地址CS0CSEG AT 0000HLJMP BEGINCSEG AT 4100HBEGIN: MOV A,#03H ;1、2亮,其余灭ACALL SHOW ;调用273显示单元ACALL T03 ;延时3秒EW: MOV A,#12H ;东西导通;南北截止ACALL SHOWACALL T10 ;延时10秒MOV A,#02H ;东西截止;南北截止ACALL SHOWSNBY: MOV A,#04H ;东西黄灯闪烁;南北截止ACALL SHOWACALL T02 ;东西黄灯5次闪烁程序MOV A,#00HACALL SHOWACALL T02MOV A,#04HACALL SHOWACALL T02MOV A,#00HACALL SHOWACALL T02MOV A,#04HACALL SHOWACALL T02MOV A,#00HACALL SHOWACALL T02MOV A,#04HACALL SHOWACALL T02MOV A,#00H ACALL SHOWACALL T02MOV A,#04HACALL SHOWACALL T02MOV A,#00H ;东西黄灯闪烁程序结束ACALL SHOWACALL T02 ;延时0.2秒MOV A,#02H ;东西路口黄灯灭;南北路口红灯亮ACALL SHOWACALL T02 ;延时0.2秒MOV A,#03H ;东西南北都截止ACALL SHOWACALL T02 ;延时0.2秒MOV A,#21H ;东西截止;南北导通ACALL SHOWACALL T10 ;延时10秒MOV A,#01H ;东西截止;南北截止ACALL SHOWSN: MOV A,#08H ;东西截止,南北准备ACALL SHOW ;南北黄灯闪烁程序ACALL T02MOV A,#00HACALL SHOWACALL T02MOV A,#08HACALL SHOWACALL T02MOV A,#00HACALL SHOWACALL T02MOV A,#08HACALL SHOWACALL T02MOV A,#00HACALL SHOWACALL T02MOV A,#08HACALL SHOWACALL T02MOV A,#00HACALL SHOWACALL T02MOV A,#08HACALL SHOWACALL T02MOV A,#00H ;南北黄灯闪烁截止 ACALL SHOWACALL T02 ;延时0.2秒MOV A,#01H ;东西截止;南北截止 ACALL SHOWACALL T02 ;延时0.2秒MOV A,#03H ;东西南北都截止ACALL SHOWACALL T02 ;延时0.2秒JMP EW ;转EW循环T10: MOV R1,#100 ;延时10秒JMP TU1T03: MOV R1,#30 ;延时3秒JMP TU1T02: MOV R1,#02 ;延时0.2秒TU1: MOV R2,#200TU2: MOV R3,#126TU3: DJNZ R3,TU3DJNZ R2,TU2DJNZ R1,TU1RETSHOW: MOV DPTR,#PORT ;273显示单元MOVX @DPTR,ARETEND2 实验二简单I/O口扩展实验(二)2.1实验要求利用74LS244作为输入口,读取开状态,并将此状态通过发光二极管显示出来。
《单片机原理及应用》实验报告2017/2018 学年第 1 学期系别计算机学院专业软件工程班级 17软件工程班姓名 XXXXXX学号8888888888授课老师 ******实验一:流水灯实验1.实验目的(1)学习编译和仿真环境使用(2)学习P3口的使用方法(3)学习延时子程序的编写2实验内容(1)通过对P3口地址的操作控制8位LED流水点亮,从而认识单片机的接口;(2)通过改变并行口输出电平控制LED灯的点亮与否,通过延时程序控制亮灯时间。
3.实验运行结果图4.源代码//流水灯实验#include<reg51.h> //包含单片机寄存器的头文件sfr x=0xb0; //P3口在存储器中的地址是b0H,通过sfr可定义8051内核单片机//的所有内部8位特殊功能寄存器,对地址x的操作也就是对P1口的操作/****************************************函数功能:延时一段时间*****************************************/void delay(void){unsigned char i,j;for(i=0;i<255i++)for(j=0;j<255j++); //利用循环等待若干机器周期,从而延时一段时间 }/*****************************************函数功能:主函数******************************************/void main(void){while(1){x=0xfe; //第一个灯亮delay(); //调用延时函数x=0xfd; //第二个灯亮delay(); //调用延时函数x=0xfb; //第三个灯亮delay(); //调用延时函数x=0xf7; //第四个灯亮delay(); //调用延时函数x=0xef; //第五个灯亮delay(); //调用延时函数x=0xdf; //第六个灯亮delay(); //调用延时函数x=0xbf; //第七个灯亮delay(); //调用延时函数x=0x7f; //第八个灯亮delay(); //调用延时函数}}实验二:中断实验1.实验目的(1)熟悉51单片机中断初始化编程方法。
《单片机原理及应用》实验报告
实验名称:单片机灯光闪烁实验
实验目的:通过编写程序,控制单片机的输出口使得灯光从亮到灭以及从灭到亮交替
闪烁,加深对单片机输入输出口状态转换的理解和应用经验
实验器材:单片机开发板、LED灯
实验原理:
单片机是一种集成电路芯片,它具有微处理器的全部或者大部分功能,能够高效地完
成数据处理、控制计算等功能。
单片机是现代电子技术不可或缺的一部分,广泛应用于各
种智能控制系统、工业控制、家居自动化等领域。
本次实验使用STC89C52单片机作为开发芯片,利用单片机的输出口控制LED灯的闪烁。
STC89C52是一种高集成度、低功耗、高性能的单片机,具有丰富的外设资源和强大的数据处理能力,被广泛应用于各种控制系统中。
实验步骤:
2.在Keil uVision 5中新建一个project,命名为“LED_Flash”,编写程序如下:
#include <reg52.h>
sbit LED = P2^0; // 定义 LED 灯连接的单片机 IO 口
void delayMS(unsigned int ms) // 延时函数
{
unsigned int i, j;
for (i = 0; i < ms; i++)
{
for (j = 0; j < 1141; j++);
}
}
3.下载程序到单片机开发板中,将LED灯与单片机的IO口连接。
4.供电,实验开始。
实验结果:
实验现象符合预期,开发板上的LED灯以一定的频率闪烁,从亮到灭以及从灭到亮交替闪烁,程序能够在单片机中控制LED灯的亮灭。
***数学计算机科学系实验报告
专业:计算机科学与技术班级:实验课程:单片机原理与应用技术姓名:学号:实验室:硬件实验室
同组同学:
实验时间:2013年3月20日指导教师签字:成绩:
实验项目:发光二极管闪烁
一实验目的和要求
1.使用单片机的P1.5口做输出口,使该位发光二极管闪烁。
2.掌握单片机使用。
二实验环境
PC机一台,实验仪器一套
三实验步骤及实验记录
1.在pc机上,打开Keil C。
2.在Keil C中,新建一个工程文件,点击“Project->New Project…”菜单。
3.选择工程文件要存放的路径 ,输入工程文件名 LED, 最后单击保存。
4. 在弹出的对话框中选择 CPU 厂商及型号。
5.选择好 Atmel 公司的 89c51 后 , 单击确定。
6.在接着出现的对话框中选择“是”。
7.新建一个 C51 文件 , 点击file菜单下的NEW,或单击左上角的 New File快捷键。
8.保存新建的文件,单击SAVE。
9.在出现的对话框中输入保存文件名MAIN.C,再单击“保存”。
10.保存好后把此文件加入到工程中方法如下 : 用鼠标在 Source Group1 上单击右键 , 然后再单击 Add Files to Group ‘Source Group 1'。
11.选择要加入的文件 , 找到 MAIN.C 后 , 单击 Add, 然后单击Close。
12.在编辑框里输入代码如下:
#include "reg51.h" //包含头文件
sbit led=P1^5; //表示用led等效于P1^5, P1^0就是指头文件里定义的P1寄存器的第5BIT
#define uchar unsigned char
#define uint unsigned int
delay(uint time) //int型数据为16位,所以最大值为65535 {
uint i,j; //定义变量i,j,用于循环语句
for(i=0;i<time;i++) //for循环,循环50*time次
for(j=0;j<50;j++); //for循环,循环50次
}
void main() //主函数
{
while(1) //进入while死循环
{
led=~led; //led电平取反来控制LED亮灭
delay(5000); //延时,修改延时即可修改闪烁频率
}
}
13.单击快捷键或单击Project/Rebuild all the files,如果在错误与警告
处看到 0 Error(s) 表示编译通过。
14.单击Options for Target,单击 Output, 选中 Create HEX Fi。
再单击“确定”,再次编译产生HEX文件。
15.STC-ISP 软件烧写程序,步骤如下:
步骤1、选择单片机型号STC12C5A60S2。
步骤2、打开程序文件(后缀为.HEX 的文件)。
在相应工程下找到待下载的HEX
文件,点击打开即可。
步骤3、选择串行口COM3。
步骤4、用USB线连接电脑和主板,将主板和核心板上的电源都关闭,点击“Download下载”,打开核心板上的电源开关(注意不是主板上的电源开关),
等待完成下载。
16.在单片机上,用1位杜邦线将J8_5与J13_1连接。
17.打开单片机电源开关,观察现象。
四实验结果与分析
发光二极管闪烁。