《单片机》实验报告模板
单片机实验报告

单片机实验报告学院:姓名:学号:指导老师:目录第一章实验内容、目的及要求 (2)一、内容 (2)二、目的及要求 (3)第二章实验 (3)实验一数字量输入输出实验 (3)实验二定时器/计数器实验 (4)实验三A/D、D/A转换实验 (11)实验四串行通信设计 (20)第三章实验体会 (28)第一章实验内容、目的及要求一、内容实验一数字量输入输出实验阅读、验证C语言程序功能。
使用汇编语言编程,完成实验指导书之“3.1 数字量输入输出实验”基本实验项目。
实验二定时器/计数器实验阅读、验证C语言程序功能。
使用汇编语言编程,完成实验指导书之“3.3 定时/计数器实验”基本实验项目。
提高部分:定时器控制LED灯由单片机内部定时器1,按方式1工作,即作为16位定时器使用每0.05秒钟T1溢出中断一次。
P1口的P1.0-P1.7分别接八个发光二极管。
编写程序模拟时序控制装置。
开机后第一秒钟L1,L3亮,第二秒钟L2,L4亮,第三秒钟L5,L7亮,第四秒钟L6,L8亮,第五秒钟L1,L3,L5,L7亮,第六秒钟L2,L4,L6,L8亮,第七秒钟八个LED灯全亮,第八秒钟全灭,以后又从头开始,L1,L3亮,然后L2,L4亮……一直循环下去。
实验三A/D、D/A转换实验阅读、验证C语言程序功能。
使用汇编语言编程,完成实验指导书之“4.3 A/D转换实验”项目(P64)和“4.4 D/A转换实验”项目。
提高部分:(要求:Proteus环境下完成)小键盘给定(并显示工作状态),选择信号源输出波形类型(D/A 转换方式),经过A/D采样后,将采样数据用LED灯,显示当前模拟信号值大小及变化状态。
实验四串行通讯实验阅读、调试C语言程序功能。
使用汇编语言编程,完成实验指导书之“3.7 串口通讯实验”项目。
(要求:实验仪器上完成)提高部分:(要求:Proteus环境下完成)利用单片机实验系统,实现与PC机通讯。
功能要求:将从实验系统键盘上键入的数字,字母显示到PC机显示器上,将PC机键盘输入的字符(0-F)显示到单片机实验系统的数码管上。
单片机的显示实验报告

一、实验目的本次实验旨在通过学习单片机显示技术,掌握单片机控制数码管显示的基本原理和方法。
通过实验,加深对单片机基本原理和实际应用的理解,提高动手实践能力。
二、实验内容1. 硬件设备(1)单片机:AT89C51(2)晶振:12MHz(3)电容:22pF(两个)(4)复位电路:10K电阻与10F电容实现自动复位(5)显示器:7段共阳级数码管2. 软件环境(1)仿真软件:Proteus 7.8(2)编程软件:Keil 4.223. 实验步骤(1)搭建实验电路根据实验要求,利用Proteus软件搭建单片机实验电路,包括单片机、晶振、电容、复位电路和7段共阳级数码管。
(2)编写程序利用Keil 4.22编程软件编写控制数码管显示的程序,实现以下功能:1)数码管显示0-9循环显示2)数码管显示自定义字符3)数码管显示时间(小时、分钟、秒)(3)编译程序将编写的程序编译生成HEX文件。
(4)仿真运行在Proteus软件中加载HEX文件,观察数码管显示效果。
三、实验结果与分析1. 数码管显示0-9循环显示通过编写程序,实现数码管显示0-9循环显示的功能。
程序中,首先定义一个数组,存储0-9的数字编码;然后通过循环遍历数组,控制数码管显示对应的数字。
2. 数码管显示自定义字符为了实现数码管显示自定义字符,需要设计字符编码。
根据字符形状,将字符编码存储在数组中。
程序中,通过改变数组指针,控制数码管显示不同的字符。
3. 数码管显示时间实现数码管显示时间功能,需要设计一个计时器。
程序中,通过定时器中断,更新时间数据。
当定时器溢出时,更新数码管显示的时间。
四、实验总结通过本次实验,掌握了单片机控制数码管显示的基本原理和方法。
具体收获如下:1. 熟悉了Proteus和Keil软件的使用,提高了编程能力。
2. 加深了对单片机基本原理和实际应用的理解。
3. 学会了数码管显示程序的设计和调试。
4. 提高了动手实践能力。
五、拓展实验1. 实现多个数码管的连接和显示2. 设计一个可编程的字符编码表,实现更多字符的显示3. 利用数码管显示复杂图形,如动画效果4. 将数码管显示与其他功能结合,如温度、湿度显示等通过以上拓展实验,可以进一步提高单片机显示技术的应用水平。
单片机实训报告优选范文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取反通过该程序实现八盏灯的同时亮和同时灭的功能,更好的掌握汇编指令。
电子实习单片机实验报告

一、实验目的1. 理解单片机的基本工作原理和组成结构。
2. 掌握单片机编程的基本方法,包括汇编语言和C语言。
3. 学会使用Keil uVision等集成开发环境进行单片机程序的开发和调试。
4. 通过实验,了解单片机在实际应用中的功能和使用方法。
二、实验仪器设备1. 单片机实验板2. 电脑3. 示波器4. 信号发生器5. 电源6. 电阻、电容、电位器等电子元器件三、实验内容1. 单片机最小系统搭建- 搭建单片机最小系统,包括时钟电路、复位电路、电源电路等。
- 测试单片机是否能够正常工作。
2. LED流水灯实验- 利用单片机的I/O口控制LED灯的亮灭,实现流水灯效果。
- 通过编程实现LED灯的移位控制,观察流水灯的动态效果。
3. 按键输入实验- 设计按键输入电路,实现按键控制LED灯的亮灭。
- 编写程序,实现按键去抖动功能,确保按键信号的稳定性。
4. 定时器实验- 利用单片机的定时器实现定时功能,例如定时闪烁LED灯。
- 编写程序,设置定时器的时间间隔,观察LED灯的闪烁频率。
5. 串口通信实验- 配置单片机的串口通信参数,实现单片机与电脑之间的数据传输。
- 编写程序,实现数据的发送和接收,测试串口通信的稳定性。
四、实验步骤1. 单片机最小系统搭建- 根据实验板说明书,连接时钟电路、复位电路、电源电路等。
- 测试单片机的电源电压和复位功能。
2. LED流水灯实验- 编写程序,初始化I/O口,设置LED灯的移位控制方式。
- 编写延时函数,实现LED灯的动态效果。
- 将程序烧录到单片机中,观察LED流水灯效果。
3. 按键输入实验- 设计按键输入电路,连接到单片机的I/O口。
- 编写程序,实现按键的读取和去抖动功能。
- 将程序烧录到单片机中,测试按键输入功能。
4. 定时器实验- 配置单片机的定时器参数,设置定时器的时间间隔。
- 编写程序,实现定时器的中断处理,控制LED灯的闪烁。
- 将程序烧录到单片机中,观察LED灯的闪烁频率。
单片机课程实验报告模板

微控制器课程实验报告目录实验一:单灯闪烁 (3)实验目的 (3)实验设备 (3)软件程序 (3)效果说明 (6)操作截图 (6)实验二:炮马灯设计 (9)实验目的........................................................................ 错误!未定义书签。
实验设备........................................................................ 错误!未定义书签。
软件程序........................................................................ 错误!未定义书签。
效果说明........................................................................ 错误!未定义书签。
操作截图........................................................................ 错误!未定义书签。
实验一:单灯闪烁目的1.熟悉单片机I/O接口的线路连接。
2.了解如何使用模拟器。
3、学习单片机I/O接口的控制方法。
实验设备一个470欧电阻,一个二极管,一个+5V电源,一个AT89C51。
实验原理一个470欧电阻,一个二极管,一个+5V电源,一个AT89C51,Keil uVision2软件,ISIS 7 专业软件。
软件项目组织机构0000H启动P1.0阿卡德莱_SETB P1.0呼叫延迟AJMP 开始延迟:MOV R5,#4D1:MOV R6,#200D2:移动R7,#123无DJNZ R7,$DJNZ R6, D2DJNZ R5, D1RET结尾硬件电路效果说明单片机的P1.0控制1个LED灯实现其亮灭的变化,时间间隔为0.2s。
单片机综合实验报告

一、实验内容:设计一个数字时钟,显示范围为00:00:00~23:59:59。
通过5个开关进行控制,其中开关K1用于切换时间设置(调节时钟)和时钟运行(正常运行)状态;开关K2用于切换修改时、分、秒数值;开关K3用于使相应数值加1调节;开关K4用于减1调节;开关K5用于设定闹钟,闹钟同样可以设定初值,并且设定好后到时间通过实验箱音频放出一段乐曲作为闹铃。
选做增加项目:还可增加秒表功能(精确到0.01s)或年月日设定功能。
电路:(只连粗实线部分)二、实验电路及功能说明数码LED显示器电路(不需接线)电子音响电路按键键名功能说明K1 切换键校分后切换到校时校时后切换到时钟状态闹钟设定分值后切换到设定时值闹钟设定时值后切换到时钟状态K2 校时进入校时状态K3 加1键校分或校时的时候使其加1递增K4 减1键校分或校时的时候使其减1递减K5 闹钟设定键进入闹钟设定状态三、实验程序流程图:本实验设计了基于单片机的多功能数字钟的总体方案,对装置软、硬件的设计作了详细研究,并进行了相应的软件和硬件调试。
该数字钟采用AT89C51单片机作为核心控制芯片,完成整点报时、显示、定时功能。
整个系统分为几个小的电路,分别实现各自的功能。
晶振电路,12MHZ晶振和两个30pF 电容构成并连谐振接到X1和X2口。
复位电路,在RST复位输入引脚上接一10uF电容至VCC端,下接一个51K电阻到地。
控制电路,4个按键控制,进行调时,定时,复位操作。
显示电路,用6位7段数码管进行时,分,秒的显示。
装置中软件设计部分包括一个主程序、四个模块程序和二个子程序,各自执行自己的功能,完成定时,调时等设操作。
本文从整体到部分详细介绍了数字钟的设计,在比较重要的部分进行了详细的论述,并且给出了程序框图及说明。
软件程序整个流程图如下:四、实验结果分析定时程序设计:单片机的定时功能也是通过计数器的计数来实现的,此时的计数脉冲来自单片机的内部,即每个机器周期产生一个计数脉冲,也就是每经过1个机器周期的时间,计数器加1。
单片机实验报告4

单片机实验报告4第一篇:单片机实验报告4单片机实验报告(实验一)一、实验目的: 1.掌握stm8的时钟切换。
2.熟悉汇编语言的指令系统。
3.加深对stm8功能的理解,掌握去其使用方法。
二、实验仪器:stm8s105c6单片机、杜邦线、单片机开发试验仪、三、实验内容:1、步骤:1)2)3)按照正确的方法将单片机与电脑连接。
通过转接板将单片机与单片机试验仪连接,用一根杜邦线将PB0与一个LED连接起来创建工程文件,编写代码,编译运行,如果程序没有错误,就将程序下载到单片机里,观察LED的状态。
2、主程序(要有注释):intel;系统复位后,时钟为内部RC振荡器,16Mhz,8分频,实为2Mhz.;LD1闪烁10次ld a,#10;10次bset PB_DDR,#0 bset PB_CR1,#0 bres PB_CR2,#0 ;初始化PB 口,将其定义为推挽输出next1 bres PB_ODR,#0 call delay bset PB_ODR,#0 call delay dec a jrne next1;修改时钟为外部16Mhz时钟.;LD1闪烁10次mov CLK_ECKR,#01h;允许外部高速振荡器工作 wait_hse_ready ld a,CLK_ECKR and a,#02h jreq wait_hse_ready;等待外部高速振荡器准备好bset CLK_CSSR,#0;CSEEN<-1,时钟安全系统使能mov CLK_SWCR,#02h;SWEN <-1mov CLK_SWR,#0b4h;选择芯片外部的高速振荡器为主时钟wait_clk_switch ld a,CLK_SWCR and a,#08h jreq wait_clk_switch;等待切换成功next2 bres PD_ODR,#0 call delay bset PD_ODR,#0 call delay dec a jrne next2jra $;;定义一个延时函数 delaypush ccldw y,#10 loop1 ldw x,#0ffffh loop decw xjrne loopdecw yjrne loop1pop ccret3、注意事项:1)2)注意线路的连接是否正确。
单片机原理实验报告

实验一:系统认识实验一、设计目的: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 命令按钮即可将源程序文件添加到工程中。
单片机实验报告书

单片机实验报告书一、实验目的设计一个能发出100HZ,150HZ,300HZ频率的信号发生器,信号由P0口输出,数码管显示频率值,启动频率输出信号由按键3进行,改变信号频率由按键1,2,3进行切换。
二、实验分析该实验中8031通过8155于LED数码管和键盘连接,8031的P0口与8155的AD口直接相连,用于传送地址和数据。
8031的P2.5与8155的IO/M相连,P2.6与CE相连,8031的ALE,RD,WR分别与8155的ALE,RD,WR相连。
1、显示部分:6位数码管共阴极连接,动态显示字形。
8155的PB0-PB7连接到数码管的a,b,c,d,e,f,g和sp,以提供字形码,决定显示的字形。
6根阴极线连接到8155的PA0-PA5,PA口提供位选码(扫描字),决定哪一位发亮。
动态显示就是一位一位地轮流点亮LED,当某位LED点亮时输入相应于该位的被显示字形。
虽然实际上是各位轮流显示,但速度很快,所以感觉上是6位LED同时显示。
程序中在片内RAM开辟一组显示缓冲区,专用于存放待显示的数据,缓冲区选用2AH-2FH六个单元,依次存放数据的高位到低位。
2、键盘部分:实验中键盘接口电路采用行列式结构,共2行6列,对应于12个键盘,每个键分配一个键号,依次为0-B,任一个键的键号=该行的首键号+列号。
所以只要确定被按下键的行、列位置,就能确定该键的键号。
键盘扫描程序具有以下功能:⑴、判别有无键按下:从PA口输出扫描字00H,读PC口。
若无键按下,则PC0、PC1均为1,若有键按下,则PC0或PC1为0。
⑵、消除键抖动:在识别键按下后延时5-10ms,再判别键状态。
如果键已放开,认为属于抖动,是误动作。
如果键仍闭合,则表示有一个稳定的输入。
⑶、判别键号:由PA0-PA5对列线发出扫描字,先后次序时FEH、FDH、FBH、F7H、EFH、DFH(0位左移)。
每次列扫描时,检查行线输入,先查PC0,再查PC1。
单片机实验报告

目录一、实验一 (1)二、实验二 (7)三、实验三 (11)四、实验四 (15)实验一定时/计数器验证实验一、实验目的熟悉定时/计数器T0的特点,学会合理选择定时方式并能根据具体情况结合软件的方式定时;二、实验设备及器件IBMPC机一台PROTEUS硬件仿真软件KeilC51;三、实验内容用AT89C51单片机的定时/计数器T0产生1s的定时时间,作为秒计数时间,当1s产生时秒计数加1;秒计数到60时,自动从0开始;四、实验要求要求采用Proteus软件实现上述实验;五、实验步骤1.打开ProteusISIS编辑环境,按照表1-1所列的元件清单添加元件;元件全部添加后,在ProteusISIS的编辑区域中按图1-1所示的原理图连接硬件电路;图1-1电路原理图2.根据参考程序绘出流程图,并辅以适当的说明;流程图如图1-2所示:图1-2程序流程图3.打开KeilμVision4,新建Keil项目,选择AT89C51单片机作为CPU,将参考程序导入到“SourceGroup1”中;在“OptionsforTarget”对话窗口中,选中“Output”选项卡中的“CreateHEXFile”选项和“Debug”选项卡中的“Use:ProteusVSMSimulator”选项;编译汇编源程序,改正程序中的错误;4.在ProteusISIS中,选中AT89C51并单击鼠标左键,打开“EditComponent”对话窗口,设置单片机晶振频率为12MHz,在此窗口中的“ProgramFile”栏中,选择先前用Keil生成的.HEX文件;在ProteusISIS的菜单栏中选择“File”→“SaveDesign”选项,保存设计,在ProteusISIS的菜单栏中,打开“Debug”下拉菜单,在菜单中选中“UseRemoteDebugMonitor”选项,以支持与Keil的联合调试;5.在Keil的菜单栏中选择“Debug”→“Start/StopDebugSession“选项,或者直接单击工具栏中的“Debug”→“Start/StopDebugSession”图标,进入程序调试环境;按“F5”键,顺序运行程序;调出“ProteusISIS”界面可以看到7段数码管显示从0~59s的计数值,每个数值显示1s,如图1-3所示;图1-3程序运行结果六、实验程序SECOND EQU 30HCOUNT EQU 31HORG 00HLJMP STARTORG 0BHLJMP INT_T0START: MOV SECOND,00HMOV COUNT,00HMOV DPTR,TABLECLR AMOV P0,AMOV P2,AMOV TMOD,00HMOV TH0,65536-50000/256MOV TL0,65536-50000MOD256SETB TR0SETB ET0SETB EAMOVIE,82HLJMP $INT_T0:MOV TH0,65536-50000/256MOV TL0,65536-50000MOD256INC COUNTMOV A,COUNTCJNE A,20,I2MOV COUNT,00HINC SECONDMOV A,SECONDCJNE A,60,I1MOV SECOND,00HI1: MOV A,SECONDMOV B,10HDIV ABMOVC A,A+DPTRMOV P0,AMOV A,BMOVC A,A+DPTRMOV P2,AI2: RETITABLE: DB 3FH,06H,5BH,4FH,66HDB 6DH,7DH,07H,7FH,6FHEND七、思考题1.罗列一下Proteus软件的能带给我们的好处,指出一点最能帮助你的地方;使用Proteus软件能使我们方便的搭建电路,同时在没有元器件的情况下进行便于仿真,方便我们在将程序写入单片机前确认运行是否正确,同时可在采购器件之前即可开始开发产品,而不必等到器件采购完后搭建电路才进行程序调试;2.用Proteus界面中的播放键运行仿真与KeilμVision4的环境中联调运行它们两者的区别在什么地方3.用Proteus界面中的播放键运行仿真仅可以观察运行结果,即程序运行在硬件表面上的表现;而联调的时候可以再Keil软件里查看各寄存器和存储器的状况,即硬件的内部情况;4.Keil软件软件仿真与Proteus的仿真对比;使用Proteus仿真可从硬件的角度观察仿真结果,使仿真结果更加形象直观,使我们可从硬件运行状态清楚的判断运行结果是否正确;而在Keil环境中则是从程序的角度通过观察程序中数据的变化来观察仿真结果,需要对程序运行结果充分了解;八、实验总结及相关问题通过本次实验了解了Ptoteus软件的使用方法,以及在掌握了Keil的使用方法下,学会了Proteus与Keil软件联调的方法;在用Proteus中由于忽略了要在总线处放置网络标号导致联调失败,最后通过观察发现数码管引脚电平无变化发现此问题,放置网络标号后运行仿真时数码管引脚电平发生变化可是数码管却没有变亮,经过多次检查接线,未发现接线错误后,觉得可能是软件本身错误,故将总线及数码管周围硬件线路重新绘制一遍后再次运行仿真及可得到图1-3的结果;实验二单片机I/O口控制实验一、实验目的利用单片机的P1口作IO口,使同学学会利用P1口作为输入和输出口;二、实验设备及器件IBMPC机一台DP-51PRO单片机仿真器、编程器、实验仪三合一综合开发平台一台三、实验内容1.编写一段程序,用P1口作为控制端口,使D1区的LED轮流亮;2.编写一段程序,用P1.0~P1.6口控制LED,P1.7控制LED的亮和灭P1.7接按键,按下时LED亮,不按时LED灭;四、实验要求学会使用单片机的P1口作IO口,如果有时间同学也可以利用P3口作IO口来做该实验;五、实验步骤1.用导线把A2区的J61接口与D1区的J52接口相连;原理如图2-1所示;图2-1实验二原理图2.先编写一个延时程序;延时程序见程序1子程序DELAY;3.将LED轮流亮的程序编写完整并使用TKStudyICE调试运行;LED轮流亮程序见程序1;调试运行结果:D1区LED轮流亮;4.使用导线把A2区的J61接口的P1.0~P1.6与D1区的J52接口的LED1~LED7相连,另外A2区J61接口的P1.7与D1区的J53的KEY1相连;5.编写P1.7控制LED的程序,并调试运行;按下K1看是否全亮;P1.7控制LED的程序见程序2;调试运行结果:按下P1.7后D1区LED全灭;6.A2区J61接口的P1.7与D1区的J54的SW1相连;然后再使用TKStudyICE运行程序,查看结果;P1.7控制LED的程序见程序2;调试运行结果:按下P1.7后D1区LED全亮;六、实验参考程序程序1:ORG 0000HLJMP MAINORG 0100HMAIN: MOV A,0FFHCLR CMAINLOOP:CALL DELAYRLC AMOV P1,ASJMP MAINLOOPDELAY: MOV R7,0LOOP: MOV R6,0DJNZ R6,$DJNZ R6,$DJNZ R6,$DJNZ R7,LOOPRETEND程序2:ORG 000HLJMP MAINORG 0100HMAIN: JB P1.7,SETLEDCLRLED:CLR P1.0CLR P1.1CLR P1.2CLR P1.3CLR P1.4CLR P1.5CLR P1.6SJMP MAINSETLED:SETB P1.0SETB P1.1SETB P1.2SETB P1.3SETB P1.4SETB P1.5SETB P1.6SJMP MAINEND七、实验思考题1.请同学思考一下,想出几个实现以上功能的编程方法;程序1可利用单片机的定时计数器通过选择定时计数器工作方式和预置初值设定延时时间,通过定时计数器产生的中断在中断程序中对A进行移位后输出至P1口;程序2可在判断P1.7高低电平后根据判断结果直接将80H或7F直接送P1口而不必逐位进行位操作;2.请同学再思考一下,第二个程序中如果使用KEY1作为外部中断控制LED的亮和灭时,程序应如何修改;此时将KEY1接/INT0口,在主程序中开启外部中断设置外部中断触发方式,通过中断服务子程序控制LED亮灭;程序如下所示:ORG 000HLJMP MAINORG 0003H ;中断服务程序LJMP SETLEDMAIN: MOV SP,40HSETB ET0 ;开外部中断CLR IT0 ;设置为电平触发SETB EACLRLED:CLR P1.0CLR P1.1CLR P1.2CLR P1.3CLR P1.4CLR P1.5CLR P1.6SJMP CLRLEDSETLED:SETB P1.0SETB P1.1SETB P1.2SETB P1.3SETB P1.4SETB P1.5SETB P1.6RETIEND八、实验总结及相关问题通过本次实验掌握了使用TKStudyICE进行硬件仿真调试的方法,在设置仿真器驱动程序声明时对C:\Keil目录下的Tools.ini文件添加描述时,由于添加的路径错误导致无法进行硬件仿真调试,修改为正确路径后方可在DEBUG窗口中的Use选项中找到对应的选项;使用TKStudyICE进行硬件仿真调试相比本学期的电子系统设计中用到的调试方法更快捷,使用更方便;与此同时,通过本次实验对单片机的I/O控制有了更深入的了接,同时加深入对单片机I/O编程的理解;实验三串转并I/O口实验一、实验目的熟悉并掌握串转并的I/O口扩展方法;二、实验设备及器件IBMPC机一台DP-51PRO单片机仿真器、编程器、实验仪三合一综合开发平台一台三、实验内容1.写程序,通过单片机的P1口控制74HC164的串行输入端口,实现串并转换;2.验证串并转换数据的正确性;四、实验要求熟悉串并转换芯片的工作原理,学会使用串并转换芯片扩展单片机的I/O口资源;表3-174HC164真值表五、实验步骤1.短接C5区JP10接口,将C5区J43接口与A2区J61接口的P10~P13对应相连CLK对P10等等;如图3-1所示;图3-1实验三原理图2.运行编写好的软件程序,完成一次串并转换;实验程序见实验参考程序;2.使用C2区的逻辑笔或D1区的J52接口LED指示灯测试并行输出数据Q0~Q7数据的正确性;调试运行结果:通过观察LED的亮灭情况可判断完成一次串并转换,且转换结果正确无误;六、实验参考程序CLK EQU P1.0DINA EQUP1.1DINB EQU P1.2CLR164 EQUP1.3ORG 0000HLJMP MAINORG 0100HMAIN: MOV SP,60HNOPCLR CLKSETB DINBCLR CLR164SETB CLR164MOV A,0FFHMOV R4,08HSLCHG: RLC AMOV DINA,CSETB CLKNOPCLR CLKNOPDJNZ R4,SLCHGSJMP$END七、实验思考题参考图3-2电路图,尝试编写软件程序,实现8位LED流水灯的控制;图3.2实验原理图可利用单片机的定时计数器通过选择定时计数器工作方式和预置初值设定延时时间,通过定时计数器产生的中断在中断程序中对A进行移位;程序如下所示:CLK EQU P1.0DINA EQUP1.1DINB EQU P1.2CLR164 EQUP1.3ORG 0000HLJMP MAINORG 000BH ;定时器0中断服务程序LJMP SLCHGMAIN: MOV SP,60HNOPCLR CLKSETB DINBCLR CLR164SETB CLR164MOV A,0FFHMOV TMOD,01H ;定时器0工作方式1MOV TH0,18H ;送2ms时间常数MOV TL0,0FCHSETB TR0 ;开中断SETB ET0SETB EASJMP $SLCHG: MOV TH0,18HMOV TL0,0FCHRLC AMOV DINA,CSETB CLKNOPCLR CLKRETIEND八、实验总结及相关问题由于具有之前实验的基础所以本实验基本没碰到什么问题,调试运行都符合实验要求,通过本次实验对串并转化程序的编写有了一定了解,通过编写流水灯程序加深了对单片机串并口的了解;实验四继电器控制实验一、实验目的加深理解继电器的工作原理和特点,掌握利用单片机的IO口控制继电器的一般方法;二、实验设备及器件IBMPC机一台DP-51PRO单片机仿真器、编程器、实验仪三合一综合开发平台一台三、实验内容1.利用D1区的拨动开关和LED,学习继电器的工作原理和特点;2.编写一段程序,用P1.0口控制继电器,继电器控制LED的亮和灭,COM与CLOSE连通时,一盏LED亮;不连通时该LED灭;COM与OPEN连通时,另一盏LED亮,不通时该LED灭;四、实验要求学会继电器的使用和利用单片机的IO口控制继电器的方法;五、实验步骤图4-1继电器驱动控制电路图1.用短路帽短接JP7,使用导线把D1区J54接口的SW1与C7区J9接口的KJ任意一根针相连接;2.使用导线把D1区J52接口的LED1、LED2与C7区J103接口的OPEN1,CLOSE1分别相连,另外C7区J103接口的COM1接地GND;3.接好线后,同学可以拨动D1区的SW1拨动开关,观察现象拨到1时LED2亮,拨到0时LED1亮,并得出结论;运行结果:拨到1时LED2亮,拨到0时LED1亮,说明每拨动一次开关改变一次继电器的状态;4.然后把C7区J9接口的KJ改接到A2区的J61接口的P10;再编写一个程序程序参考实验二,使P1.0口延时一段时间后改变电平值,来控制继电器的开关;实验程序见实验参考程序;调试运行结果:两个LED交替变亮,继电器状态不断改变;六、实验参考程序ORG 0000HLJMP MAINORG 0100HMAIN: MOV R7,0LOOP: MOV R6,0DJNZ R6,$DJNZ R6,$DJNZ R6,$DJNZ R7,LOOPCPL P1.0SJMP MAINEND七、实验思考题1.请同学思考一下,改由OPEN2、COM2、CLOSE2时本实验如何进行;同使用OPEN1、COM1和CLOSE1时连接方法类似,把D1区J52接口的LED1、LED2与C7区J103接口的OPEN2,CLOSE2分别相连,另外C7区J103接口的COM2接地GND即可;2.请同学再思考一下,继电器的用途,并举例说明;继电器是一种电控制,是当输入量激励量的变化达到规定要求时,在电气输出电路中使被控量发生预定的阶跃变化的一种电器;它具有又称输入回路和被控制系统又称输出回路之间的互动关系;通常应用于自动化的控制中,它实际上是用小电流去控制大电流运作的一种“自动开关”;故在电路中起着自动调节、安全保护、转换电路等作用;按照其工作原理可有以下应用:电磁继电器固体继电器温度继电器舌簧继电器时间继电器高频继电器极化继电器其他类型的继电器八、实验总结及相关问题由于具有之前实验的基础所以本实验基本没碰到什么问题,调试运行都符合实验要求,通过本次实验了解了继电器的控制方法;对继电器这一器件有了一定了解;。
单片机实验报告模板 (2)

电子音响实验专业:班级:姓名:学号:2012年5月10日一、实验目的:(1)电子音响实验了解计算机发出不同音调声音的编程方法。
(2)报警用AT89S51单片机产生“嘀、嘀、…”报警声从P1.0端口输出,产生频率为1KHz,根据上面图可知:1KHZ方波从P1.0输出0.2秒,接着0.2秒从P1.0输出电平信号,如此循环下去,就形成我们所需的报警声了。
二、实验内容:(1) 电子音响实验用定时器产生不同频率的方法,组成的乐谱由单片机进行信息处理,经过放大后用8031的P1.0口输出音乐。
1、要产生音频脉冲,只要算出某一音频的周期(1/频率),然后将此周期除以2,即为半周期的时间,利用计时器计时(此半周期时间),计时到后即反向输出,重复此过程即得到此频率的脉冲。
2、让定时器工作在计数方式,改变计数值TH0及TL0,以产生不同的频率。
3、每个音符使用一个字节,字节的高四位代表音符的高低,低四位代表音符的节拍。
4、低音1至高音1所对应的频率(Hz)依次是:131、147、165、175、196、220、247、262、294、330、349、392、440、494、523。
乘以二就提升该声音一个八度音阶,减半则降一个八度。
(2) 报警1、生活中我们常常到各种各样的报警声,例如“嘀、嘀、…”就是常见的一种声音报警声,但对于这种报警声,嘀0.2秒钟,然后断0.2秒钟,如此循环下去,假设嘀声的频率为1KHz,则报警声时序图如下图所示:上述波形信号如何用单片机来产生呢?2、由于要产生上面的信号,我们把上面的信号分成两部分,一部分为1KHZ方波,占用时间为0.2秒;另一部分为电平,也是占用0.2秒;因此,我们利用单片机的定时/计数器T0作为定时,可以定时0.2秒;同时,也要用单片机产生1KHZ的方波,对于1KHZ的方波信号周期为1ms,高电平占用0.5ms,低电平占用0.5ms,因此也采用定时器T0来完成0.5ms的定时;最后,可以选定定时/计数器T0的定时时间为0.5ms,而要定时0.2秒则是0.5ms的400倍,也就是说以0.5ms定时400次就达到0.2秒的定时时间了。
单片机实训基础实验报告

一、实验目的通过本次单片机实训,掌握单片机的基本原理、组成结构以及编程方法,熟悉Keil C51集成开发环境的使用,能够进行简单的单片机程序设计,实现基本的硬件控制功能。
二、实验环境1. 硬件环境:STC89C52单片机实验板、数字万用表、示波器、面包板、导线等。
2. 软件环境:Keil uVision5集成开发环境、Proteus仿真软件。
三、实验原理单片机是一种集成在单一芯片上的微型计算机,具有运算、存储、输入/输出控制等功能。
STC89C52是一款常用的51系列单片机,具有8K字节片内存储器和32个可编程I/O口。
本实验主要涉及单片机的以下几个部分:1. 中央处理单元(CPU):负责指令的执行和数据的处理。
2. 存储器:分为片内存储器和片外存储器,用于存储程序和数据。
3. 输入/输出接口:用于与外部设备进行数据交换。
4. 定时器/计数器:用于产生定时/计数信号。
四、实验内容1. 单片机系统初始化2. 单片机I/O口编程3. 定时器/计数器编程4. 中断系统编程5. 简单的硬件控制实验五、实验步骤1. 单片机系统初始化(1)将STC89C52单片机插入实验板,连接电源和地。
(2)使用Proteus软件创建仿真电路,添加STC89C52单片机和其他外围电路。
(3)编写初始化程序,设置单片机的工作模式、时钟频率等。
2. 单片机I/O口编程(1)编写程序,使P1口输出高电平,P2口输出低电平。
(2)编写程序,使P3口输入数据,通过P1口输出。
3. 定时器/计数器编程(1)编写程序,使定时器0产生1秒的定时信号。
(2)编写程序,使计数器0对P3.2口输入的脉冲进行计数。
4. 中断系统编程(1)编写程序,使外部中断0在P3.2口输入低电平时触发。
(2)编写程序,使定时器0中断在定时1秒后触发。
5. 简单的硬件控制实验(1)编写程序,使LED灯闪烁。
(2)编写程序,使蜂鸣器发出特定频率的音频信号。
六、实验结果与分析1. 单片机系统初始化成功,CPU正常工作。
《单片机原理及应用》实验报告

《单片机原理及应用》实验报告一、实验目的本次实验旨在深入理解单片机的工作原理,掌握其基本的编程和应用方法,通过实际操作提高我们对单片机系统的设计和调试能力。
二、实验设备1、计算机一台2、单片机开发板一套3、下载线一根4、相关软件,如 Keil C51 等三、实验原理单片机是一种集成在一个芯片上的微型计算机,它包含了中央处理器(CPU)、存储器(ROM、RAM)、输入输出接口(I/O 口)等基本组件。
通过编写程序,可以控制单片机的各个引脚输出高低电平,实现对外部设备的控制和数据采集。
单片机的工作原理是基于时钟信号,按照程序指令的顺序依次执行操作。
程序通常使用 C 语言或汇编语言编写,经过编译后下载到单片机的存储器中,由单片机的 CPU 读取并执行。
四、实验内容1、点亮单个 LED 灯首先,我们将单片机的一个 I/O 口与一个 LED 灯相连。
通过编写程序,设置该 I/O 口输出高电平,使 LED 灯点亮;输出低电平,使 LED 灯熄灭。
程序代码如下:```cinclude <reg51h> //包含 51 单片机的头文件void main(){P1_0 = 1; //设置 P10 口为高电平,点亮 LED 灯while(1);//无限循环,保持 LED 灯常亮}```2、流水灯实验在这个实验中,我们使用多个 LED 灯,通过依次控制每个 LED 灯的点亮和熄灭,实现流水灯的效果。
程序代码如下:```cinclude <reg51h>void delay(unsigned int i) //延时函数{unsigned int j, k;for (j = 0; j < i; j++)for (k = 0; k < 125; k++);}void main(){unsigned char led ={0xfe, 0xfd, 0xfb, 0xf7, 0xef, 0xdf, 0xbf, 0x7f};//定义 LED 灯的控制码unsigned char i;while (1){for (i = 0; i < 8; i++){P1 = ledi; //依次输出控制码,点亮相应的 LED 灯delay(500);//延时一段时间}}}```3、按键控制 LED 灯我们将一个按键连接到单片机的一个I/O 口,通过检测按键的状态,控制 LED 灯的亮灭。
单片机实验报告范文

单片机实验报告范文
一、实验目的
通过本次实验,掌握单片机的基本原理与编程方法,熟悉单片机的开发环境,技能,了解单片机的必要电路原理。
二、实验器材和软件
器材:STC89C52单片机板、开发环境、PC机、线路板、电源、按钮开关、LED灯、蜂鸣器等。
软件:Keil uVision4编译器。
三、实验内容
1.点亮一个LED灯
将LED灯连接到单片机的1号引脚,通过编写程序点亮LED灯。
2.使用按钮开关控制LED灯
将按钮开关连接到单片机的2号引脚,编写程序使按钮开关控制LED 灯的亮灭。
3.通过串口将数据发送给PC机
设置单片机与PC机进行串口通信,通过编写程序将单片机中的数据发送给PC机。
四、实验步骤
1.按照实验器材和软件的要求搭建实验电路。
五、实验结果与分析
实验中点亮一个LED灯、使用按钮开关控制LED灯、通过串口将数据发送给PC机的实验均取得了预期的结果,显示出了单片机的基本原理与编程方法。
六、实验总结
通过这次实验,我深入了解了单片机的工作原理和编程方法,掌握了单片机的开发环境和技能,学会了使用单片机将数据发送到PC机,并能通过编程控制LED灯的亮灭。
实验过程中也遇到了一些问题,如电路连接不正确、程序代码错误等,但通过仔细排查和调试,最终解决了问题。
这次实验使我对单片机的实际应用有了更深的认识,也为今后进一步学习和应用提供了基础。
参考资料:
无。
单片机实验报告(完整版)

单片机原理与应用实验报告学院(部):专业:学生姓名:班级:学号:最终评定成绩:实验一存储器读写一、实验目的: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. 单片机开发板(如STC89C52、51单片机等)2. 电阻、电容、二极管、LED灯等电子元器件3. 示波器、万用表等测试仪器4. 编译器(如Keil uVision、IAR Embedded Workbench等)5. 连接线三、实验内容以下以LED流水灯实验为例,详细说明实验步骤和注意事项。
四、实验步骤1. 电路连接(1)根据实验要求,设计LED流水灯电路图,包括单片机的I/O口连接、LED 灯连接、电阻限流等。
(2)将电路图上的元器件按照要求连接到单片机开发板上。
2. 程序编写(1)在Keil uVision或IAR Embedded Workbench等编译器中创建一个新的项目。
(2)编写LED流水灯程序,主要包括初始化程序、主循环程序、延时函数等。
(3)编译程序,生成可执行文件。
3. 程序烧录(1)将可执行文件烧录到单片机中。
(2)上电,观察LED灯流水效果。
4. 调试与优化(1)观察LED灯流水效果,分析程序是否存在问题。
(2)根据实际情况,调整程序参数,优化流水灯效果。
五、实验报告内容1. 实验名称2. 实验目的3. 实验器材4. 实验原理(1)简要介绍单片机的基本原理和组成。
(2)说明LED流水灯实验的原理和程序设计方法。
5. 实验步骤(1)详细描述实验步骤,包括电路连接、程序编写、程序烧录、调试与优化等。
(2)说明每一步骤的具体操作和注意事项。
6. 实验结果与分析(1)描述实验结果,如LED灯流水效果、程序运行情况等。
(2)分析实验结果,解释程序设计思路和实验现象。
7. 实验心得与体会(1)总结实验过程中的收获和体会。
(2)提出实验过程中遇到的问题和解决方案。
六、实验报告格式1. 标题实验报告的标题应简洁明了,如“单片机LED流水灯实验报告”。
单片机实验报告格式及实验要求参考模板

实验报告格式实验一:认识单片机实验仪及发光二极管实验实验目的:实验设备:实验步骤(含程序):实验现象及结果:实验收获及体会:实验一P1口亮灯实验1,实验目的:(l)学习P1口的使用方法;(2)学习延时子程序的编写。
2,实验顶备知识:(l)Pl口为准双向口,每一位都可独立地定义为输入或输出,在作输入线使用前,必须向锁存器相应位写入“1”,该位才能作为输入。
(2)本实验中延时子程序采用指令循环来实现,机器周期(12/6MHz)*指令所需机器周期数*循环次数,在系统时间允许的情况下可以采用此方法。
3,实验内容:P1口输出口,接八只发光二极管,编写程序,使发光二极管循环点亮。
4,实验程序框图:5, 实验接线图:6,实验步骤:P1.0~P1.7用插针连至L1~L8,运行程序后,观察发光二极管闪亮移位情况。
7,思考:改变延时常数,使发光二极管闪亮时间改变。
修改程序,使发光二极管闪亮移位方向改变。
8,程序清单ORG 0000HLJMP SE18ORG 0790HSE18: MOV P1,#0FFH ;送P1口LO34: MOV A,#0FEH ;L1发光二极管点亮LO33: MOV P1,ALCALL SE19 ;延时RL A ;左移位SJMP LO33 ;循环ORG 07A0HSE19: MOV R6,#0A0HLO36: MOV R7,#0FFHLO35: DJNZ R7,LO35DJNZ R6,LO36 ;延时RETEND要求及注意:一、实验报告按照以上格式完成;二、在实验时带好实验报告或者纸张及笔,记录好实验步骤以及实验现象,以便写实验报告。
三、实验地点在北区23栋410教室四、进实验楼时及实验过程中保持安静,严谨打闹,严谨带食物进实验楼,如遇下雨天气,雨伞一律放在教室外面五、进入实验室后,按照2-3人一组做好,严谨私自去碰触、损坏实验仪器。
(单片机实验仪均为电子元器件,容易损坏,请大家爱护)六、按照实验老师的要求进行实验实验二:数据排序实验实验目的:熟悉80C51指令系统,掌握程序设计方法。
单片机实训报告范文精选5篇_社会实践报告_

单片机实训报告范文精选5篇实训报告是展示自身实训收获成长的重要报告,那么实训报告该如何写呢?小编精选了一些关于实训报告的优秀范例,一起来看看吧。
单片机课程设计在学校学习期间我有幸的参加了学校的单片机学习小组,在小组里我了解了什么是单片机,单片机有哪些用途,利用单片机可以实现哪些功能来方便人们的生活如交通灯,时钟,还有手机中,电子玩具等等,它们里面都有单片机的存在来实现某种功能。
通过在单片机小组里的学习我简单总结了几点心得和体会:第一:万事开头难,要勇敢的迈出第一步,不要总找借口说没有学习过就总推脱。
凡事都有第一步可以先可简单的来,然后可以逐步的向深层次学习。
可以从建项目开始,然后可以找一个简单的小程序先把它敲进单片机内然他运行起来,感觉一下单片机的运行,让自己了解单片机整个运行。
第二:对于知识点,学过的要掌握牢固,对于没有学的和暂时用不到的先不用学习。
比如:小灯得点亮就没有用到中断可以先不用看。
这样可以避免知识过多记不住的麻烦。
对于程序这里的知识点不能只停留在理论层次上,一定要结合着程序进行学习这样才能掌握的很牢靠,当用到哪里的知识点不记得了可以去看书,对于用不到的可以不去看。
第三:程序不要只是看别人得,一定要自己写过才是自己的。
开始不懂可以参考别人的,看看每一句代表着什么意思,能够实现什么现象。
明白之后自己再重新写一遍,你会发现看别人的能懂到自己写的时候很困难。
当你自己能写出来的时候说明你真懂了。
第四:一定要学会程序调试的方法。
有时候把程序写完了然后运行时不能实现理想的现象。
这时有人就晕了不知该怎么办,然后就去问别人。
当别人找出问题出在哪里时就会恍然大悟。
其实当遇到问题一定要自己尝试着解决,不能遇到问题就去问别人。
自己一定要掌握解决问的方法和思路。
第五:在学习初期看别人的代码,学习别人的思路这个很有用。
通过看别人的代码特别是有多年编程经验的人的程序,可以迅速提高自己的编程水平。
也可以结合着别人的手法,与自己的想法结合在一起写出更好的程序。
《单片机应用》实验报告

√
一、实验目的
熟练掌握动态扫描、数码管段码、位码等概念。
二、实验原理
三、数码管动态扫描概念:××××××××××××××××××××××××××××××××××××××××××。
四、使用设备、仪器及材料
1 安装Windows XP操作系统的微型计算机1台
2单片机集成开发环境keil
3 软硬件开发平台proteus
{
P2=seg[num1%10000/1000];L1=0;delay();L1=1; //千位
P2=seg[num1%1000/100]; L2=0;delay();L2=1; //百位
P2=seg[num1%100/10]; L3=0;delay();L3=1; //十位
P2=seg[num1%10]; L4=0;delay();L4=1; //个位
}
}
六、实验结果及分析
1.启动仿真,数码管显示0
2.按下一次按键,数码管显示1。
3.再次按下,数码管显示2。
4、经过测试,功能正常,能够响应中断,每次加1,符合设计要求。
教师签名:李建波
2011年月日
单片机应用 实验报告2
学生姓名:班级:
实验项目
LED数码管显示器
成绩
实验项目类型
验证
演示
综合
设计
sbit L1=P0^0;sbit L2=P0^1;sbit L3=P0^2;sbit L4=P0^3;
sbit L5=P0^4;sbit L6=P0^5;sbit L7=P0^6;sbit L8=P0^7;
unsigned int num1=0;
unsigned char num2=0;
unsigned charseg[]={0x3f,0x06,0x5b,0x4f,0x66,
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
广州大学
综合设计性实验
报告册
实验项目
学院
年级专业班
姓名
学号
成绩
指导教师
《综合设计性实验》实验报告
实验名称:基于单片机的交通灯设计
摘要:
交通灯在人们日常生活中发挥着重要作用,基本的交通灯包括红绿黄三种颜色的灯组成,每个灯各自亮的时间长短不一,可以看作是一种流水灯。
此次实
验我们利用单片机,组建一个交通灯的小系统,以期达到活学活用的目的。
一程序部分:
各二极管对应的P1口输出线为0是发光,各阶段状态如下表:
(红色LED D3、D6对应P1.0和P1.3,黄色LEDN D2、D5对应P1.2和P1.5,绿色LED D1、
D4对应P1.1和P1.4)
端口P1.7 P1.6 P1.5 P1.4 P1.3 P1.2 P1.1 P1.0 P1 状态悬空悬空前后黄前后绿前后红左右黄左右绿左右红码制STATE0 1 1 0 1 1 0 1 1 DBH STATE1 1 1 0 1 1 1 1 0 DEH STATE2 1 1 0 1 1 1 0 1 DDH STATE3 1 1 1 1 0 0 1 1 F3H STATE4 1 1 1 0 1 0 1 1 EBH
ORG 0000H
LJMP START
ORG 0100H
START:MOV SP,#50H
STA TE0:MOV A,#0DBH ;初始状态全红灯
MOV P1,A
MOV R2,#1 ;延时1s
LCALL DELAY
STA TE1:MOV A,#0DEH ;左右绿灯,前后红灯
MOV P1,A
MOV R2,#20 ;延时20s
LCALL DELAY
STA TE2:MOV A,#0DDH ;左右黄灯,前后红灯MOV P1,A
MOV R2,#5 ;延时5s
LCALL DELAY
STA TE3:MOV A,#0F3H ;左右红灯,前后绿灯MOV P1,A
MOV R2,#20 ;延时20s
LCALL DELAY
STA TE4:MOV A,#0EBH ;左右红灯,前后黄灯MOV P1,A
MOV R2,#5 ;延时5s
LCALL DELAY
LJMP STA TE1 ;转至状态1 DELAY:MOV R7,#20 ;1s延时程序D1:MOV R6,#200
D2:MOV R5,#123
NOP
DJNZ R5,$
DJNZ R6,D2
DJNZ R7,D1
DJNZ R2,DELAY
RET
END
二程序流程图:
<类似这样的流程图(老师要求必须有):>
三实验仪器:
52单片机、交通灯所需电阻、二极管、导线电容若干
四实验步骤:
(1)硬件接线。
将各元件按硬件接线图焊接到万能板上。
(2)编程并下载。
先设计好程序,然后使用Keil软件和Stc-ist烧录软件将程序拷贝、输入到89C51中。
(3)观察运行结果。
将编程完成的89C51芯片插入到硬件电路板的CPU插座中,接通电源,观察LED灯的亮灭。
五实验结果展示:
<此处放你的实物照片>
六实验结果分析:七实验心得:
八参考文献:。