单片机原理实验报告(详细)
单片机实验报告
单片机实验报告第一篇:单片机实验报告单片机实验报告一、实验目的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单片机的组成、中断原理,中断处理过程、外部中断的中断方式。
单片机实验报告
单片机实验报告一、实验目的本次单片机实验的主要目的是通过实际操作和编程,深入了解单片机的工作原理和应用,掌握单片机系统的设计、开发和调试方法,提高自身的动手能力和解决问题的能力。
二、实验设备1、单片机开发板2、计算机3、编程软件(如 Keil)4、下载器5、示波器6、万用表三、实验内容1、点亮 LED 灯通过编写简单的程序,控制单片机的引脚输出高低电平,从而点亮或熄灭连接在该引脚上的 LED 灯。
这是单片机最基础的操作之一,旨在熟悉单片机的编程环境和引脚控制方式。
2、数码管显示利用单片机驱动数码管,实现数字的显示。
需要了解数码管的工作原理和驱动方式,通过编程控制数码管的段选和位选信号,显示不同的数字。
3、按键输入设计按键电路,通过读取按键的状态,实现对单片机系统的输入控制。
例如,通过按键切换不同的显示模式或控制其他外部设备。
4、定时器/计数器应用使用单片机的定时器/计数器功能,实现定时、计数等操作。
例如,设计一个定时闪烁的 LED 灯,或者通过计数器统计外部脉冲的个数。
5、串口通信实现单片机与计算机之间的串口通信,将单片机采集到的数据发送到计算机上进行显示和处理,或者接收计算机发送的指令对单片机系统进行控制。
四、实验原理1、单片机的基本结构单片机通常由中央处理器(CPU)、存储器(包括程序存储器和数据存储器)、输入输出接口(I/O 口)、定时器/计数器、中断系统等部分组成。
2、编程语言本次实验采用 C 语言进行编程。
C 语言具有简洁、高效、可移植性强等优点,非常适合单片机的开发。
3、引脚功能单片机的引脚分为电源引脚、时钟引脚、复位引脚、I/O 引脚等。
通过对这些引脚的合理配置和控制,可以实现各种功能。
4、数码管驱动原理数码管分为共阴极和共阳极两种类型。
通过控制数码管的段选和位选信号,可以使数码管显示不同的数字和字符。
5、按键检测原理按键通常采用上拉电阻或下拉电阻的方式连接到单片机的I/O 引脚。
单片机实验报告(相当不错,有具体实验结果分析哦)
学生姓名:学号:专业班级:实验类型:□ 验证□ 综合□ 设计□ 创新实验日期:实验成绩:实验一 I/O 口输入、输出实验地点:基础实验大楼A311一、实验目的掌握单片机P1口、P3口的使用方法。
二、实验内容以P1 口为输出口,接八位逻辑电平显示,LED 显示跑马灯效果。
以P3 口为输入口,接八位逻辑电平输出,用来控制跑马灯的方向。
三、实验要求根据实验内容编写一个程序,并在实验仪上调试和验证。
四、实验说明和电路原理图P1口是准双向口,它作为输出口时与一般的双向口使用方法相同。
由准双向口结构可知当P1口作为输入口时,必须先对它置高电平使内部MOS管截止。
因为内部上拉电阻阻值是20K~40K,故不会对外部输入产生影响。
若不先对它置高,且原来是低电平,则MOS管导通,读入的数据是不正确的。
本实验需要用到CPU模块(F3区)和八位逻辑电平输出模块(E4区)和八位逻辑电平显示模块(B5区)。
2学生姓名:学号:专业班级:实验类型:□ 验证□ 综合□ 设计□ 创新实验日期:实验成绩:五、实验步骤1)系统各跳线器处在初始设置状态。
用导线连接八位逻辑电平输出模块的K0 到CPU 模块的RXD(P3.0 口);用8 位数据线连接八位逻辑电平显示模块的JD4B 到CPU 模块的JD8(P1 口)。
2)启动PC 机,打开THGMW-51 软件,输入源程序,并编译源程序。
编译无误后,下载程序运行。
3)观察发光二极管显示跑马灯效果,拨动K0 可改变跑马灯的方向。
六、实验参考程序本实验参考程序:;//******************************************************************;文件名: Port for MCU51;功能: I/O口输入、输出实验;接线: 用导线连接八位逻辑电平输出模块的K0到CPU模块的RXD(P3.0口);;用8位数据线连接八位逻辑电平显示模块的JD2B到CPU模块的JD8(P1口)。
单片机原理中断实验单片机原理实验报告
单片机原理中断实验一、实验前准备1. 实验目的:本实验旨在通过学习和实践,掌握单片机原理中断的基本概念和工作原理,并能灵活运用中断技术解决实际问题。
2. 实验器材:- STC89C52单片机开发板- LED灯- 电阻、电容等基本电子元器件- 连接线3. 实验原理:单片机原理中断实验是通过将外部事件(如按键按下、定时器溢出等)与单片机的中断系统相连,实现对外部事件的即时响应和处理。
单片机的中断系统可以在常规程序运行的过程中接收和响应中断请求,提高系统的实时性和可靠性。
4. 实验步骤:- 首先,将开发板上的LED灯与单片机相连。
- 将外部事件(例如,按键)与单片机的中断引脚相连。
- 对中断相关的寄存器进行初始化设置。
- 编写相应的中断服务程序。
- 在主程序中编写相应的处理代码。
二、实验过程以按键中断为例,以下为实验过程的详细步骤:1. 硬件连接:将按键连接到单片机的外部中断引脚上,同时将LED灯连接到单片机的IO口上,以实现按键按下时LED灯的亮灭。
2. 寄存器设置:通过编程设置单片机的寄存器,使其能够正确地接收和响应外部中断请求。
具体的设置包括中断使能、中断触发方式、中断优先级等。
3. 中断服务程序编写:根据实际需求,编写相应的中断服务程序。
在按键中断的情况下,可以编写一个简单的中断服务程序,通过判断按键的状态来控制LED灯的亮灭。
4. 主程序编写:在主程序中,编写相应的处理代码。
在按键中断的情况下,可以编写一个循环程序,不断检测按键的状态,并根据按键状态控制LED灯的亮灭。
三、实验结果经过实验验证,成功利用中断技术实现了按键按下时LED灯的亮灭,实现了对外部事件(按键)的即时响应和处理。
实验结果表明单片机中断技术在提高系统的实时性和可靠性方面具有重要作用。
四、实验总结通过本次实验,我对单片机原理中断有了更深入的了解。
掌握了中断系统的基本原理和工作方式,并成功运用中断技术解决实际问题。
在今后的学习和实践中,我将进一步熟悉和应用中断技术,不断提高自己的技术水平。
单片机实验报告
一、实验目的1. 熟悉单片机的硬件组成和基本工作原理。
2. 掌握单片机最小系统的搭建方法。
3. 学习使用单片机编程软件进行程序编写和调试。
4. 通过实际操作,加深对单片机应用的理解。
二、实验环境1. 实验设备:MCS-51单片机实验板、电源模块、面包板、连接线、LED灯、蜂鸣器、按键等。
2. 软件环境:Keil uVision5、Proteus仿真软件。
三、实验内容1. 点亮LED灯(1)实验目的:掌握单片机I/O口的使用,实现LED灯的点亮。
(2)实验步骤:① 将LED灯的阳极连接到单片机的P1.0口,阴极连接到GND。
② 在Keil uVision5中新建工程,编写程序如下:```cvoid main() {while (1) {P1 = 0xFF; // 点亮LED灯delay(500000); // 延时P1 = 0x00; // 熄灭LED灯delay(500000); // 延时}}③ 将程序编译并下载到单片机中,观察LED灯的点亮效果。
2. 蜂鸣器控制(1)实验目的:掌握单片机I/O口的使用,实现蜂鸣器的控制。
(2)实验步骤:① 将蜂鸣器的正极连接到单片机的P1.1口,负极连接到GND。
② 在Keil uVision5中编写程序如下:```cvoid main() {while (1) {P1 = 0x02; // 使能蜂鸣器delay(100000); // 延时P1 = 0x00; // 禁止蜂鸣器delay(100000); // 延时}}```③ 将程序编译并下载到单片机中,观察蜂鸣器的鸣叫效果。
3. 按键扫描(1)实验目的:掌握单片机I/O口的使用,实现按键的扫描和识别。
(2)实验步骤:① 将两个按键分别连接到单片机的P1.2和P1.3口。
② 在Keil uVision5中编写程序如下:void main() {while (1) {if (P1 & 0x04) { // 检测按键1是否按下// 执行按键1按下后的操作}if (P1 & 0x08) { // 检测按键2是否按下// 执行按键2按下后的操作}}}```③ 将程序编译并下载到单片机中,观察按键的扫描和识别效果。
单片机原理实验报告
实验报告01_排序程序实验目的1. 熟悉MCS-51指令系统,掌握程序设计方法。
2. 掌握控制转移指令的功能,以及冒泡排序法原理。
3. 熟悉51单片机汇编语言编程环境。
实验要求设30H开始的10个存储单元中,存放的是无符号数,编写程序实现:将它们排序,并存放到50H开始的单元中。
实验原理冒泡算法的思想为,每次取相邻单元的两个数比较,判断是否需要交换数据的位置。
第一次循环,比较N-1次,取到数据表的最大值;第二次循环,比较N-2次,取到次大值;……第N-1次循环,比较一次,排序结束。
流程框图实验程序及调试仿真:实验程序如下:N EQU 10TAB EQU 30HTAC EQU 50HORG 0000H SORT: MOV R4,#N-1 LOOP1: MOV A,R4MOV R3,AMOV R0,#TAB LOOP2: MOV A,@R0MOV B,AINC R0MOV A,@R0CLR CSUBB A,BJNC UNEXCHMOV A,@R0DEC R0XCH A,@R0INC R0MOV @R0,A UNEXCH: DJNZ R3,LOOP2DJNZ R4,LOOP1MOV R1,#TABMOV R7,#NMOV R0,#TAC AGAIN: MOV A,@R1MOV @R0,AINC R1INC R0DJNZ R7,AGAINSJMP $END程序调试及运行结果实验结论通过本实验,我对冒泡排序法的原理有了更深入的理解,同时在掌握此算法思想的基础上能够用汇编语言进行编程,并学会在Keil μVersion4调试界面的Memory窗口中查看内存地址的内容,从而验证设计的源程序的正确性,提高了自己解决问题的能力。
实验报告02_ 外部中断实验实验目的学会使用Keil μVersion4和Proteus软件进行单片机汇编语言和C语言程序设计与开发;了解和掌握MCS-51单片机的中断组成、中断控制工作原理、中断处理过程、外部中断的中断触发方式,掌握中断功能的编程方法。
单片机实训实验报告
一、实验名称单片机原理及应用实验二、实验目的1. 熟悉单片机的基本结构和原理,了解单片机在电子系统中的应用。
2. 掌握单片机编程语言C的基本语法和编程技巧。
3. 学会使用单片机进行简单控制,实现LED流水灯、数码管显示等基本功能。
4. 提高动手实践能力,培养团队合作精神。
三、实验仪器与设备1. 单片机实验箱:包括单片机、电源、按键、LED灯、数码管等。
2. 电脑:用于编程和仿真。
3. 编程软件:Keil uVision5或IAR EWARM等。
四、实验原理单片机是一种集成度高、功能强大的微控制器,具有运算速度快、功耗低、体积小等优点。
本实验以51单片机为例,介绍其基本原理和编程方法。
51单片机主要由以下几个部分组成:1. 中央处理器(CPU):负责执行指令,控制整个单片机系统。
2. 存储器:包括程序存储器(ROM)和数据存储器(RAM),用于存储程序和数据。
3. 输入/输出接口:用于与外部设备进行数据交换。
4. 定时器/计数器:用于实现定时和计数功能。
5. 中断系统:用于处理中断事件。
本实验主要涉及以下几个方面:1. 单片机基本结构和工作原理。
2. 单片机编程语言C的基本语法和编程技巧。
3. 单片机I/O口的使用和驱动能力。
4. 定时器/计数器的使用和编程。
5. 中断系统的使用和编程。
五、实验内容1. 实验一:LED流水灯(1)实验目的:掌握单片机I/O口的使用,实现LED流水灯效果。
(2)实验原理:通过单片机I/O口输出高低电平,控制LED灯的亮灭,实现流水灯效果。
(3)实验步骤:① 连接实验箱电路,将LED灯连接到单片机的P1口。
② 编写程序,设置P1口为输出模式,通过循环改变P1口输出电平,实现LED流水灯效果。
③在电脑上编译、下载程序,观察实验效果。
2. 实验二:数码管显示(1)实验目的:掌握单片机I/O口的使用,实现数码管显示功能。
(2)实验原理:通过单片机I/O口输出高低电平,控制数码管显示数字。
单片机原理及应用实验报告2
单片机原理及应用实验报告2单片机原理及应用实验报告2实验报告:单片机原理及应用实验一、实验目的1、了解单片机的基本工作原理;2、掌握单片机的编程方法和编写汇编语言程序的能力;3、学习单片机的应用实验。
二、实验原理单片机是一种集成电路,内部包含了中央处理器、存储器和各种输入输出端口。
单片机的工作原理是通过对输入信号的处理和对输出信号的控制来实现各种功能。
单片机的编程方法一般采用汇编语言编写程序。
汇编语言是一种低级语言,可以直接对单片机进行操作。
通过编写汇编语言程序,可以实现各种功能,如控制LED灯的亮灭、控制电机的转动等。
本次实验主要通过控制LED灯的亮灭来演示单片机的应用。
在实验中,我们将使用汇编语言编写程序,通过编程来控制LED灯的亮灭。
三、实验步骤2、编写汇编语言程序:打开编程软件,进入编程界面,编写程序代码;3、编译程序:将编写好的程序进行编译,生成机器码;4、烧录程序:用编程工具将编译好的机器码烧录到单片机中;5、连接电路:使用面包板将单片机与LED灯连接起来;6、测试程序:将单片机的电源接通,观察LED灯的亮灭情况。
四、实验结果与分析经过以上步骤,我们成功地编写了汇编语言程序,并将程序烧录到了单片机中。
在实验中,我们观察到LED灯根据程序的控制产生了相应的亮灭效果。
实验结果表明,通过编程可以实现对单片机的控制,从而实现各种功能。
单片机在嵌入式系统、自动控制系统、家电等方面有着广泛的应用。
五、应用实例1、家居智能化控制:通过编程控制单片机,可以实现对家电的智能化控制。
例如,可以根据日出日落时间控制窗帘的开闭,根据室内温度控制空调的开关等。
2、工业自动化:在工业生产中,单片机可以用来控制各种设备和机械,实现生产线的自动化控制。
例如,可以根据产品的规格和数量,自动调整机械的工作速度和工作时间。
3、智能交通系统:在交通领域,单片机可以用来控制信号灯、道闸等设备,实现交通流量的控制。
例如,可以根据道路的拥堵程度和车辆的行驶速度,调整信号灯的红绿灯时间,从而达到交通畅通的目的。
单片机原理及接口技术实验报告
单片机原理及接口技术实验报告一、引言单片机(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. 单片机原理实验结果通过学习单片机的基本结构和工作原理,我们深入了解了单片机的内部组成和工作过程,为后续的接口技术实验打下了基础。
单片机实验报告原理
单片机实验报告原理单片机实验报告原理引言:单片机(Microcontroller)是一种集成了微处理器核心、存储器、输入/输出接口和定时器等功能于一体的集成电路芯片。
它被广泛应用于各种电子设备和系统中,具有体积小、功耗低、成本低等优势。
本文将介绍单片机实验的原理和相关知识。
一、单片机的基本原理单片机的基本原理是通过微处理器核心来控制各种外围设备的工作。
微处理器核心是单片机的核心部分,它负责执行指令、处理数据等任务。
单片机的存储器用于存储程序代码和数据,输入/输出接口用于与外部设备进行数据交互,定时器用于生成各种时间延时信号。
二、单片机实验的基本步骤单片机实验一般包括以下几个基本步骤:1. 硬件搭建:首先需要搭建实验所需的硬件平台,包括单片机芯片、外围电路、传感器等。
根据实验要求,连接各个部件并进行相应的电路设计。
2. 程序编写:根据实验的要求,编写相应的程序代码。
单片机的程序一般使用汇编语言或高级语言进行编写,通过编程将所需的功能实现。
3. 烧录程序:将编写好的程序代码通过编程器烧录到单片机的存储器中。
烧录程序是将程序代码从计算机传输到单片机芯片中的过程,确保程序能够正确地运行。
4. 实验调试:将烧录好的单片机芯片插入到硬件平台中,连接相应的电源和信号源。
通过实验调试,检查硬件连接是否正确,程序是否能够正常运行。
5. 实验结果分析:根据实验的要求,观察实验结果并进行分析。
通过实验结果的分析,可以验证实验的正确性,检查是否达到预期的效果。
三、单片机实验的应用领域单片机实验广泛应用于各个领域,包括电子、通信、汽车、医疗等。
以下是几个常见的应用领域:1. 自动控制系统:单片机可以用于设计和实现各种自动控制系统,如家庭自动化系统、工业控制系统等。
通过编程和硬件连接,实现对各种设备和系统的自动控制。
2. 电子产品:单片机在电子产品中的应用非常广泛,如电视机、手机、空调等。
通过单片机的控制,实现各种功能和操作。
单片机的原理及应用实验报告
单片机的原理及应用实验报告一、引言单片机(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。
单片机原理实验报告
实验一:系统认识实验一、设计目的: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 命令按钮即可将源程序文件添加到工程中。
单片机原理及应用实验报告
ET0=1;
TR0=1;
while (1)
{
ScanKey0( );
keyscan( ); //按键扫描
time_pro( ); //时间处理
display( ); //显示时间
}
}
实验结果:
数码管可以显示时钟的时分秒,按下按键1,可以在时钟的时分秒为切换,按下按键2,可以在选择的任意位+1,从而实现时间的修改。
实验接线图:
实验程序:
#include<reg51.h>
#include<absacc.h>
#define uchar unsigned char
#define uint unsigned int
uchar code dispcode[ ]={0xC0,0xF9,0xA4,0xB0,0x99,
0x92,0x82,0xf8,0x80,0x90};
loop:
Dsplay();
goto loop;
}
void Dsplay() //动态扫描显示
{uchar i;
for(i=0,P1=0x01;i<6;i++)
{ P0=cDsCode[mDS[i]];//输出段
Delayms(2);
P1=P1<<1; //选通下一位
}
P1=0x00; //关闭位选通
实验五:存储器系统设计
实验目的:掌握存储器工作原理及特点。通过该实验让学生掌握单片机存储器系统的硬件设计,存储器在系统中的地址分配,地址总线、数据总线与控制总线的连接。
实验内容:1.在实验板上将一片6264RAM芯片设计成8K的外部数据存储器,地址为0000H—1FFFH。
单片机实验报告(完整版)
单片机原理与应用实验报告学院(部):专业:学生姓名:班级:学号:最终评定成绩:实验一存储器读写一、实验目的: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仿真、调试等基本操作方法。
单片机实验报告
一、实验目的1、熟练单片机的结构组成及原理;2、软硬兼施,采用硬件电路的焊接搭建和软件的设计调试、下载,亲自动手,对硬件系统加深了解的同时,软件编程也能得心应手;3、了解如何从硬件和软件上分析问题,排除故障。
二、实验内容MCS-51/MCS-52单片机的跑马灯硬软件设计、键盘控制及键号显示电路的软硬件设计、直流电机转速电路的软硬件设计、转速计数控制电路的软硬件设计、步进电机转速的硬软件设计三、实验器材与工具实验器材:多功能电路板、AT89S52单片机、电解电容、瓷片电容、电阻、二极管、集成芯片、插槽、八段共阴数码管、发光二极管、三极管、12MHz晶振、小按钮开关、光电开关、直流电机、步进电机主要工具PC机、下载器、电烙铁、焊锡丝、导线、尖嘴钳、斜口钳、剥线钳、数字万用表、透明胶带等。
四、实验原理1-1 MCS-51/MCS-52单片机的跑马灯的硬软件设计1 MCS-51/MCS-52单片机跑马灯的硬件电路的设计。
如图1-1是一个利用51单片机设计的跑马灯电路,51单片机的第9引脚为复位电路,单片机上电之初,使用C-R充电过程使得第9脚保持10ms以上的高电位,使机器复位。
复位开关K可使之做到随机复位。
51单片机的第18,19引脚为外接晶振,接一个12M的晶振,同51单片机内部电路配合,上电后产生12兆的晶振频率和1兆的机器周期频率。
因为89S52机片内含8K程序存储器,机器运行程序将下载其中,故89S51的引脚EA接电源VCC。
51单片机第32—39引脚为P0口,分别对应P0.7—P0.0,P0口外接10KΩ的上拉排阻。
P0口的P0.0—P0.7与74HC573的D0—D7一一对应相连,74HC573的Q0—Q7为输出,分别经220Ω电阻后接于发光二极管(跑马灯)的D0—D7上。
74HC573为8位锁存器,其1脚为输出使能端OE,低电平有效。
本电路将其接地,所以74HC573的8位Q端为直通输出。
单片机原理及应用实验的实验总结
单片机原理及应用实验的实验总结实验一:单片机基本原理•实验目的:了解单片机的基本原理•实验内容:–学习单片机的基本结构和工作原理–掌握单片机的基本操作指令•实验步骤:1.搭建实验电路,连接单片机与开发板2.下载并安装开发环境3.编写简单的程序,使用LED等外设进行实验4.烧录程序到单片机,观察实验结果•实验结果:通过实验,我们对单片机的基本原理有了初步了解,能够进行简单的实验操作。
实验二:单片机应用实验•实验目的:掌握单片机的应用实验方法•实验内容:–学习使用单片机控制各种外设–实现对按键、数码管、继电器等设备的控制•实验步骤:1.搭建实验电路,连接单片机与相应的外设2.编写相应的控制程序3.烧录程序到单片机,观察实验结果•实验结果:通过实验,我们能够灵活运用单片机控制各种外设,实现各种应用实验。
实验三:单片机通信实验•实验目的:学习单片机的通信原理与方法•实验内容:–学习串口通信、SPI通信等通信方式–实现单片机与计算机、其他外设的通信•实验步骤:1.搭建实验电路,连接单片机与计算机或其他外设2.编写相应的通信程序3.烧录程序到单片机,观察实验结果•实验结果:通过实验,我们掌握了单片机的多种通信方式,并能够实现单片机与计算机、其他外设的通信。
实验四:单片机应用开发•实验目的:学习单片机应用开发的方法与技巧•实验内容:–学习使用开发板、传感器等进行应用开发–实现具体的单片机应用程序•实验步骤:1.选择合适的开发板和传感器2.编写相应的应用开发程序3.烧录程序到单片机,观察实验结果•实验结果:通过实验,我们能够独立进行单片机应用开发,并实现具体的应用功能。
实验总结通过以上实验,我们对单片机的原理和应用有了全面的了解。
通过实际操作,我们掌握了单片机的基本操作指令、各种外设的控制方法、通信方式以及应用开发的技巧。
这些都为我们今后在单片机项目中的应用打下了坚实的基础。
同时,通过实验,我们培养了动手能力、团队协作精神和解决问题的能力。
单片机原理及应用实验报告
单片机原理及应用实验报告单片机是一种集成了微处理器核心、存储器、输入输出接口和时钟电路等基本功能于一芯片上的微型计算机系统。
它具有体积小、功耗低、性能强大、易于编程等特点,广泛应用于电子产品中。
本文将介绍单片机的原理及应用,并通过实验来验证其功能。
一、单片机的原理单片机的主要组成部分包括:1.CPU(中央处理器):负责执行指令、控制程序运行和数据处理等任务。
2.存储器:包括程序存储器(ROM)和数据存储器(RAM),用于存放程序指令和数据。
3.输入输出接口:负责与外部设备进行信息交换,包括数字输入输出口、模拟输入输出口和通信接口等。
4.时钟电路:提供时钟信号,用于控制指令的执行速度和计算机的工作节奏。
5.系统总线:用于连接CPU、存储器和输入输出接口等组件,实现数据传输和控制信号的传递。
单片机的工作原理如下:1.时钟信号通过时钟电路提供给CPU,指令从程序存储器中读取,经过解码后执行相应的操作。
2.CPU根据指令给出的地址从存储器中读取数据并进行运算,运算结果存放在数据存储器中。
3.输入输出接口负责将输入设备的信号转换为数字信号输入到CPU,将CPU的输出信号转换为合适的形式输出给外部设备。
4.单片机通过系统总线进行内部各组件的协调与控制,实现数据传输、地址传递和控制信号的传递。
二、单片机的应用单片机具有广泛的应用领域,包括电子产品、工业控制、通信系统、汽车电子、医疗仪器等。
下面以LED灯控制实验为例进行应用介绍。
1.实验目的:通过控制单片机的输出口控制LED灯的亮灭。
2.实验原理:单片机的输出口可以输出高电平(5V)和低电平(0V),通过控制输出口的电平来控制LED灯的亮灭。
3.实验器材:单片机开发板、面包板、LED灯、电阻等。
4.实验步骤:(1)将单片机开发板连接到电脑上,并用编程软件编写控制LED灯亮灭的程序。
(2)将LED灯的正极连接到单片机的输出口,负极接地。
(4)通过程序控制单片机的输出口电平,实现LED灯的亮灭。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
湖南城市学院实验报告2018-2019 学年上学期姓名:***班级学号:******实验课程:单片机原理及应用实验室名称:电子工程实验室湖南城市学院信息与电子工程学院实验中心印制实验项目名称:实验一指示灯和开关控制器实验一、实验目的及要求1、学习51单片机I/O基本输入/输出功能,掌握汇编语言的编程与调试方法;2、熟悉proteus软件,了解软件的结构组成与功能;3、学会在ISIS模块中进行汇编程序录入、编译和调试;4、理解单片机程序控制原理,实现指示灯/开关控制器的预期功能。
二、实验原理实验电路原理图如图1所示,图中输入电路由外接在P3口的8只拨动开关组成;输出电路由外接在P2口的8只低电平驱动的发光二极管组成。
此外,还包括时钟电路、复位电路和片选电路。
图1 实验原理图在编程软件的配合下,要求实现如下指示灯/开关控制功能:程序启动后,8只发光二极管先整体闪烁3次(即亮→暗→亮→暗→亮→暗,间隔时间以肉眼可观察到为准),然后根据开关状态控制对应发光二极管的灯亮状态,即开关闭合相应灯亮,开关断开相应灯灭,直至停止程序运行。
软件编程原理为:(1)8只发光二极管整体闪烁3次亮灯:向P2口送入数值0;灭灯:向P2口送入数值0FFH;闪烁3次:循环3次;闪烁快慢:由软件延时时间决定。
(2)根据开关状态控制灯亮或灯灭开关控制灯:将P3口(即开关状态)内容送入P2口;无限持续:无条件循环。
程序流程图如图2所示。
图2 实验程序流程图三、实验仪器设备及装置(1)硬件:电脑一台;(2)仿真软件:Proteus;(3)编程软件Keil uVision4。
其中,仿真软件ISIS元件清单如表1所示。
表1 仿真软件ISIS元件清单四、实验内容和步骤(一)实验内容:(1)熟悉ISIS模块的汇编程序编辑、编译与调试过程;(2)完成实验的汇编语言的设计与编译;(3)练习ISIS汇编程序调试方法,并最终实现实验的预期功能。
(二)实验步骤:(1)提前阅读与实验相关的阅读材料;(2)参考指示灯/开关控制器的原理图和实验的元件清单,在ISIS中完成电路原理的绘制;(3)参考程序流程图在Keil uVision4中编写和编译汇编语言程序;(4)利用ISIS的汇编调试功能检查程序的语法和逻辑错误;(5)观察仿真结果,检验与电路的正确性。
五、实验数据记录与处理或实验现象与分析1、实验程序#include <reg51.h>#define uchar unsigned char#define uint unsigned intvoid delay(uchar k){uint j;while(k--)for(j=0;j<1000;j++);}void main(void){uchar temp;uint i;for (i=0;i<3;i++){P2=0;delay(100);P2=0xff;delay(100);}while(1){temp=P1;P2=temp;}}2、实验现象①程序开始运行后,8只发光二极管先整体闪烁3次(亮→暗→亮→暗→亮→暗)实验结果如图3图4所示。
图3 二极管灯亮图图4 二极管灯灭图②开关可以控制二极管的最终状态(即开关闭合则对应二极管最后的状态为亮,开关断开则对应二极管最后的状态为暗)。
(1)当按下开关1 2 7 8时结果如图5.1所示。
图5.1 二极管状态图(2)当按下开关1 3 4 6时结果如图5.2所示。
图5.2 二极管状态图实验结果分析:当程序启动时,可以看到8只发光二极管整体循环闪烁三次,闪烁快慢由延时时间决定,然后根据所设开关的状态对应二极管的亮灯状态。
六、问题讨论下图6中单片机80C51中31号引脚为什么接+5V?图6 问题分析图答:31号引脚为使能端(EA非),通过+5V电压是使单片机访问内部程序存储器,但当PC(程序计数器)值超过某值时,将自动转向执行外部程序存储器内的程序。
实验项目名称:实验二LED灯和数码显示器的中断控制一、实验目的及要求1.掌握外部中断原理,学习中断编程与程序调试方法;2.熟悉Keil uVision4平台软件调试方法。
二、实验原理实验电路原理图如图1所示,图中按键K1和K2分别接于P3.2和P3.3,发光二极管D1接于P0.4,共阴极数码管LED1接于P2口。
时钟电路、复位电路、片选电路忽略。
图1实验原理图在编程软件的配合下,要求实现如下功能:程序启动后,D1处于熄灯、LED1处于黑屏状态;单击K1,可使D1亮灯状态反转一次;单击K2,可使LED1显示增加1,并按十六进制数显示,达到F后重新从1开始。
软件编程原理为:K1和K2的按键动作分别作为INT0和INT1的中断请求,在中断函数中进行指示灯与数码管的信息处理。
初始化后,主函数处于无限循环状态,等待中断请求。
三、实验仪器设备及装置(1)硬件:电脑一台;(2)仿真软件:Proteus;(3)编程软件Keil uVision4。
其中,仿真软件ISIS元件清单如表1所示。
四、实验内容和步骤(一)实验内容:(1)熟悉Keil uVision4的软件调试方法;(2)完成实验的C51语言编程;(3)练习Keil uVision4与ISIS的联机仿真方法。
(二)实验步骤:(1)提前阅读与实验相关的阅读材料;(2)参考实验电路原理图和元件清单在ISIS中完成电路原理图的绘制;(3)在Keil uVision4中编写和编译C51程序,生成可执行文件;(4)在Keil uVision4中启动ISIS的仿真运行,并进行联机调试;(5)观察仿真结果,检验与电路的正确性。
五、实验数据记录与处理或实验现象与分析1、实验程序#include<reg51.h>#define uchar unsigned charsbit led=P0^4;uchar led_mod[]={0x3f, 0x06, 0x5b, 0x4f, 0x66, 0x6d, 0x7d, 0x07, 0x7f, 0x6f, 0x77, 0x7c, 0x39, 0x5e, 0x79, 0x71};uchar i=0;void init(){IT0=1; //中断0边沿触发IT1=1; //中断1边沿触发EA=1;EX0=1;EX1=1; //开总中断、中断0、中断1}void int0() interrupt 0{led=~led;}void int1() interrupt 2{if(++i>=16) i=0; //先加再用}void main(){init();while(1){P2=led_mod[i];}}2.实验现象图2为仿真运行效果图。
图2仿真图按下K1,D1灯亮,如图3(a)所示:图3(a) 二极管状态图再按下K1,D1灯灭,如图3(b)所示:继续按下K1则D1将“亮→灭→亮→灭→亮→灭”如此循环。
当按K2时,每按一次数码显示管上的字符变化一次:持续按K2则数码显示管依次显示1-F :如图4所示。
图4 LED 状态图实验结果分析:① 持续按下K1则D1将“亮→灭→亮→灭→…→亮→灭”如此循环表明实现了K1对应于D1状态反转这个功能;②持续按下持续按K2则数码显示管依次显示1-F ,实现了K2对应于0-F 间的数码管加一计数显示。
图3(b) 二极管状态图六、问题讨论uchar led_mod[]={0x3f, 0x06, 0x5b, 0x4f, 0x66, 0x6d, 0x7d, 0x07, 0x7f, 0x6f, 0x77, 0x7c, 0x39, 0x5e, 0x79, 0x71};这些就代表0-F,为什么呢?答:数码分为7段式(7个发光二极管)和8段式(8个发光二极管,见图6)的,而二极管的亮灭对应0x3F的一位(1或0),为0时灭,1为亮;比如 0x3f 就是是 0b00111111 那么它对应的数码管的最外面一圈的二极管是1,是亮的,中间的一横和小数点都输0,是灭的,所以显示出来的就是0。
图5二极管示意图实验项目名称:实验三双机通信及PCB设计一、实验目的及要求1.掌握串行口通信工作原理;2.熟悉单片机电路的PCB设计过程。
二、实验原理实验的电路原理图如图1所示,图中1#机的发送线与2#机的接收线相连,1#机的接收线与2#机的发送线相连,共阴极BCD数码管BCD_LED1和BCD_LED2分别接各机的P2 口,两机共地(默认),晶振为11.0592MHz,波特率为2400bps,串口方式1。
软件编程原理如下:1#机采用查寻法编程,根据RI和TI标志的软件查询结果完成收发过程;2#机采用中断法编程,根据RI和TI的中断请求,在中断函数中完成收发过程。
PCB设计原理:在1#机的电路原理图中添加接线端,并定义电源端口,图中BCD数码管需要自定义PCB封装。
图1实验原理图三、实验仪器设备及装置(1)硬件:电脑一台;(2)仿真软件:Proteus ARES;(3)编程软件Keil uVision4。
其中,仿真软件ISIS元件清单如表1所示。
表1 仿真软件ISIS元件清单四、实验内容和步骤(一)实验内容:(1)掌握串行通信原理和中断法通信软件编程;(2)完成实验的C51编程;(3)学习使用ARES软件,完成实验电路(见图1)PCB设计。
(二)实验步骤(1)提前阅读与实验相关的阅读材料;(2)参考图1及表1,在ISIS中完成电路原理图的绘制;(3)采用Keil μVision4进行C51串行通信编程和调试;(4)对电路进行PCB设计,生成Gerber输出文件。
五、实验数据记录与处理或实验现象与分析1、实验程序//实例实现两个单片机点对点的数据通信#include<reg51.h>#define uchar unsigned char void delay (unsigned int time){ unsigned int j=0;for(;time>0;time--)for(j=0;j<125;j++);}void main(void){uchar counter=0;P2=0x3f;TMOD=0x20;TH1=0xf4;TL1=0xf4;PCON=0x00;TR1=1;SCON=0x50;while(1){SBUF=counter;while(TI==0);TI=0;while(RI==0);RI=0;if(SBUF==counter){P2=counter;if(++counter>15) counter=0; delay(500);}}}#include<reg51.h>#define uchar unsigned charvoid main(void){uchar receiv;P2=0x3f;TMOD=0x20;TH1=0xf4;TL1=0xf4;PCON=0x00;TR1=1;SCON=0x50;while(1){while(RI==1){RI=0;receiv=SBUF;SBUF=receiv;while(TI==0);TI=0;P2=receiv;}}}2、实验现象下面的图2.1和图2.2仿真的效果图,发送值和接收值分别显示在双方LED 数码管上。