单片机原理实验报告
- 格式:doc
- 大小:264.50 KB
- 文档页数:18
单片机实验原理单片机(Microcontroller)是嵌入式系统中常用的一种微型计算机系统,它集成了处理器、存储器、输入/输出接口以及各种外围设备接口等功能于一芯片之中。
单片机实验原理是指通过实验来研究和验证单片机的工作原理和应用。
一、单片机的基本原理单片机原理的核心是其内部结构,它主要分为中央处理器(CPU)、存储器、输入/输出(I/O)接口和定时/计数器等模块。
1. 中央处理器(CPU)中央处理器是单片机的核心,负责执行各种指令和数据处理操作。
它包括运算器、控制器和寄存器等组成部分,通过解码和执行内存中的指令来实现计算和控制功能。
2. 存储器存储器用于存储程序和数据。
单片机通常具有不同类型的存储器,如闪存(Flash Memory)用于存储程序代码,静态随机存取存储器(SRAM)用于数据存储等。
3. 输入/输出接口(I/O)输入/输出接口用于与外部设备进行数据交换。
常见的输入设备包括键盘、按键、传感器等,输出设备包括LED、数码管、液晶显示屏等。
通过输入/输出接口,单片机可以与外界进行数据交互。
4. 定时/计数器定时/计数器广泛应用于计时、脉冲计数、频率测量等。
通过定时/计数器,单片机可以进行时间控制和精确计数。
二、单片机实验方法与步骤进行单片机实验需要按照一定的步骤进行,以确保实验的顺利进行和结果的准确性。
1. 实验目的与设计在进行单片机实验之前,首先确定实验的目的。
根据实验要求和目的,设计实验的硬件连接电路和软件程序。
2. 准备实验材料与工具根据实验设计,准备所需的单片机开发板、传感器、按键、显示屏等硬件设备,以及相应的软件工具,如编译器和下载工具等。
3. 连接硬件电路按照实验设计,将各个硬件设备按照连接图连接到单片机开发板上。
确保电路连接正确可靠。
4. 编写程序代码根据实验设计,使用相应的编程语言,编写实验所需的程序代码。
代码应该符合单片机的编程规范,并考虑实验的特殊要求。
5. 下载程序到单片机使用下载工具将编写好的程序代码烧录到单片机中。
一、实验目的1. 熟悉51单片机的基本结构和工作原理。
2. 掌握51单片机的I/O口编程方法。
3. 学习蜂鸣器的驱动原理和应用。
4. 通过实验,提高动手实践能力和问题解决能力。
二、实验原理蜂鸣器是一种将电信号转换为声音信号的器件,常用于产生按键音、报警音等提示信号。
根据驱动方式,蜂鸣器可分为有源蜂鸣器和无源蜂鸣器。
1. 有源蜂鸣器:内部自带振荡源,将正负极接上直流电压即可持续发声,频率固定。
2. 无源蜂鸣器:内部不带振荡源,需要控制器提供振荡脉冲才能发声,调整提供振荡脉冲的频率,可发出不同频率的声音。
在本次实验中,我们使用的是无源蜂鸣器。
51单片机通过控制P1.5端口的电平,产生周期性的方波信号,驱动蜂鸣器发声。
三、实验器材1. 51单片机实验板2. 蜂鸣器3. 连接线4. 电路焊接工具5. 编程软件(如Keil)四、实验步骤1. 电路连接:- 将蜂鸣器的正极连接到51单片机的P1.5端口。
- 将蜂鸣器的负极接地。
2. 程序编写:- 使用Keil软件编写程序,实现以下功能:1. 初始化P1.5端口为输出模式。
2. 通过循环,不断改变P1.5端口的电平,产生方波信号。
3. 调整方波信号的频率,控制蜂鸣器的音调。
3. 程序下载:- 将程序下载到51单片机中。
4. 实验观察:- 启动程序后,观察蜂鸣器是否发声,以及音调是否与程序设置一致。
五、实验结果与分析1. 实验结果:- 成功驱动蜂鸣器发声,音调与程序设置一致。
2. 结果分析:- 通过实验,我们掌握了51单片机的I/O口编程方法,以及蜂鸣器的驱动原理。
- 在程序编写过程中,我们学习了方波信号的生成方法,以及如何调整方波信号的频率。
六、实验总结本次实验成功地实现了51单片机控制蜂鸣器发声的功能,达到了预期的实验目的。
通过本次实验,我们提高了以下能力:1. 对51单片机的基本结构和工作原理有了更深入的了解。
2. 掌握了51单片机的I/O口编程方法。
3. 学习了蜂鸣器的驱动原理和应用。
单片机原理与应用实验报告单片机是一种集成电路,可以在内部集成处理器、内存、输入/输出接口和时钟等多种功能,同时也可以通过编程实现各种应用。
单片机已经广泛应用于工业控制、家电控制、汽车电子、医疗设备等领域。
本实验旨在深入探究单片机的原理和应用,通过实验来加深对单片机的理解和认识。
实验原理单片机由CPU、存储器、I/O接口和时钟四个部分组成。
其中,CPU是单片机最核心的部分,它负责处理各种指令。
存储器包括ROM和RAM,ROM用于存储程序和常量数据,而RAM用于存储变量数据。
I/O接口用于连接外部设备,如传感器、执行器等,时钟用于提供CPU的时钟信号。
实验器材本实验采用的单片机为AT89S52,其主要特点包括:1. 8位CPU,运行频率为12MHz;2. 8KB Flash存储器,可存储程序和常量数据;3. 256字节RAM存储器,用于存储变量数据;4. 32个I/O口,可连接外部设备;5. 两个定时器/计数器,可用于计时和计数;6. 串口通信接口,可用于与PC机通信。
实验内容本实验共包括四个部分,分别是LED闪烁、数码管显示、按键输入和串口通信。
下面分别介绍每个部分的实验内容。
1. LED闪烁LED闪烁是单片机应用中最基本的实验之一。
本实验采用的是P0口控制LED的亮灭。
具体步骤如下:(1)设置P0口为输出口;(2)每隔一定时间,将P0口的值翻转一次,即可实现LED的闪烁。
2. 数码管显示数码管显示是单片机应用中比较常见的实验之一。
本实验采用的是P2口控制数码管的显示。
具体步骤如下:(1)设置P2口为输出口;(2)编写程序将要显示的数值转换成相应的数码管编码;(3)将编码输出到P2口,即可实现数码管的显示。
3. 按键输入按键输入是单片机应用中比较常见的实验之一。
本实验采用的是P3口控制按键输入。
具体步骤如下:(1)设置P3口为输入口;(2)编写程序检测P3口的状态,判断是否有按键按下;(3)如果有按键按下,则执行相应的操作。
单片机实验一-加法器实验报告南昌大学实验报告学生姓名:学号:专业班级:实验类型:□验证□综合■设计□创新实验日期:实验成绩:实验一单片机软件实验—1至100求和(一)实验目的1.掌握51单片机Keil软件集成开发环境。
2.学习使用汇编语言编写应用程序。
(二)设计要求熟悉51单片机的Keil软件集成开发环境,使用汇编语言编写“1+2+3+…+100”的程序。
(三)实验原理类似C语言里的循环语句,从1开始加,利用CJNE判断是否已加到100,从而进行循环计数。
(四)实验设备装有Keil4的电脑一台(五)实验结果计算结果高8位r3为0x13,低8位r4为0xba,即0x13ba,十进制数5050。
(六)结果讨论与心得体会实验结果和预期结果一致。
以前就用过Keil编程C51,所以使用起来没有什么障碍。
第一次自己编汇编程序,感觉汇编和C还是有很多相通之处,有很多思想和方法可以借鉴。
(七)附录:实验源代码ORG 0000H ;程序运行入口LJMP M AIN ;跳向主程序MAINORG 0030H ;主程序入口MAIN: MOV R2,#01H ;给R2赋初值1,从1开始加MOV R3,#00H ;R3用于存放最终结果的高8位MOV R4,#00H ;R4用于存放最终结果的低8位START: CLR C;Cy位清零CJNE R2,#65H,LOOP ;判断R2是否等于101,如果不相等,就跳到LOOPSJMP RESULT ;R2等于101时,表示已经完成1加到100的运算,跳转到RESULT LOOP: MOV A,R2 ;将R2的值移入累加器ADD A,R4 ;将R4的值加到累加器里MOV R4,A ;将累加器的值移入R4,作为相加后结果的低8位MOV A,R3 ;将R3的值移入累加器ADDC A,#00H ;累加器加0,并且带进位相加,这样做就把低8位进位加上去了MOV R3,A ;将累加器的值移入R3,作为相加后结果的高8位INC R2 ;R2的值加1,递增,作为下一个加数SJMP START ;跳转到START,继续相加RESULT: SJMP RESULT ;显示结果END ;结束。
题目实验1 P1口实验一一、实验目的:1.学习P1口的使用方法。
2.学习延时子程序的编写和使用。
二、实验设备:CPU挂箱、8031CPU模块三、实验内容:1.P1口做输出口,接八只发光二极管,编写程序,使发光二极管循环点亮。
2.P1口做输入口,接八个按纽开关,以实验箱上74LS273做输出口,编写程序读取开关状态,在发光二极管上显示出来。
四、实验步骤:1、打开CPU挂箱,正确安装8031CPU模块,指导显示屏上显示“199502”字样2、执行程序1(T1_1.ASM)时:P1.0~P1.7口接发光二极管L1~L8。
执行程序2(T1_1.ASM)时:P1.0~P1.7口接平推开关K1~K8;74LS273的O0~O7接发光二极管L1~L8;74LS273的片选端CS273接CS0。
3、打开软件,选择相应的COM口和波特率,电脑与CPU挂箱正确连接上后,软件窗口的下端会显示已连接上,相应的CPU挂箱显示屏上会显示“C ”字样。
4、在软件上选择新建,新建文件类型为ASM51,新建好后,编写程序。
5、程序编写好后,选择保存,然后进行编译,调试,运行程序。
6、观察CPU挂箱上硬件的运行是否与设计的一样,否则进行相应的修改和调试。
五、注意事项1、P1口为准双向口,P1口的每一位都能独立地定义为输入位或输出位。
作为输入位时,必须向锁存器相应位写入“1”,该位才能作为输入。
8031中所有口锁存器在复位时均置为“1”,如果后来在口锁存器写过“0”,在需要时应写入一个“1”,使它成为一个输入。
2、延时程序的实现,采用指令循环来实现,本实验系统晶振为 6.144MHZ,则一个机器周期为12÷6.144us即1÷0.512us。
现要写一个延时0.1s的程序,可大致写出如下: MOV R7,#X (1)X为外循环的次数,放在R7DEL1:MOV R6,#200 (2)200为内循环的次数,放在R6DEL2:DJNZ R6,DEL2 (3)执行内循环DJNZ R7,DEL1 (4)判断R7是否为0,是否结束循环上面MOV、DJNZ指令均需两个机器周期,所以每执行一条指令需要1÷0.256us,现求出X 值:1÷0.256+X(1÷0.256+200×1÷0.256+1÷0.256)=0.1×10⁶指令(1)指令(2)指令(3)指令(4)所需时间所需时间所需时间所需时间所以X=(0.1×10⁶-1÷0.256)/(1÷0.256+200×1÷0.256+1÷0.256)=127D=7FH 经计算得X=127。
单片机原理及接口技术实验报告一、引言单片机(Microcontroller)是一种集成为了处理器、存储器和各种接口电路的微型计算机系统。
它具有体积小、功耗低、成本低等优点,广泛应用于嵌入式系统、自动化控制、电子设备等领域。
本实验旨在深入了解单片机的原理和接口技术,并通过实验验证相关理论。
二、实验目的1. 理解单片机的基本原理和结构。
2. 掌握单片机与外部器件的接口技术。
3. 进一步培养实际操作能力和解决问题的能力。
三、实验仪器与材料1. 单片机开辟板2. 电脑3. 串口线4. LED灯5. 蜂鸣器6. 数码管7. 按键开关8. 电阻、电容等元件四、实验内容与步骤1. 单片机原理实验1.1 单片机的基本结构单片机由中央处理器(CPU)、存储器(RAM、ROM)、输入输出接口(I/O)、定时器/计数器、串行通信接口等组成。
通过学习单片机的基本结构,我们可以了解各个部份的功能和作用。
1.2 单片机的工作原理单片机的工作原理是指单片机在不同工作模式下的内部状态和运行规律。
通过学习单片机的工作原理,我们可以更好地理解单片机的工作过程,为后续的实验操作提供基础。
2. 单片机接口技术实验2.1 LED灯接口实验将LED灯与单片机相连,通过控制单片机的输出口电平,控制LED灯的亮灭。
通过实验,我们可以学习到单片机的输出接口的使用方法。
2.2 蜂鸣器接口实验将蜂鸣器与单片机相连,通过控制单片机的输出口电平和频率,控制蜂鸣器的声音。
通过实验,我们可以学习到单片机的输出接口的使用方法。
2.3 数码管接口实验将数码管与单片机相连,通过控制单片机的输出口电平和数据,显示不同的数字。
通过实验,我们可以学习到单片机的输出接口和数码管的使用方法。
2.4 按键开关接口实验将按键开关与单片机相连,通过检测单片机的输入口电平,实现按键的功能。
通过实验,我们可以学习到单片机的输入接口的使用方法。
五、实验结果与分析1. 单片机原理实验结果通过学习单片机的基本结构和工作原理,我们深入了解了单片机的内部组成和工作过程,为后续的接口技术实验打下了基础。
51单片机实验报告一、引言51单片机是一种广泛应用于嵌入式系统开发的微控制器芯片。
本实验旨在通过对51单片机的实验研究,加深对该芯片的理解和应用。
二、实验一:LED灯闪烁控制本实验通过编写程序,控制51单片机上的LED灯以特定的频率闪烁。
为了实现这个目标,我们首先需要了解51单片机的引脚布局,确定LED灯的连接方式。
然后,通过编写相应的汇编程序,控制引脚的电平变化,从而实现LED灯的闪烁。
三、实验二:数码管显示数码管是一种常见的输出设备,通过控制引脚的输出来显示特定的数字。
本实验中,我们通过编写程序,实现通过51单片机控制数码管的显示。
通过对数码管的驱动原理和编程的学习,我们可以灵活地控制数码管的显示内容和频率。
四、实验三:蜂鸣器发声蜂鸣器是一种常见的声音输出设备,通过控制引脚的输出来产生特定的声音。
本实验中,我们通过编写程序,实现通过51单片机控制蜂鸣器的发声。
通过学习蜂鸣器的驱动原理和编程,我们可以根据需要产生不同频率和节奏的声音。
五、实验四:温湿度检测温湿度检测是一种常见的环境监测需求。
本实验中,我们通过引入温湿度传感器,实现通过51单片机获取环境的温度和湿度信息。
通过编写程序和读取传感器的数据,我们可以实时监测环境的温湿度,并进行相应的控制和反馈。
六、实验五:红外遥控红外遥控是一种常见的无线通信方式,通过发送和接收红外信号来实现远程控制。
本实验中,我们通过引入红外发射和接收模块,实现通过51单片机进行红外遥控。
通过编写相应的程序,设置红外遥控的编码和解码方式,我们可以实现对外部设备的遥控操作。
七、实验六:定时器应用定时器是51单片机中的重要模块,它可以实现定时和计数等功能。
本实验中,我们通过学习定时器的工作原理和编程,实现通过51单片机进行定时和计数的应用。
通过编写相应的程序和设置定时器的参数,我们可以实现不同的定时和计数功能,满足各种需要。
八、实验七:串口通信串口通信是一种常见的数据通信方式,通过串口接口发送和接收数据。
单片机的原理及应用实验报告一、引言单片机(Microcontroller Unit,简称MCU)是集成了微处理器核心、存储器、输入输出接口及其他外围设备的一种特殊集成电路芯片。
它具有存储能力、运算能力和控制能力,广泛应用于各种电子设备和系统中。
本实验旨在探究单片机的工作原理,并通过实际应用实验来进一步理解其使用技术与方法。
二、实验目的1.了解单片机的基本结构和工作原理;2.学习如何使用单片机进行控制和数据处理;3.掌握单片机的简单编程技巧;4.探索和实现基本的单片机应用。
三、实验仪器和材料•单片机开发板•USB数据线•LED灯•电阻、电容等基本电子元件四、实验步骤1.硬件连接步骤:–将单片机开发板连接到电脑上,通过USB数据线进行供电和通信。
–将LED灯接入单片机的IO引脚。
–连接其他所需的电子元件,如电阻、电容等。
2.单片机编程步骤:–打开开发环境,使用C语言编写所需的程序。
–确定需要使用的IO引脚和控制方式。
–编译并下载程序到单片机开发板上。
3.实验运行步骤:–按照程序设计的要求,进行相应的操作和观察。
–通过观察LED灯的亮灭、闪烁等情况,验证单片机的控制和运算能力。
五、实验结果与分析在实验过程中,我们成功地编程控制了单片机开发板上的LED灯。
通过修改程序代码中的控制参数,我们可以实现LED灯的不同状态,例如常亮、闪烁、呼吸灯等效果。
这验证了单片机的控制和运算能力。
六、实验总结通过本实验,我们对单片机的原理和应用有了初步的了解。
单片机作为一种功能强大的集成电路芯片,在各种电子设备和系统中都有广泛的应用。
掌握单片机的编程技巧和使用方法对于电子领域的学习和研究都是至关重要的。
七、参考文献无以上是本次实验的实验报告,通过本次实验,我们深入理解了单片机的原理和应用,并成功完成了LED灯的控制实验。
希望通过这次实验的学习,能够对单片机的应用有更深入的认识,并为未来的学习和研究打下基础。
单片机原理及应用实验报告一、引言单片机(Microcontroller Unit,简称MCU)是一种集成电路芯片,内部集成了微处理器、存储器、输入输出接口和定时器等功能模块,广泛应用于各种电子设备和控制系统中。
本实验报告将介绍单片机的基本原理以及其在实际应用中的实验。
二、单片机的基本原理单片机的核心是微处理器,它负责执行程序指令。
单片机的存储器包括程序存储器(Program Memory)和数据存储器(Data Memory)。
程序存储器用于存储程序指令,数据存储器用于存储数据和中间结果。
单片机通过输入输出接口与外部设备进行通信,通过定时器来控制程序的执行时间。
三、单片机的应用实验1. LED闪烁实验LED闪烁实验是单片机入门实验的经典案例。
通过控制单片机的输出口,周期性地改变LED的状态,从而实现LED的闪烁效果。
这个实验可以帮助初学者了解单片机编程的基本概念和操作。
2. 温度测量实验温度测量实验可以通过连接温度传感器和单片机的输入口,实时地获取环境温度,并通过数码管或LCD显示器来显示温度数值。
这个实验可以帮助学生掌握单片机输入输出口的使用方法,以及模拟信号的处理和显示。
3. 蜂鸣器控制实验蜂鸣器控制实验可以通过连接蜂鸣器和单片机的输出口,实现对蜂鸣器的控制。
通过编写程序,可以使蜂鸣器发出不同的声音,如单调的蜂鸣声、警报声等。
这个实验可以帮助学生学习单片机的数字输出和PWM(脉冲宽度调制)技术。
4. 电机控制实验电机控制实验可以通过连接电机和单片机的输出口,实现对电机的控制。
通过编写程序,可以控制电机的转动方向和速度。
这个实验可以帮助学生理解单片机输出口的电流和电压特性,以及电机的控制原理。
5. 红外遥控实验红外遥控实验可以通过连接红外接收器和单片机的输入口,实现对红外遥控信号的解码和处理。
通过编写程序,可以实现对各种红外遥控器的解码和按键处理。
这个实验可以帮助学生学习单片机输入口的中断处理和红外通信原理。
单片机原理实验报告班级:姓名:学号:实验日期:成绩:实验一基本操作实验目的:熟悉伟福仿真机软件的基本操作,熟悉MCS-51指令。
实验内容A:数据传送程序实验程序:实验步骤:(1)从起始地址开始全速运行程序Ⅰ,检查运行结果, 外部数据窗口中7000H~700FH单元的内容皆为00H;(2)按要求修改程序如Ⅱ,用单步/跟踪运行程序, 查看寄存器和外部数据窗口;(3)在PLUS处设置断点,从起始地址开始全速运行程序,查看寄存器和外部数据窗口;(4)清除断点,用运行到当前行方式将程序运行到PLUS的下一条指令,查看运行结果是否正确。
实验内容B: 1 , 当X>0时求符号函数Y= 0 , 当X=0时-1 , 当X<0时实验程序:实验步骤:(1)准备好三个有代表性的数据,分三次用单步/跟踪方式运行程序,注意PC指针的变化;当(40H)= _____(X>0) 时,ACC.7= 0 , 运行后(41H)= _01H_____(Y= 1),当(40H)= _00H____(X=0) 时,ACC.7= 0 , 运行后(41H)= __00H____(Y= 0),当(40H)= _____(X<0) 时,ACC.7= 1 , 运行后(41H)= FFH (Y=﹣1)(2)思考:能否用“JC POSI ”指令替代“JB ACC.7, POSI ”指令, 修改运行程序,验证结果。
注意“CJNE A, #00H, NZEAR”执行后CY位为0/1 ?单片机原理实验报告班级:姓名:学号:实验日期:成绩:实验二输入/输出控制实验实验目的:掌握单片机I/O口输入输出的控制方法,学会编写数码管的显示程序。
实验内容A:P1 口做输出口,接8只发光二极管L1~L8(高电平时发光二极管点亮),编写程序,使L1~L8流水闪烁。
ORG 0000HSTART: MOV A,#01HMOV R2,#08HLOOP:MOV P1,ALCALL DELAYRL ADJNZ R2,LOOPAJMP STARTDELAY:MOV R5,#40 ;延时1秒D1:MOV R6,#50D2:MOV R7,#248D3:DJNZ R7,D3DJNZ R6,D2DJNZ R5,D1RETEND实验内容B:P1 口做输入口,接拨动开关K1~K8。
单片机原理及应用实验
单片机是指一种集成了微处理器核心、存储器、输入输出功能和系统时钟等组件的微型计算机系统。
它通常由中央处理器(CPU)、存储器、输入输出设备和系统总线等组成。
单片机的工作原理是通过执行储存在存储器中的程序指令来完成特定的计算和操作。
单片机的应用非常广泛,可以应用于各种电子设备中。
以下是一些典型的单片机应用:
1. 控制系统:单片机可以用于工业控制系统、家庭自动化系统等场景中,通过接收输入信号并根据预设的逻辑程序来控制输出设备的状态,实现各种控制功能。
2. 电子设备:单片机可以应用于各种电子设备中,如电视机、音响、空调等。
它可以接收远程控制信号,并根据信号进行相关功能的操作。
3. 信息处理:单片机可以用于数据处理和信息传输领域,如数据采集和传输、数据处理和分析等。
4. 通信系统:单片机可以用于各种通信系统中,如电话、传真机、无线通信设备等。
它可以通过与外部设备的通信来实现相应的通信功能。
5. 汽车电子系统:单片机可以应用于汽车电子系统中,如发动机控制单元(ECU)、车载娱乐系统、车载导航系统等。
它可
以控制汽车各个系统的运行和协调。
6. 医疗设备:单片机可以应用于各种医疗设备中,如心电图机、血压计、血糖仪等。
它可以接收生理信号,并进行相应的处理和分析。
总之,单片机在电子领域有着广泛的应用,可以实现各种控制、处理和通信功能。
它为电子设备的智能化和自动化提供了重要的支持。
实验一:系统认识实验一、设计目的:1. 学习 Keil C51 集成开发环境的操作;2. 熟悉 TD-51 系统板的结构及使用。
二、设计内容:编写程序,将 00H~0FH 共 16 个数写入单片机内部 RAM 的 30H~3FH 空间。
三、设计步骤:1. 创建 Keil C51 应用程序(1)运行 Keil C51 软件,进入 Keil C51 集成开发环境。
(2)选择工具栏的 Project 选项,弹出下拉菜单,选择 NewProject 命令,建立一个新的μVision2 工程。
这时会弹出文件保存对话框,选择工程目录并输入文件名 Asm1 后,单击保存。
(3)工程建立完毕后,μVision2 会马上弹出器件选择窗口。
器件选择的目的是告诉μVision2 使用的 80C51 芯片的型号是哪一个公司的哪一个型号,不同型号的 51 芯片内部资源是不同的。
此时选择 SST 公司的 SST89E554RC。
(4)到此建立好一个空白工程,现在需要人工为工程添加程序文件,如果还没有程序文件则必须建立它。
选择工具栏的 File 选项,在弹出的下拉菜单中选择 New 目录。
(5)输入程序,完毕后点击“保存”命令保存源程序,将 Text1 保存成Asm1.asm。
Keil C51 支持汇编和 C 语言,μVision2 会根据文件后缀判断文件的类型,进行自动处理,因此保存时需要输入文件名及扩展名.ASM 或.C。
保存后,文件中字体的颜色会发生一定变化,关键字会变为蓝色。
(6)程序文件建立后,并没有与 Asm1.Uv2 工程建立任何关系。
此时,需要将 Asm1.asm 源程序添加到 Asm1.Uv2 工程中,构成一个完整的工程项目。
在Project Window 窗口内,选中Source Group1 点击鼠标右键,选择 Add Files to Group‘Source Group1’命令,此时弹出添加源程序文件对话框,选择文件Asm1.asm,点击 Add 命令按钮即可将源程序文件添加到工程中。
单片机实验报告范文单片机(Microcontroller)是指一种封装了微处理器(Microprocessor)、存储器和各种输入输出接口电路功能的集成电路。
单片机在电子设计与开发中有广泛应用,可以用于控制和监测各种系统和设备。
本实验报告将介绍在实验中使用单片机所进行的实验步骤和实验结果。
实验目的:1.理解单片机的基本工作原理和功能。
2.掌握单片机的编程和调试方法。
3.应用单片机实现简单的控制功能。
实验仪器和材料:1.单片机开发板2.计算机B数据线4.电源适配器5.LED灯6.麦克风模块7.温度传感器实验步骤:1.准备工作:将单片机开发板与计算机连接,接通电源适配器。
2.熟悉开发工具:安装单片机开发软件,并了解软件的基本功能。
3.学习编程语言:了解单片机的编程语言,例如C语言或汇编语言,并编写简单的程序。
4.硬件连接:将LED灯、麦克风模块和温度传感器连接至开发板的相应引脚。
5.编程实现:根据实验要求,编写相应的程序,控制LED灯、获取麦克风模块的声音信号或获取温度传感器的温度值。
7.实验结果:根据实验要求,记录LED灯的亮灭状态、麦克风模块的声音信号强度或温度传感器的温度数值。
实验结果:通过实验,我们成功地控制了LED灯的亮灭状态,获取了麦克风模块的声音信号强度和温度传感器的温度数值。
在编程实现过程中,我们学会了使用单片机编程语言,了解了一些常用的语法和函数。
在调试测试中,我们可以通过相关的输出或显示结果来判断程序的正确性,及时发现和修复错误。
实验总结:本实验通过单片机开发板和相应的硬件以及编程实现了简单的控制和监测功能。
通过实验,我们深入了解了单片机的基本工作原理和功能,并掌握了一些基本的编程和调试方法。
实验结果表明,我们成功实现了实验要求,并对单片机的应用有了更加深入的理解。
通过这次实验,我们不仅提高了动手实践能力,也增加了对科技发展的看法。
单片机原理与应用实验报告——温度测量显示及设定实验目的:掌握单片机温度测量的原理和方法,了解温度传感器的工作原理,学会通过单片机控制显示屏显示温度,并可以通过按键设定温度。
实验器材:1.单片机(如STC89C52)2.温度传感器(如DS18B20)3.电阻、电容等基本元件4.1602液晶显示屏5.按键开关6.杜邦线、面包板等实验原理:1.单片机温度测量原理:单片机温度测量原理主要是通过温度传感器将温度转化为电压信号,然后单片机通过模拟口接收信号并进行数字转换得到温度数值。
2.温度传感器工作原理:温度传感器内部有一个温度敏感元件,它能根据温度的变化产生相应的电压信号,然后通过数字转换将电压信号转化为数值。
3.单片机与1602显示屏的连接:将1602显示屏的数据线接到单片机的IO口,通过控制IO口输出不同的信号来控制1602的显示。
实验步骤:1.连接电路:将单片机、温度传感器、1602显示屏等元件连接在一起,确保电路正确连接。
2.编写程序:编写单片机程序,根据单片机型号和编程软件的不同,具体编写方式可能会有所不同,但主要目的是通过单片机读取温度传感器的值,并将其转化为温度,最后通过1602显示屏显示温度。
3.调试程序:4.实验数据:在实验过程中需要记录下实验数据,包括温度传感器的电压值、转化的温度值等。
5.结果分析:根据实验数据和实验结果进行分析,对实验结果进行分析和总结。
实验总结:通过本次实验,我掌握了单片机温度测量的原理和方法,了解了温度传感器的工作原理,并成功通过单片机控制1602显示屏显示温度。
通过实验,我体会到了实验设计和实验过程中的困难和挑战,但我也学到了很多知识和技能,提高了实验能力和动手能力。
在今后的学习和工作中,我会继续努力,不断学习和探索,提高自己的实验能力和创新能力。
一、引言单片机作为一种重要的嵌入式系统核心,广泛应用于工业控制、智能家居、通信设备等领域。
为了提高学生的实践能力和工程素养,我们开展了单片机实训课程。
通过本次实训,学生们不仅学习了单片机的基本原理,还掌握了单片机的编程和硬件调试方法。
以下是本次实训的结果分析。
二、实训目的与内容1. 实训目的(1)使学生掌握单片机的基本原理和组成结构。
(2)使学生熟悉单片机的编程方法和调试技巧。
(3)培养学生动手能力和团队协作精神。
(4)提高学生解决实际问题的能力。
2. 实训内容(1)单片机基本原理和组成结构。
(2)单片机的编程语言(如C语言、汇编语言)。
(3)单片机的硬件调试方法。
(4)单片机应用系统的设计与实现。
三、实训过程1. 实训准备(1)教师讲解单片机基本原理、编程方法和调试技巧。
(2)学生预习相关教材和资料。
(3)学生熟悉实验设备和工具。
2. 实训实施(1)学生分组进行实验,每组选择一个实训项目。
(2)学生按照实训指导书的要求,完成实验任务。
(3)教师巡回指导,解答学生提出的问题。
(4)学生进行实验报告的撰写。
四、实训结果分析1. 学生掌握单片机基本原理和组成结构通过实训,学生了解了单片机的起源、发展、分类和应用领域。
同时,学生掌握了单片机的组成结构,如中央处理器(CPU)、存储器、输入/输出接口等。
2. 学生熟悉单片机的编程方法和调试技巧在实训过程中,学生学习了单片机的编程语言(如C语言、汇编语言),掌握了程序设计的基本方法。
此外,学生还学习了单片机的调试技巧,能够熟练使用调试工具进行程序调试。
3. 培养学生的动手能力和团队协作精神在实训过程中,学生需要自己动手搭建电路、编写程序、调试设备,这有助于提高学生的动手能力。
同时,学生在分组进行实验时,需要相互协作、共同解决问题,培养了团队协作精神。
4. 提高学生解决实际问题的能力在实训过程中,学生需要根据项目需求,设计电路、编写程序、调试设备,解决实际问题。
单片机原理与应用实验报告学院(部):专业:学生姓名:班级:学号:最终评定成绩:实验一存储器读写一、实验目的:1、掌握寄存器、存储器读写等汇编指令;2、掌握编程软件编辑、编译、调试等基本操作。
二、实验仪器设备1.PC机,1台2.WAVE软件开发系统三、实验内容及步骤:1、将下面的汇编程序输入到W A VE集成开发软件中ORG 0000HSJMP STARTORG 0030HSTART:MOV R0,#07HMOV 70H,#08HMOV R1,#70HMOV DPTR,#2000HLOOP:MOVX A,@R1MOVX A,@DPTRINC R1INC ADJNZ R7,LOOPSJMP $END2、选择菜单“仿真器”→“仿真器设置”,按下图所示完成软件初始设置。
3、选择菜单“项目”下“编译”,编译通过后,选择“单步运行”,观察记录寄存器(R0、R1)、累加器(A)、程序状态字(PSW)、外部存储器(2000H单元)、I/O端口(P1)的数据变化。
四、源程序源程序:ORG 0000H ;定义起始地址SJMP STARTORG 0030HSTART:MOV R0,#07HMOV 70H,#08H ;给内部RAM的70H单元赋初值MOV R1,#70H ;使R1指向内部70H单元MOV DPTR,#2000H ;定义外部存储器开始单元LOOP:MOVX A,@R1 ;将R1所指向的70H的内容赋给AMOVX @DPTR,A;将A的内容赋给外部存储器单元INC R1 ;内部RAM地址加1INC DPTR ;外部存储器地址加1DJNZ R7,LOOP ;循环,直到RAM中70H~7FH;单元的内容全部相应赋给;外部2000H~2007H单元SJMP $END3、记录下程序单步运行时,寄存器(R0、R1)、累加器(A)、程序状态字(PSW)、外部存储器(2000H单元)、I/O端口(P1)的数据变化。
五、仿真效果图实验二I/O端口操作一、实验目的:1、掌握I/O端口读写等基本汇编指令;2、掌握单片机最小系统硬件电路设计及仿真软件PROTEUS仿真、调试等基本操作方法。
单片机综合实验报告格式实验报告2实验报告2:单片机综合实验一、实验目的本实验的目的是通过应用所学的单片机知识,综合运用各种功能模块,设计并实现一个完整的单片机系统。
二、实验器材1. STC89C52单片机开发板2. 七段数码管模块3. LED灯模块4. 蜂鸣器模块5. 按键模块6. 电阻、电容等常规元件7. 万用表等实验工具三、实验原理本实验的设计要求是实现一个闹钟功能,包括当前时间显示、闹钟时间设置和闹钟响铃等功能。
具体实现过程如下:1. 使用七段数码管模块显示当前时间,通过定时器中断实现时间的自动更新。
2. 使用按键模块设置闹钟时间,通过按键中断实现设置的功能。
3. 使用LED灯模块和蜂鸣器模块作为闹钟的响铃指示信号。
四、实验过程1. 确定使用的IO口,连接相应的模块到单片机开发板上。
2. 编写初始化程序,包括定时器的初始化配置,IO口的设置等。
3. 编写定时器中断程序,用于更新时间显示的逻辑。
4. 编写按键中断程序,用于接收设置闹钟时间的信号。
5. 编写闹钟响铃程序,通过控制LED灯和蜂鸣器的开关来实现。
6. 编写主程序,实现整个闹钟功能的循环执行。
五、实验结果经过实验测试,实现了一个完整的闹钟功能,能够准确显示当前时间,并能够根据设置的闹钟时间进行响铃。
六、实验总结通过这次实验,我巩固了单片机的基础知识,并熟悉了各种功能模块的使用方法。
同时,我也学会了如何综合运用这些知识和技能,设计并实现一个完整的单片机系统。
实践中遇到的问题和挑战也促使我进一步提高了解决问题的能力和创新思维。
总的来说,这次实验对我来说是一次很有意义和收获的实践。
单片机原理实验报告实验二并行口输入输出实验——循环彩灯控制任务一1.实现的功能:P1 口接 8 个开关,P0 口接 8 个灯,每个开关对应一个灯,实时读取开关状态,开关闭合时,灯亮。
开关断开时,灯灭。
2.硬件原理图:3.流程图:4.程序:ORG 0000H //程序入口AJMP MAIN //跳转到主程序ORG 0040H //主程序初始地址MAIN: MOV P1,#0FFH //将P1口设置成输入状态MOV P0,P1 //将P1口输入的状态传输给P0口输出AJMP MAIN //返回主程序,循环执行主程序,保证实时END //结束任务二1.实现的功能:用 5 个开关 K0-K4,控制 P2 口所接 8 个灯的循环,各开关的功能要求如下:(1)K1,K2 分别选择灯的四种闪动方式;(2)K3 用于控制灯的循环方式(顺时针或逆时针);(3)K4 用于选择灯的两种循环速度(4)K0 用于引发外部中断,在外部中断子程序中,读取通过 K1-K4 所设定的循环彩灯的工作方式,并按所设定的工作方式控制彩灯运行。
2.硬件原理图:3.流程图:4.程序:ORG 0000HLJMP MAINORG 0003H //外部中断0入口LJMP PINT0ORG 0100HMAIN: MOV SP,#40H //设置栈底SETB EA //打开中断允许位SETB EX0 //打开外部中断0允许位SETB IT0 //MOV P1,#0FFH //将P1口设置成输入状态JB P1.0,M //判断P1.0(K1)和P1.1(K2)状态选择闪动方式JB P1.1,M2 //M1: MOV P2,#01H //闪动方式1,1个灯循环移动AJMP NEXT1 //M2: MOV P2,#03H //闪动方式2,2个灯循环移动AJMP NEXT1 //M: JB P1.1,M4 //M3: MOV P2,#07H //闪动方式3,3个灯循环移动AJMP NEXT1 //M4: MOV P2,#0FH //闪动方式4,4个灯循环移动NEXT1: MOV C,P1.2 //MOV PSW.2,C //将P1.2(K3)的状态送给PSW.2MOV C,P1.3 //MOV PSW.6,C //将P1.3(K4)的状态送给PSW.6NEXT2: JB PSW.2,R //判断PSW.2(K3)状态选择循环方向L: MOV A,P2 //RL A //MOV P2,A //AJMP NEXT3 //R: MOV A,P2 //RR A //MOV P2,A //NEXT3: JB PSW.6,S2 //判断开关PSW.6(K4)状态选择闪动速度LCALL DELAY //S2: LCALL DELAY //SJMP NEXT2 //循环执行闪动程序ORG 0200H //中断程序PINT0: JB P1.0,MO //判断P1.0(K1)和P1.1(K2)状态选择闪动方式JB P1.1,MO2 //MO1: MOV P2,#01H //闪动方式1,1个灯循环移动AJMP NEXT4 //MO2: MOV P2,#03H //闪动方式2,2个灯循环移动AJMP NEXT4 //MO: JB P1.1,MO4 //MO3: MOV P2,#07H //闪动方式3,3个灯循环移动AJMP NEXT4 //MO4: MOV P2,#0FH //闪动方式4,4个灯循环移动NEXT4: MOV C,P1.2 //MOV PSW.2,C //将P1.2(K3)的状态送给PSW.2MOV C,P1.3 //MOV PSW.6,C //将P1.3(K4)的状态送给PSW.6RETI //返回主程序DELAY: MOV R5,#05H //延时程序,延时0.5sLOOP1: MOV R6,#64HLOOP2: MOV R7,#0FFHLOOP3: NOPNOPDJNZ R7,LOOP3DJNZ R6,LOOP2DJNZ R5,LOOP1RET //返回END实验三七段LED数码管控制实验1.实现的功能:实验采用 4 位一体的数码管,用 P1 口通过驱动芯片控制段码输出信号线,P0 口通过驱动芯片控制位选线,自主选择驱动芯片,设计实现电路,并实现以下功能:(1)当开关 K0 接低电平时,第一位依次显示 0~F,然后第二位、第三位、第四位,再循环回第一位。
(2)当开关 K0 接高电平时,四位动态显示“HELP”。
2.硬件原理图:3.流程图:4.程序:ORG 0000HLJMP MAINORG 0100HMAIN: SETB P2.0JNB P2.0,M2M1: MOV P0,#10001000BMOV P1,11111100BNEXT1: MOV R0,#4NEXT2: MOV A,P0RL AMOV P0,AMOV DPTR,#NUM2MOV A,#1MOVC A,@A+DPTRMOV P1,ADJNZ R0,NEXT2AJMP NEXT1NUM1: DB 11111100B,01101110B,10011110B,0001110B,11001110B M2:MOV P1,#00000000BNEXT3: MOV R0,#15MOV R1,#0MOV DPTR,#NUM2CLR P2.1NEXT4: MOV A,R1MOVC A,@A+DPTRMOV P1,AINC R1LCALL DELAYDJNZ R0,NEXT4SETB P2.1MOV P1,#00000000BMOV R0,#15MOV R1,#0CLR P2.2NEXT5: MOV A,R1MOVC A,@A+DPTRMOV P1,AINC R1LCALL DELAYDJNZ R0,NEXT5SETB P2.2MOV P1,#00000000BMOV R0,#15MOV R1,#0CLR P2.3NEXT6: MOV A,R1MOVC A,@A+DPTRMOV P1,AINC R1LCALL DELAYDJNZ R0,NEXT6SETB P2.3MOV P1,#00000000BMOV R0,#15MOV R1,#0CLR P2.4NEXT7: MOV A,R1MOVC A,@A+DPTRMOV P1,AINC R1LCALL DELAYDJNZ R0,NEXT7SETB P2.4AJMP M2NUM2: DB 11111100B,01100000B,11011010B,01100110B,10110110B DB 10111110B,11100000B,1111110B,11110110B,11101110BDB 11111110B,10011100B,11111110B,10011110B,10001110B// 0-F DELAY: MOV R5,#05LOOP1: MOV R6,#100LOOP2: MOV R7,#0FFHLOOP3: NOPNOPDJNZ R7,LOOP3DJNZ R6,LOOP2DJNZ R5,LOOP1RETEND实验四定时器中断实验1.实现的功能:实现一个 4 位秒表:(1)用开关 K0 模拟秒表的启动、停止、清零功能,按一次启动计时,按一次停止,再按一次清零,在三个状态中循环。
(2)最低位按 1/10 秒计数,依次计数单位为 1/10 秒,1 秒,1 分。
(3) 要求 K0 使用外部中断,优先级高于 T0 的优先级。
2.硬件原理图:3.流程图:4.程序:ORG 0000HAJMP MAINORG 0003HAJMP X_0ORG 000BHAJMP T_0ORG 0040HMAIN: MOV TMOD,#01HMOV TH0,#0B8HMOV TL0,#00HSETB ET0SETB IT0SETB PX0SETB EX0SETB EACLR AMOV R1, AMOV R2, AMOV R3, AMOV R4, AMOV R5, AMOV R6, AMOV R0, #0 LOOP: CJNE R0,#1,LOOP LOOP1: MOV DPTR,#NUMMOV R1,#03HMOV R7,#11110111BLOOP2: MOV A,@R1MOVC A,@A+DPTRMOV P0,#0FFHMOV P2,AMOV P0,R7ACALL LOOP3MOV A,R7RR AMOV R7,AINC R1CJNE R1,#07H,LOOP2AJMP LOOP1NUM: DB 11111100B,01100000B,11011010B,11110010B,01100110B DB 10110110B,10111110B,11100000B,11111110B,11110110B LOOP3: DJNZ ACC,$RETORG 0100HX_0: INC R0CJNE R0,#1,STOPSETB TR0RETISTOP: CJNE R0,#2,CLRECLR TR0RETICLRE: CLR AMOV R0,AMOV R1,AMOV R2,AMOV R3,AMOV R4,AMOV R5,AMOV R6,ARETIORG 0200HT_0: MOV TL0,#00HMOV TH0,#0B8HINC R2CJNE R2,#10,T0_RMOV R2,#0INC R3CJNE R3,#10,T0_RMOV R3,#0INC R4CJNE R4,#10,T0_RMOV R4,#0INC R5CJNE R5,#6,T0_RMOV R5,#0INC R6CJNE R6,#10,T0_RMOV R6,#0T0_R: RETIEND实验五脉冲宽度与周期测量实验1.实现的功能:P1.0接开关K0,K0断开测量脉冲宽度,K0导通测量脉冲周期,将测试结果显示在4位数码管上,单位为μs。
2.硬件原理图:3.流程图:4.程序::ORG 0000HAJMP MAINORG 000BHAJMP INT_T0ORG 0040H MAIN: MOV R7,#0MOV TMOD,#02HMOV TH0,#47HMOV TL0,#47HSETB ET0SETB EALP1: JB P3.2,LP1 LP2: JNB P3.2,LP2SETB TR0LP3: JB P3.2,LP3JNB P1.0,NEXT LP4: JNB P3.2,LP4 NEXT: CLR TR0MOV A,R7MOV B,#10DIV ABMOV R0,AMOV R1,BMOV A,TL0CLR CSUBB A,#47HMOV B,#2DIV ABMOV B,#10DIV ABMOV R2,AMOV R3,BLOOP1: MOV R4,#05LOOP2: MOV R5,#100LOOP3: MOV R6,#0FFHlOOP4: SETB P0.0SETB P0.1SETB P0.2SETB P0.3MOV DPTR,#NUMMOV A,R0MOVC A,@A+DPTRMOV P2,ACLR P0.0SETB P0.0MOV A,R1MOVC A,@A+DPTRMOV P2,ACLR P0.1SETB P0.1MOV A,R2MOVC A,@A+DPTRMOV P2,ACLR P0.2SETB P0.2MOV A,R3MOVC A,@A+DPTRMOV P2,ACLR P0.3SETB P0.3DJNZ R6,LOOP4DJNZ R5,LOOP3DJNZ R4,LOOP2NUM: DB 00111111B,00000110B,01011011B,01001111B,01100110B DB 01101101B,01111101B,00000111B,01111111B,01101111BAJMP MAINORG 0100HINT_T0:INC R7RETIEND实验六串行通信实验1.实现的功能:利用串行口方式 0 实现一个七段数码管的显示控制,轮流显示 0~9十个数码2.硬件原理图:3.流程图:4.程序:ORG 0000HSJMP MAINORG 0040HMAIN: MOV SCON,#00HCLR ESLOOP1: MOV DPTR,#NUMMOV R0,#10LOOP2: MOV A,#0MOVC A,@A+DPTRINC DPTRMOV SBUF,AJNB TI,$CLR TIACALL DELAYDJNZ R0,LOOP2AJMP LOOP1NUM: DB 11111100B,01100000B,11011010B,11110010B,01100110B DB 10110110B,10111110B,11100000B,11111110B,11110110B DELAY: MOV R7,#10LP1: MOV R6,#100LP2: MOV R5,#0FFHLP3: NOPNOPDJNZ R5,LP3DJNZ R6,LP2DJNZ R7,LP1RETEND实验七RAM扩展与读写控制实验1.实现的功能:将一片 62256 前 10 个字节的内容加 1 后,存入另一片 62256 中,并读出用 8 个LED 显示。