单片机实验7

合集下载

单片机实验报告

单片机实验报告

目录一、实验一 (1)二、实验二 (7)三、实验三 (11)四、实验四 (15)实验一定时/计数器验证实验一、实验目的熟悉定时/计数器T0的特点,学会合理选择定时方式并能根据具体情况结合软件的方式定时。

二、实验设备及器件IBM PC机一台 PROTEUS 硬件仿真软件 Keil C51。

三、实验内容用AT89C51单片机的定时/计数器T0产生1s的定时时间,作为秒计数时间,当1s产生时秒计数加1;秒计数到60时,自动从0开始。

四、实验要求要求采用Proteus软件实现上述实验。

五、实验步骤1.打开Proteus ISIS编辑环境,按照表1-1所列的元件清单添加元件。

表1-1 元件清单元件全部添加后,在Proteus ISIS的编辑区域中按图1-1所示的原理图连接硬件电路。

图1-1 电路原理图2.根据参考程序绘出流程图,并辅以适当的说明。

流程图如图1-2所示:图1-2 程序流程图3.打开KeilμVision4,新建Keil项目,选择AT89C51单片机作为CPU,将参考程序导入到“Source Group 1”中。

在“Options for Target”对话窗口中,选中“Output”选项卡中的“Create HEX File”选项和“Debug”选项卡中的“Use:Proteus VSM Simulator”选项。

编译汇编源程序,改正程序中的错误。

4.在Proteus ISIS中,选中AT89C51并单击鼠标左键,打开“Edit Component”对话窗口,设置单片机晶振频率为12MHz,在此窗口中的“Program File”栏中,选择先前用Keil生成的.HEX文件。

在Proteus ISIS的菜单栏中选择“File”→“Save Design”选项,保存设计,在Proteus ISIS的菜单栏中,打开“Debug”下拉菜单,在菜单中选中“Use Remote DebugMonitor”选项,以支持与Keil的联合调试。

单片机实验心得体会7篇

单片机实验心得体会7篇

单片机实验心得体会7篇单片机实验心得体会1三月七号下午我们做了第一次单片机实验,虽然对单片机还不是很了解,但在学长的带领下我们基本上了解了单片机的的开发环境,进行了简单的编程。

李老师的一番话令我很受启发。

实践出真知,这是永恒不变的真理。

只有将理论付诸于实践并在实践中纠正发展理论,我们才能算是得到了真正的知识。

实验开始,学长直接从具体的编译细节讲起。

没有太多的介绍和理论的空谈。

就像老师说的没有必要把人民币的各个细节都了解的很清楚后才开始用钱一样。

很多时候我们正是在那些细枝末节上浪费了太多不必要的时间和精力。

通过一个简单的程序的讲解,我们就对CVAVR和AVRStudio有了初步的掌握。

看着一闪一闪的1ED,我们小组感到了单片机的神奇和奥秘,一种难以言表的激动涌上心头。

我们就像看到了交通拥挤的路上因为有了我们设计的红绿灯而变得秩序井然一样欣慰。

接下来我们组稍微改了下程序,变为了同时控制四个灯,而且让它们依次亮起,只是延迟的时间比预定的要长一些。

这也应该是十字路口的交通灯的原理吧。

总结起来,本次试验还是比较成功的。

但对下一次的试验充满了期待,希望能做出更有用,更贴近生活的作品。

我想也正是在这种不断的自我期望中,人类才能不断的总结经验,阔步向前。

单片机实验心得体会2通过今次单片机实训,使我对单片机的认识有了更深刻的理解。

系统以51单片机为核心部件,利用汇编软件编程,通过键盘控制和数码管显示实现了基本时钟显示功能、时间调节功能,能实现本设计题目的基本要求和发挥部分。

由于时间有限和本身知识水平的限制,本系统还存在一些不够完善的地方,要作为实际应用还有一些具体细节问题需要解决。

例如:不能实现只用两个按键来控制时钟时间,还不能实现闹钟等扩展功能。

踉踉跄跄地忙碌了两周,我的时钟程序终于编译成功。

当看着自己的程序,自己成天相伴的系统能够健康的运行,真是莫大的幸福和欣慰。

我相信其中的酸甜苦辣最终都会化为甜美的甘泉。

但在这次实训中同时使我对汇编语言有了更深的认识。

单片机生产实习心得体会7篇

单片机生产实习心得体会7篇

单片机生产实习心得体会7篇单片机生产实习心得1作为一名自动化专业的大三学生,我觉得做单片机课程设计是十分有好处的,而且是十分必要的。

在已度过的大学时间里,我们大多数接触的是专业课。

我们在课堂上掌握的仅仅是专业课的理论知识,如何去锻炼我们的实践潜力如何把我们所学的专业基础课理论知识运用到实践中去呢我想做类似的课程设计就为我们带给了良好的实践平台。

这次单片机课程设计我们历时两个星期,在我们班里算是倒数几组完成的吧,但经过这两个星期的实践和体验下来,我们又怎样会去在乎那个先后问题呢,因为对我来说学到的不仅仅是那些知识,更多的是团队和合作。

此刻想来,也许学校安排的课程设计有着它更深层的好处吧,它不仅仅仅让我们综合那些理论知识来运用到设计和创新,还让我们明白了一个团队凝聚在一齐时所能发挥出的巨大潜能!单片机作为我们的主要专业课之一,虽然在大三开学初我对这门课并没有什么兴趣,觉得那些程序枯燥乏味,但在这次课程设计后我发现自己在一点一滴的努力中对单片机的兴趣也在逐渐增加。

两个星期前我们五个人还在为到底选那个课题而发生分歧,最后还是在龚老师的耐心分析和指导下完成了课题的选定,但是随之而来的问题却远比我们想想的要困难的多过没想到这项看起来不需要多少技术的工作却是十分需要耐心和精力在两个星期后的这天我已明白课程设计对我来说的好处,它不仅仅仅是让我们把所学的理论知识与实践相结合起来,提高自己的实际动手潜力和独立思考的潜力,更重要的是同学间的团结,虽然我们这次花去的时间比别人多,但我相信我们得到的也会更多!在做本次课程设计的过程中,我感触最深的当属查阅超多的设计资料了。

为了让自己的设计更加完善,查阅这方面的设计资料是十分必要的,同时也是必不可少的。

我们是在做单片机课程设计,但我们不是艺术家,他们能够抛开实际尽情在幻想的世界里翱翔,而我们一切都要有据可依,有理可寻,不切实际的构想永远只能是构想,永远无法升级为设计。

其次,在这次课程设计中,我们运用到了以前所学的专业课知识,如:CAD 制图、汇编语言、模拟和数字电路知识等。

[整理]单片机6个必做实验

[整理]单片机6个必做实验

第一部分软件实验实验一二进制到BCD码转换一、实验目的1、掌握简单的数值转换算法2、基本了解数值的各种表达方法二、实验说明单片机中的数值有各种表达方式,这是单片机的基础。

掌握各种数制之间的转换是一种基本功。

我们将给定的一个二进制数,转换成二十进制(BCD)码。

将累加器A的值拆为三个BCD码,并存入RESULT开始的三个单元,例程A赋值#123。

三、实验内容及步骤1、启动计算机,打开伟福仿真软件,进入仿真环境。

首先进行仿真器的设置,选择使用伟福软件模拟器。

2、打开TH2.ASM源程序进行编译,编译无误后,全速运行程序,打开数据窗口(DATA),点击暂停按钮,观察地址30H、31H、32H的数据变化,30H更新为01,31H更新为02,32H更新为03。

用键盘输入改变地址30H、31H、32H的值,点击复位按钮后,可再次运行程序,观察其实验效果。

修改源程序中给累加器A的赋值,重复实验,观察实验效果。

3、打开CPU窗口,选择单步或跟踪执行方式运行程序,观察CPU窗口各寄存器的变化,可以看到程序执行的过程,加深对实验的了解。

四、流程图及源程序1.源程序RESULT EQU 30HORG 0000HLJMP STARTBINTOBCD:MOV B,#100DIV ABMOV RESULT,A ;除以100得百位数MOV A,BMOV B,#10DIV ABMOV RESULT+1,A ;余数除以10得十位数MOV RESULT+2,B ;余数为个位数RETSTART:MOV SP,#40HMOV A,#123CALL BINTOBCDLJMP $END2.流程图实验四程序跳转表一、实验目的1、了解程序的多分支结构2、掌握多分支结构程序的编程方法二、实验说明多分支结构是程序中常见的结构,在多分支结构的程序中,能够按调用号执行相应的功能,完成指定操作。

若给出调用号来调用子程序,一般用查表方法,查到子程序的地址,转到相应子程序。

单片机实训心得体会7篇

单片机实训心得体会7篇

单片机实训心得体会7篇单片机实训心得体会1通过这一个学期的单片机学习,我收获了很多关于单片机的知识,并且这些知识和日常的生活息息相关。

了解了一些简单程序的录入,LED显示器、键盘、和显示器的应用和原理。

LED显示器:LED显示器是由发光二管组成显示字段的器件。

通常的8段LED显示器是由8个发光二极管组成,LED显示器分共阳极和共阴极两种。

有段选码和和位选码。

当LED显示器每段的平均电流位5MA时,就有较满意的亮度,一般选择断码5-10MA电流;位线的电流应选择40-80MA。

LED显示器的显示方式有动态和静态两种。

7289A芯片是具有SPI串行接口功能的显示键盘控制芯片,它可同时取得8位共阴极数码管和64个键的键盘矩阵。

7289A的控制指令分为两类:8位宽度的单字节指令和16位宽度双字节指令;还有闪烁指令和消隐指令。

7289A采用串行方式SPI总线与微处理器通信;7289A与AT89C52接口电路,在实际电路中无论接不接键盘,电路中连接到其各段上的8个 100千欧的下拉电阻均不可以省去,如果不接键盘而只接显示器可以省去8个10千欧电阻,若仅接键盘而不接显示器,可省去串入DP及SA-SG连线的8个220欧电阻,7289A还需要外接晶体振荡电路。

液晶显示器简称LCD,其显示原理是用经过处后的液晶具有能改变光线传输方向的特性,达到显示字符和图形的目的。

最简单的笔段式液晶显示器类似于LCD显示器,可以显示简单的字符和数字,而目前大量使用的是点阵式LCD显示器,既可以显示字符和数字也可以显示汉字和图形。

如果把LCD显示屏、背光可变电源、接口控制逻辑、驱动集成芯片等部件构成一个整体,是的与CPU 接口十分方便。

键盘:键盘是最常见的计算机输入设备,它广泛应用于微型计算机和各种终端设备上。

计算机操作者通过键盘向计算机输入各种指令、数据,指挥计算机的工作。

按照键盘的工作原理和按键方式的不同,可以划分为四种:机械式键盘采用类似金属接触式开关,工作原理是使触点导通或断开,具有工艺简单、噪音大、易维护的特点。

(完整word版)ARDUINO入门及其简单实验(7例)

(完整word版)ARDUINO入门及其简单实验(7例)

ARDUINO入门及其简单实验(7例) (2)1. Arduino硬件开发平台简介 (2)1.1 Arduino的主要特色 (3)1.2 Arduino的硬件接口功能描述 (3)1.3 Arduino的技术性能参数 (4)1.4 电路原理图 (4)2. Arduino软件开发平台简介 (5)2.1 菜单栏 (6)2.2 工具栏 (6)2.3 Arduino 语言简介 (7)3. Arduino开发实例中所用部分器件 (9)1. LED简介 (9)2. 光敏电阻简介 (10)3. 直流电机简介 (10)4. 电位器简介 (10)4. Arduino平台应用开发实例 (11)4.1【实作项目一】利用LED作光敏电阻采样实验 (11)4.2【实作项目二】利用PWM信号控制LED亮度 (13)4.3【实作项目三】单键控制一只LED的亮灭 (15)4.4【实作项目四】利用PWM控制直流电机转速 (17)4.5【实作项目五】利用电位器手控LED亮度 (20)4.6【实作项目六】控制LED明暗交替 (22)4.7【实作项目七】利用光敏电阻控制LED的亮灭 (24)ARDUINO入门及其简单实验(7例)1. Arduino硬件开发平台简介Arduino硬件是一块带有USB的I/O接口板(其中包括13条数字I/O引脚,6通道模拟输出,6通道模拟输入),并且具有类似于Java、C语言的集成开发环境。

Arduino既可以扩展一些外接的电子元器件,例如开关、传感器、LED、直流马达、步进马达或其他输入、输出装置;Arduino也可以独立运行,成为一个可以跟交互软件沟通的接口装置,例如:Flash、Processing、Max/MSP、VVVV或其他互动软件。

Arduino开发环境IDE全部开放源代码,可以供大家免费下载、利用,还可以开发出更多激发人们制作欲望的互动作品。

如图1和图2所示,分别为Arduino硬件平台的实物图和电路布局图。

单片机实验程序及流程图

单片机实验程序及流程图

《单片机技术》实验多媒体讲义《单片机技术》实验多媒体讲义《单片机技术》实验多媒体讲义三.程序清单及程序流程框图ORG 0000H Array LJMP MAINMAIN: MOV R0,#30HMOV R2,#10HCLR AA1: MOV @R0,AINC R0INC ADJNZ R2,A1MOV R0,#30HMOV R1,#40HMOV R2,#10HA2: MOV A, @R0MOV @R1,AINC R0INC R1DJNZ R2, A2MOV R1,#40HMOV DPTR ,#4800HMOV R2, #10HA3: MOV A,@R1MOVX @DPTR ,AINC R1INC DPTRDJNZ R2,A3MOV SP,#60HMOV R2,#10HMOV DPTR ,#4800HPUSH DPLPUSH DPHMOV DPTR,#5800HMOV R3,DPLMOV R4,DPHA4: POP DPHPOP DPLMOVX A,@DPTRINC DPTRPUSH DPLPUSH DPHMOV DPL,R3MOV DPH,R4 MOVX @DPTR,A INC DPTRMOV R3,DPLMOV R4,DPHDJNZ R2,A4MOV R0,#50HMOV DPTR,#5800H MOV R2,#10HA5: MOVX A,@DPTR MOV @R0,AINC R0 INC DPTR DJNZ R2,A5POP DPH POP DPL HERE: LJMP HEREEND《单片机技术》实验多媒体讲义《单片机技术》实验多媒体讲义《单片机技术》实验多媒体讲义三.实验电路四.程序清单及流程图程序一ORG 0000HLJMP MAIN ORG 000BH LJMP IPTO MAIN: MOV SP, #30H MOV TMOD, #01HCLR 00H SETB EA SETB ET0 MOV TH0, #3CH MOV TL0, #0B0H MOV R1, #14H SETB TR0 MOV A, #0feH MOV P1, A NT: JNB 00H, NT RL A MOV P1, ACLR 00H LJMP NT IPTO: MOV TH0,#3CH MOV TL0,#0B0HDJNZ R1, TIOMOV R1, #14HSETB 00HTIO: RETIEND程序二只需将程序一中“RL A”改为“RR A”即可实现其功能。

《单片机原理及应用》实验指导书(C语言)

《单片机原理及应用》实验指导书(C语言)

《单片机原理及应用》实验指导书(C语言)《单片机原理及应用》实验指导书(C语言)某某大学物电学院微机教研室某某2022前言由于单片机具有高可靠性、超小型、低价格、容易产品化等特点,在仪器仪表智能化、实时工业控制、实时数据采集、智能终端、通信设备、导航系统、家用电器等控制应用领域,具有十分广泛的用途。

由于目前在国内单片机应用中,MCS-51系列单片机仍然是一种主流单片机,所以本实验指导书为学习MCS-51单片机的学生,配合《单片机原理及应用》课程的教学,结合本学院自制单片机教学实验板编写了这本实验指导书。

《单片机原理应用及》是一门实践性很强的课程,提高教学质量的一个重要环节是上机实习和训练,无论是学习汇编语言程序设计,还是学习接口电路和外设与计算机的连接,或者软硬兼施地研制单片机应用系统,不通过加强动手是不能获得预期效果的。

本实验指导书提供多个实验的指导性材料,有些实验还有一些有一定难度的选做项目,可以根据课时的安排和教学要求进行取舍。

为了达到某些实验的目的,书中提供的参考程序与实际应用中的程序会有些差别,所以不一定是最优的。

由于时间紧迫,需要赶课程进度与实验时间的同步,加上编者学识有限,如有不妥之处,欢迎读者批评指正。

实验须知1.实验前必须阅读教科书的有关部分和本实验指导书,了解实验目的、内容、步骤,做好实验前的准备,编写好实验中要求自编或修改的程序;完成实验前要求完成的准备工作后方可以上机实验,否则不得上机操作。

2.各种电源的电压和极性不能接错,严禁带电接线和接插元器件。

通电前须经过指导教师检查认可后方能通电。

3.不准随意拨弄各种与实验无关的旋钮和开关,凡与本次实验无关的任何设备都禁止动用和摸弄,注意安全。

4.严禁用手触摸实验系统印制电路板和元器件的引脚,防止静电击穿芯片。

5.实验中若损坏仪器或元器件,应及时向指导教师报告。

6.在实验室内保持安静和卫生,不得随意走动和喧哗,集中精力完成实验。

7.实验完成后,关掉电源,及时整理实验台桌面,保持环境整洁。

单片机生产实习报告

单片机生产实习报告

单片机生产实习报告(经典版)编制人:__________________审核人:__________________审批人:__________________编制单位:__________________编制时间:____年____月____日序言下载提示:该文档是本店铺精心编制而成的,希望大家下载后,能够帮助大家解决实际问题。

文档下载后可定制修改,请根据实际需要进行调整和使用,谢谢!并且,本店铺为大家提供各种类型的经典范文,如工作计划、工作总结、合同协议、条据书信、规章制度、应急预案、策划方案、教学资料、作文大全、其他范文等等,想了解不同范文格式和写法,敬请关注!Download tips: This document is carefully compiled by this editor. I hope that after you download it, it can help you solve practical problems. The document can be customized and modified after downloading, please adjust and use it according to actual needs, thank you!Moreover, our store provides various types of classic sample essays, such as work plans, work summaries, contract agreements, document letters, rules and regulations, emergency plans, planning plans, teaching materials, complete essays, and other sample essays. If you want to learn about different sample formats and writing methods, please pay attention!单片机生产实习报告单片机生产实习报告精选7篇单片机生产实习报告篇1一、实习目的单片机是一种集成电路芯片,采用超大规模集成电路技术把CPU、ROM、RAM等功能集成到一块硅片上构成一块小而完善的微型计算机系统,在工业控制领域广泛应用。

51单片机实验报告

51单片机实验报告

51单片机实验报告51单片机是一款非常流行的单片机芯片,被广泛应用于各种电子产品中。

在这篇文章中,我们来探讨一下51单片机的一些实验,以及对于这些实验的理解和体会。

第一部分:实验内容我们进行的51单片机实验主要包括以下几个方面:1. 闪烁LED灯实验:这个实验是入门级别的,主要是为了熟悉51单片机的基本操作和编程方法。

在这个实验中,我们使用了一块51单片机开发板和几个LED灯,通过控制单片机的IO口信号来实现LED灯的闪烁。

2. 按键控制LED实验:这个实验是在闪烁LED实验的基础上进一步延伸的,主要是为了了解如何通过外部按键来控制单片机的输出。

在这个实验中,我们运用了单片机的外部中断和定时器等功能,实现了按键控制LED灯的亮灭。

3. LCD1602显示屏实验:这个实验是为了让我们熟悉如何在51单片机中使用LCD1602液晶显示屏。

在这个实验中,我们使用了I2C总线来与LCD1602进行通信,通过向LCD1602发送命令和数据来实现字符的显示。

4. 电机驱动实验:这个实验是让我们了解如何使用51单片机来控制电机的运转。

在这个实验中,我们运用了单片机的PWM控制功能,通过改变PWM波的占空比来控制电机的转速和方向。

第二部分:实验体会通过这些实验,我对于51单片机有了更深刻的理解和体会。

在这里,我想分享一下我的一些体会。

首先,我认为51单片机具有非常强大的控制能力和灵活性。

通过编写程序,我们可以控制单片机的各种IO口、定时器、PWM输出等功能,从而实现各种复杂的控制任务。

同时,由于其能够直接操作硬件,所以可以快速响应各种外部事件,对实时性要求较高的应用场景有很好的适应性。

其次,我发现在51单片机开发中,良好的软硬件结合非常重要。

由于51单片机具有丰富的外部中断、定时器等功能,因此我们可以很好地利用这些硬件资源来实现各种功能。

同时,在编写程序时,我们也需要充分发挥51单片机的硬件优势,例如使用定时器来完成计时任务,使用外部中断来完成输入检测等等。

51单片机实验报告

51单片机实验报告

51单片机实验报告一、引言51单片机是一种广泛应用于嵌入式系统开发的微控制器芯片。

本实验旨在通过对51单片机的实验研究,加深对该芯片的理解和应用。

二、实验一:LED灯闪烁控制本实验通过编写程序,控制51单片机上的LED灯以特定的频率闪烁。

为了实现这个目标,我们首先需要了解51单片机的引脚布局,确定LED灯的连接方式。

然后,通过编写相应的汇编程序,控制引脚的电平变化,从而实现LED灯的闪烁。

三、实验二:数码管显示数码管是一种常见的输出设备,通过控制引脚的输出来显示特定的数字。

本实验中,我们通过编写程序,实现通过51单片机控制数码管的显示。

通过对数码管的驱动原理和编程的学习,我们可以灵活地控制数码管的显示内容和频率。

四、实验三:蜂鸣器发声蜂鸣器是一种常见的声音输出设备,通过控制引脚的输出来产生特定的声音。

本实验中,我们通过编写程序,实现通过51单片机控制蜂鸣器的发声。

通过学习蜂鸣器的驱动原理和编程,我们可以根据需要产生不同频率和节奏的声音。

五、实验四:温湿度检测温湿度检测是一种常见的环境监测需求。

本实验中,我们通过引入温湿度传感器,实现通过51单片机获取环境的温度和湿度信息。

通过编写程序和读取传感器的数据,我们可以实时监测环境的温湿度,并进行相应的控制和反馈。

六、实验五:红外遥控红外遥控是一种常见的无线通信方式,通过发送和接收红外信号来实现远程控制。

本实验中,我们通过引入红外发射和接收模块,实现通过51单片机进行红外遥控。

通过编写相应的程序,设置红外遥控的编码和解码方式,我们可以实现对外部设备的遥控操作。

七、实验六:定时器应用定时器是51单片机中的重要模块,它可以实现定时和计数等功能。

本实验中,我们通过学习定时器的工作原理和编程,实现通过51单片机进行定时和计数的应用。

通过编写相应的程序和设置定时器的参数,我们可以实现不同的定时和计数功能,满足各种需要。

八、实验七:串口通信串口通信是一种常见的数据通信方式,通过串口接口发送和接收数据。

单片机原理实验报告

单片机原理实验报告

单片机原理实验报告班级:姓名:学号:实验日期:成绩:实验一基本操作实验目的:熟悉伟福仿真机软件的基本操作,熟悉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。

实验七:内置ADC做数字电压表

实验七:内置ADC做数字电压表

因此:ADCSRA=0xc6; 使用 ADC 模块,最重要就是这两个寄存器的配置,实际上,单片机内部的模块的使用 方法与此大同小异,主要工作在于配置内部寄存器,这种方法一定要掌握。 另外,ADC 模块启动后,第一次转换的结果不准确应舍弃。 ADC 模块介绍到此,回到开发板,开发板上方有一个多圈电位器,接在 VCC 构成一个 分压器,如下图:
Vx 1024 ,AVCC 的实测电压为 4.69V,因此 AVCC
4690 N (mV ) 4.59 N (mV ) 。 1024
USB 电压为 5.0V,进入开发板时经过了一个 1N5819 防逆二极管,1N5819 导通压降约 0.3V,因此实际供电电压只有 4.7V 左右。实验时,不同电脑的 USB 电压略有不同,直接用 以上计算公式误差不大,如果要更高精度,自行用万用表测量 AVCC,修正计算公式。
Editor:*轩辕十四* Created date:2010-2-3
-2-
华南理工大学无线电爱好者协会
AVR-R&D
V2.1
QQ 群:63191815
• Bit 6 – ADSC: ADC 开始转换 在单次转换模式下,ADSC 置位将启动一次ADC 转换。在连续转换模式下,ADSC 置位 将启动首次转换。第一次转换( 在ADC 启动之后置位ADSC,或者在使能ADC 的同时置位 ADSC) 需要25 个ADC 时钟周期,而不是正常情况下的13 个。第一次转换执行ADC初始 化的工作。在转换进行过程中读取ADSC 的返回值为"1”,直到转换结束。ADSC 清零不产 生任何动作。这一位是转换标志位,通过置位来启动,并判断是否转换结束。 • Bit 5 – ADATE: ADC 自动触发使能 ADATE置位将启动ADC自动触发功能。触发信号的上跳沿启动ADC转换。触发信号源通过 SFIOR 寄存器的ADC 触发信号源选择位ADTS 设置。这里单次转换,不需要自动触发, 置0。 • Bit 4 – ADIF: ADC 中断标志 在ADC 转换结束,且数据寄存器被更新后, ADIF 置位。如果ADIE 及SREG 中的全局 中断使能位I 也置位,ADC 转换结束中断服务程序即得以执行,同时ADIF 硬件清零。此 外,还可以通过向此标志写1 来清ADIF。要注意的是,如果对ADCSRA 进行读-修改-写 操作,那么待处理的中断会被禁止。这也适用于SBI 及CBI 指令。本实验不需中断,置0。 • Bit 3 – ADIE: ADC 中断使能 若ADIE 及SREG 的位I 置位, ADC 转换结束中断即被使能。这里不需中断,置0。 • Bits 2:0 – ADPS2:0: ADC 预分频器选择位 由这几位来确定XTAL 与ADC 输入时钟之间的分频因子,决定ADC转换速度。转换速度为 ADC时钟/13,对于15ksps的转换速度,需要195kHz的时钟源,本实验晶振为12MHz,进行64 分频恰好。即ADPS2..0:110。

实验七 键盘和显示实验_单片机原理及应用技术-基于Keil C和Proteus仿真_[共2页]

实验七 键盘和显示实验_单片机原理及应用技术-基于Keil C和Proteus仿真_[共2页]

第13章实验31913.1.7 实验七 键盘和显示实验1.实验目的通过本次实验进一步熟悉Keil uVision4和Proteus开发环境以及它们联机调试单片机汇编语言和C语言源程序方式方法,掌握STC89C52单片机扩展可编程并行接口82C55方法,82C55连接键盘和数码管,掌握扫描键盘和驱动数码管亮灭方法。

2.实验要求在本次实验前,使用Proteus软件画电路原理图,电路如图13-18所示。

图13-18 键盘、显示实验仿真电路图3.实验器材仿真实验:装有Keil uVision4以及Proteus7.0以上版本软件的笔记本或台式PC。

元件清单:1个STC89C52、1个HC573、1个82C55、2组七段数码管7SEG-MPX2-CA、16个按键键盘BUTTON、4个4.7K电阻10WATT4K7,一个+5V稳压电源。

4.实验内容根据电路原理图编写软件实现:(1)按逐行扫描方法或反转法,编写键盘扫描子程序。

(2)编写数码管显示子程序。

(3)将从键盘输入数据送数码管显示出来。

5.设计分析分析图13-18电路82C55两侧知:CPU端:单片机数据线与82C55数据线相连,单片机地址线A7连接82C55片选,单片机地址线A1A0连接82C55的端口选择线A1A0,单片机的读写线RD、WR与82C55的读写线相连。

外设端:82C55芯片A口连接数码管段码端,B口连接数码管位码端,C口低4位连接键盘行线,C口高4位连接键盘列线。

82C55的A、B、C和控制/命令端口地址为:FF7CH、FF7DH、FF7EH、FF7FH6.程序框图方法一:逐行扫描方法,该键盘、显示实验的主程序框图如图13-19所示,键盘扫描子。

单片机原理及应用 实验

单片机原理及应用 实验

单片机原理及应用实验
单片机是指一种集成了微处理器核心、存储器、输入输出功能和系统时钟等组件的微型计算机系统。

它通常由中央处理器(CPU)、存储器、输入输出设备和系统总线等组成。

单片机的工作原理是通过执行储存在存储器中的程序指令来完成特定的计算和操作。

单片机的应用非常广泛,可以应用于各种电子设备中。

以下是一些典型的单片机应用:
1. 控制系统:单片机可以用于工业控制系统、家庭自动化系统等场景中,通过接收输入信号并根据预设的逻辑程序来控制输出设备的状态,实现各种控制功能。

2. 电子设备:单片机可以应用于各种电子设备中,如电视机、音响、空调等。

它可以接收远程控制信号,并根据信号进行相关功能的操作。

3. 信息处理:单片机可以用于数据处理和信息传输领域,如数据采集和传输、数据处理和分析等。

4. 通信系统:单片机可以用于各种通信系统中,如电话、传真机、无线通信设备等。

它可以通过与外部设备的通信来实现相应的通信功能。

5. 汽车电子系统:单片机可以应用于汽车电子系统中,如发动机控制单元(ECU)、车载娱乐系统、车载导航系统等。

它可
以控制汽车各个系统的运行和协调。

6. 医疗设备:单片机可以应用于各种医疗设备中,如心电图机、血压计、血糖仪等。

它可以接收生理信号,并进行相应的处理和分析。

总之,单片机在电子领域有着广泛的应用,可以实现各种控制、处理和通信功能。

它为电子设备的智能化和自动化提供了重要的支持。

单片机按键实验报告

单片机按键实验报告

单片机按键实验报告篇一:单片机按键扫描实验报告键盘扫描一.实验目的(1)掌握矩阵键盘接口电路和键盘扫描编程方法。

(2)掌握按键值处理与显示电路设计。

二.实验任务(1)设计4*4键盘,编写各个键的特征码和对应的键值(0~F);(2)编程扫描按键,将按键对应的数字值使用数码管显示出来。

三.实验电路及连线方法1.采用动态显示连线方法:电路由2 片74LS573,1 个六字一体的共阴数码管组成。

由U15 输出段选码,U16 做位选码,与单片机的采用I/O 口连接方式,短路片J22 连接P2.0,J23 连接P2.3,做输出信号锁存。

(实际电路连接是d7-d6-d5-d4-d3-d2-d1-d0?h-c-d-e-g-b-a-f)。

PW12 是电源端。

2.键盘电路连线方法:电路由16 个按键组成,用P1 口扩展4×4 行列式键盘。

J20 是键盘连接端,连接到P1 口。

J21 是行列键盘、独立键盘选择端,当J21 的短路片连接2-3脚时,构成4×4 行列式键盘;当J21 的短路片连接2-1 脚时,可形成3×4 行列式键盘,4 个独立式按键S4、S8、S12、S16,这4 个独立按键分别连接P1.4~P1.7;其他12 个键3×4 行列式键盘。

PW15 是电源端。

四.编程思路1.采用反转法识别按键的闭合。

2.采用动态显示将键值显示出来。

五.算法流程图六.资源分配1.用P1口进行查找按键2.用R3做键值指针3.用R1做动态显示为选码指针。

4.R5为延时指针。

七.程序设计KPIN:ORG MOV MOV ANL MOV 0000H P1,#0F0H A,P1 A,#0F0H B,AMOVP1,#0FHMOVA,P1ANLA,#0FHORLA,BCJNE A,#0FFH,KPIN1AJMP EXITKPIN1: MOVB,AMOVDPTR,#TABKPMOVR3,#0KPIN2: MOVA,R3MOVC A,@A+DPTRCJNE A,B,KPIN3MOVA,R3LOOP: MOVR1,#0FEH;键盘动态显示 LOOP1: MOVA,R3ANLA,#0FHMOV DPTR,#TABMOVC A,@A+DPTRCLRP2.0CLRP2.1MOVP0,ASETB P2.0NOPCLRP2.0LOOP2: MOVA,R1;位选码MOVP0,ASETB P2.1MOVR5,#250LOOP3: DJNZ R5,LOOP3CLRP2.1SJMP LOOPKPIN3: INCR3CJNE A,#0FFH,KPIN2EXIT: RETTABKP: DB0EEH,0DEH,0BEH,7EH,0EDH,0DDH,0BDH,7DH,0EBHDB 0DBH,0BBH,7BH,0E7H,0D7H,0B7H,77H,67H,0FFHTAB: DB77H,44H,3EH,6EH,4DH,6BH,7BH,46H,7FH,6FH,5FHDB 79H,33H,7CH,3BH,1BHEND八.调试出现的问题及解决问题1:程序正常运行,但按键显示出现乱码解决:动态显示笔形码错误,并改正。

单片机第七章习题参考题答案

单片机第七章习题参考题答案

word 格式格式.. .. 第七章 习题参考答案一、填空题1、在串行通信中,有数据传送方向为 单工 、 半双工 和 全双工 三种方式。

2、要串口为10位UART UART,,工作方式应选为 方式1 。

3、用串口扩并口时,串行接口工作方式应选为方式 0 。

4、计算机的数据传送有两种方式,即 并行数据传送 和 串行数据传 送 方式,其中具有成本低特点的是 串行数据传送 方式。

5、串行通信按同步方式可分为 异步 通信和 同步 通 信。

6、异步串行数据通信的帧格式由 起始 位、 数据 位、 奇偶校验 位和位和停止 位组成。

7、串行接口电路的主要功能是 串行串行 化和 反串行 化,把 帧中格式信息滤除而保留数据位的操作是 反串行反串行 化。

8、专用寄存器“串行数据缓冲寄存器”,实际上是 发送缓冲 寄存器和 接 收缓冲寄存器的总称。

9、MCS-51的串行口在工作方式0下,是把串行口作为 同步移位 寄存器来使用。

这样,在串入 并出移位寄存器的配合下,就可以把串行口作为 并行输出 口使用,在并入串出移位寄存器的配合下,就可以把串行 口作为 并行输入 口使用。

1010、在串行通信中,收发双方对波特率的设定应该是、在串行通信中,收发双方对波特率的设定应该是约定 的。

1111、、使用定时器使用定时器//计数器设置串行通信的波特率时,计数器设置串行通信的波特率时,应把定时器应把定时器应把定时器//计数器1设定作方式 2 ,即 自动重新加载 方式。

1212、某、某8031串行口,传送数据的帧格式为1个起始位(个起始位(00),),77个数据位,据位,11个偶校验位和1个停止位(个停止位(11)组成。

当该串行口每分钟传送 1800个字符时,则波特率应为 300b/s 。

解答:串口每秒钟传送的字符为:解答:串口每秒钟传送的字符为:1800/60=301800/60=30个字符个字符//秒所以波特率为:所以波特率为:3030个字符个字符//秒×10位/个字符个字符=300b/s =300b/s 1313、、8051单片机的串行接口由发送缓冲积存器SBUF SBUF、、接收缓冲寄存器SBUF 、 串行接口控制寄存器SCON SCON、定时器、定时器T1构成的波特率发生器 等部件组成。

单片机原理及应用实验的实验总结

单片机原理及应用实验的实验总结

单片机原理及应用实验的实验总结实验一:单片机基本原理•实验目的:了解单片机的基本原理•实验内容:–学习单片机的基本结构和工作原理–掌握单片机的基本操作指令•实验步骤:1.搭建实验电路,连接单片机与开发板2.下载并安装开发环境3.编写简单的程序,使用LED等外设进行实验4.烧录程序到单片机,观察实验结果•实验结果:通过实验,我们对单片机的基本原理有了初步了解,能够进行简单的实验操作。

实验二:单片机应用实验•实验目的:掌握单片机的应用实验方法•实验内容:–学习使用单片机控制各种外设–实现对按键、数码管、继电器等设备的控制•实验步骤:1.搭建实验电路,连接单片机与相应的外设2.编写相应的控制程序3.烧录程序到单片机,观察实验结果•实验结果:通过实验,我们能够灵活运用单片机控制各种外设,实现各种应用实验。

实验三:单片机通信实验•实验目的:学习单片机的通信原理与方法•实验内容:–学习串口通信、SPI通信等通信方式–实现单片机与计算机、其他外设的通信•实验步骤:1.搭建实验电路,连接单片机与计算机或其他外设2.编写相应的通信程序3.烧录程序到单片机,观察实验结果•实验结果:通过实验,我们掌握了单片机的多种通信方式,并能够实现单片机与计算机、其他外设的通信。

实验四:单片机应用开发•实验目的:学习单片机应用开发的方法与技巧•实验内容:–学习使用开发板、传感器等进行应用开发–实现具体的单片机应用程序•实验步骤:1.选择合适的开发板和传感器2.编写相应的应用开发程序3.烧录程序到单片机,观察实验结果•实验结果:通过实验,我们能够独立进行单片机应用开发,并实现具体的应用功能。

实验总结通过以上实验,我们对单片机的原理和应用有了全面的了解。

通过实际操作,我们掌握了单片机的基本操作指令、各种外设的控制方法、通信方式以及应用开发的技巧。

这些都为我们今后在单片机项目中的应用打下了坚实的基础。

同时,通过实验,我们培养了动手能力、团队协作精神和解决问题的能力。

单片机实验报告(学期全部实验)

单片机实验报告(学期全部实验)

单片机程序设计实验报告姓名:学号:专业班级:第二节课:实验一:1357,2468位置的灯交替闪烁一实验要求1357,2468位置的灯交替闪烁。

二硬件连接图与结果三原理简述程序直接控制LED各位置的灯亮灭,时间间隔简单的用了一个延时的语句。

四程序#include<reg51.h>main (){int i;P0=0XAA; //1357四个灯亮for (i=0;i<=25000;i++); //延时程序P0=0X55; //2468四个灯亮for (i=0;i<=25000;i++); //延时程序}五所遇问题与解决方式程序比较简单,没有遇到问题。

实验二:流水灯一实验要求流水灯,一个接一个的灯亮,亮到最后一个后,全部的灯亮,然后重头开始。

二硬件连接图与结果三原理简述程序定义第一个位置的灯亮,通过一个时间间隔,运用一个循环移位程序转移到下一个灯,移位7次后全部的灯亮,最后定义整个循环。

时间间隔简单的用了一个延时的语句。

因为移位时是直接补0,发送低电平不亮,所以直接移位达到要求。

四程序//流水灯#include<reg51.h>main (){int i,j;while(1){P0=0X01; //第1个灯亮for (i=0;i<=30000;i++); //延时程序for(j=0;j<=7;j++) //移位循环程序{P0=P0<<1; //移位for (i=0;i<=30000;i++); //延时程序}P0=0xff; //全亮for (i=0;i<=30000;i++); //延时程序}}五所遇问题与解决方式程序比较简单,没有遇到问题。

实验三:跑马灯一实验要求一个接一个的灯亮,前面亮过的等依旧亮,直到最后一个灯,最后重新开始,循环。

二硬件连接图与结果三原理简述程序定义第一个位置的灯亮,通过一个时间间隔,运用一个循环移位程序转移到下一个灯,移位7次后全部的灯亮,最后定义整个循环。

单片机实验心得体会合集7篇

单片机实验心得体会合集7篇

单片机实验心得体会合集7篇单片机实验心得体会1学了一年多的单片机,对单片机也有了一个基础的了解。

在这一年里,我学了DS18B20、128,64大液晶、数码管显示等。

从最初的跑马灯,到整体融合,经历了一段时间。

单片机只有P0,P1,P2,P3,如果想把很多功能合在一起的话,就得复用,或着用到扩展,但是那个扩展模块不好用,写起程序来会比较麻烦,其实复用好的话,基本IO口都够用!学习的时候总是难免碰到一些问题!但是我的总结是:没关系,边做边想!或着讲瞎搞!不搞肯定不知道,搞了才会懂!过去的一些问题在现在看来都是小case,什么定时器赋值啊,定时器的使用类型(模式0,模式1,模式2),当时就自己在那里看书理解,一大堆的文字在那里,看了很久也不懂!不过后来我懂得了上网找视频教程!刚开始的时候也总是想为什么这么做,为什么这么做,为什么这么做,一堆的为什么。

现在懂了,做多了,就觉得要这样做,要这样做,就是这么做的,没错!不会的时候想着,反正会弄懂的,多试试!要相信熟能生巧,想想学习的时候,和现在的程度,不是在一个档次的!熟悉了操作,一些疑惑也会虽之解开!我最初开始学单片机是因为我喜欢编程,我觉得编程是一件乐趣的事!或着说享受技术带来的快乐!我现在懂得了有各门各样的语言,C语言是其中一种,还有更底程的汇编语言,java之类的高级语言,这些我都很喜欢!它们各有各自的好处和用处!而且我不想只会一门语言,所以我要慢慢地学习各种自己喜欢的语言!在学习的过程中遇到麻烦或着问题,已经习以为长了!遇到问题也不会焦虑,想的是该怎么解决!水平也是在不断解决问题中提高的,有这一点体会!其实初学单片机,碰到问题总是新的'知识而已,因为单片机很简单,也不用很懂电路原理,知道什么时候给0,什么时候给1,其它的就交给硬件去处理。

我也不单单只想有关单片机的程序单片机功能简单,一直写单片机也会变得呆板的(这期间就一直写单片机的程序,不写其它思考性的编程),至少我是这么觉得。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验七直流数字电压表设计
姓名:田坤学号:2 专业:电子信息科学与技术
1.实验目的:
掌握LED动态显示和A/D 转换接口设计方法。

2.实验原理:
实验电路原理图如图A..94所示。

图中显示器采用4位共阴极数码管,并按动态显示方式接线。

A/D转换结束标志采用查询法检查,启动信号由软件模拟产生,时钟信号由Proteus的DClock信号发生器产生,频率为5kHz。

电位器的输出电压送到A/D转换器中转换,转换结果以十进制形式显示在数码管上。

调节电位器可使数码管的显示值发生相应变化。

图实验7的电路原理图
3.实验内容:
#
(1)、学习使用Proteus软件,掌握原理图绘图方法;
(2)、学习使用Keil C软件,掌握C51程序编写与调试方法;(3)、理解动态显示与A/D转换工作原理,完成单片机电压采集与显示程序的编写与调试。

4.实验步骤:
(1)、在Proteus中绘制电路原理图,按照表将元件添加到编辑环境中;
(2)、在Keil中编写C51程序,并使之编译通过;
(3)、在Proteus中加载程序,观察仿真结果。

5.实验要求:
提交的实验报告中应包括电路原理图、含注释内容的源程序及实验结果分析。

表实验7的元器件清单
#
1)源程序如下:
#include <> // 头文件
#include <>
unsigned int tmp; //定义一个整形中间变量
sbit START=P2^5; //定义ADC0808启动位
sbit ad_busy=P2^6; //定义ADC0808转换结束标志位
sbit OE=P2^7; //定义ADC0808输出使能标志位
sbit P2_0=P2^0; //定义四个数码管
sbit P2_1=P2^1;
|
sbit P2_2=P2^2;
sbit P2_3=P2^3;
char led_mod[]= {0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; //LED字模
void delay( unsigned int time) //延时函数
{
unsigned int j=0;
for(;time>0;time--)
for(j=0;j<125;j++) ;
}
void show () // 数码管动态显示函数
{
{
unsigned i,j;
P2_0=0;
j=tmp/1000;i=j%1000;P0=led_mod[i]; delay(10); // 显示千位
P2_0=1;
P2_1=0;
j=tmp/100;i=j%100;P0=led_mod[i]; delay(10); // 显示百位
P2_1=1;
P2_2=0;
j=tmp/10;i=j%10;P0=led_mod[i]; delay(10); // 显示十位

P2_2=1;
P2_3=0;
i=tmp%10; P0=led_mod[i]; delay(10); // 显示个位
P2_3=1;
}
void main() // 主函数
{
while(1){
START=0;
START=1; // 启动A/D转换

START=0;
while(ad_busy==1); //等待A/D转换结束
OE=1; // 转换结果输出
tmp=P1; // 转换结果赋给中间变量
OE=0;
show(); // 输出转换数据
}
}
2)仿真结果:
3)实验结果分析:
本实验是使用A/D转换器将模拟信号(电位器输出电压)转换为数字信号,A/D转换器与80C51接在一起,转换结果通过80C51以十进
制形式动态显示在四个共阴极数码管上,通过改变模拟信号大小可以显示0~255之间任意数据。

其中A/D转换器启动信号由软件模拟产生,时钟信号由Proteus的DClock信号发生器产生。

6.实验小结:
这次实验掌握了数码管动态显示程序的编写,熟练了Proteus软件的使用。

相关文档
最新文档