单片机基于at89s52实现从00~99循环的实训报告5000字_第1页
单片机基于at89s52实现从00~99循环的实训报告5000字_第2页
单片机基于at89s52实现从00~99循环的实训报告5000字_第3页
单片机基于at89s52实现从00~99循环的实训报告5000字_第4页
单片机基于at89s52实现从00~99循环的实训报告5000字_第5页
已阅读5页,还剩12页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

PAGE单片机基于at89s52实现从00~99循环的实训报告5000字篇一:单片机实验报告单片微型计算机原理及应用实验报告学院名称专业名称学生姓名学生学号任课教师实验报告成绩教务处制XX年1月13日1.单片机实验平台简介实验采用风标电子微控制器仿真实验实训箱,包含丰富的硬件资源与接口电路、多种处理器模块。系统采用“核心板+底板”双层结构,通过更换不同型号核心板,可学习不同系列的单片机及CPLD等。此实验系统针对快速掌握运用单片机和CPLD而开发的,含大量的硬件资源,能不同程度地满足现代电子技术实验的要求。同时,本系统丰富的功能单元,能够做出超出大纲要求的的综合实验。uVision4软件简介KeilC51是美国KeilSoftware公司出品的51系列兼容单片机C语言软件开发系统,在功能上、结构性、可读性、可维护性上有明显的优势。提供了包括C编译器、宏汇编、连接器、库管理和一个强大的仿真调试器。使用C语言编程,Keil几乎就是必选,其方便易用、强大的软件仿真调试工具令人事半功倍。实验一I/O开关量输入实验[实验目的]熟悉单片机的最小系统,了解单片机I/O的结构;掌握按键键值的读入和处理;学习简单程序的编写。[实验内容][实验要求]1、利用单片机,按键和发光二极管,构成一个LED灯控制电路;2、上电时,点亮LED,按下K1时,LED向左移一位,按下K2时,LED向右移一位。[实验步骤]1、打开Uv4IDE环境,选择菜单Project的下拉菜单OpenProject选项,加载后缀名为uvproj的工程文件。2、选择菜单Project的下拉菜单OptionsforTarget选项。在弹出的窗口中,选择output选项,在CreatHEXFile的勾选项中,勾选。这样才能生成HEX文件。3、选择菜单Project的下拉菜单Buildtarget选项,如无错误或特别警告,编译链接完成后就会产生相应工程的HEX文件了。[程序及注释]#includelt;#includelt;#defineucharunsignedchar//数据类型宏定义#defineuintunsignedint/单片机IO口引脚定义/#defineLEDP0sbitK1=P1;sbitK2=P1;/函数定义/ucharscan_key();voidproc_key(ucharkey_v);voiddelayms(ucharms);/主函数/voidmain(void){ucharkey_s,key_v;key_v=0x03;//初始化IO口LED=0xfe;while(1){key_s=scan_key();if(key_s!=key_v)//判断按键是否按下{delayms(10);//延时消抖key_s=scan_key();if(key_s!=key_v){key_v=key_s;proc_key(key_v);}}}}/键盘扫描函数/ucharscan_key(){ucharkey_s;key_s=0x00;key_s|=K2;key_slt;lt;=1;key_s|=K1;returnkey_s;//返回按键号}/键盘处理函数/voidproc_key(ucharkey_v){if((key_v0x01)==0){LED=_cror_(LED,1);//循环右移一位}elseif((key_v0x02)==0){LED=_crol_(LED,1);//循环左移一位}}/延时函数/voiddelayms(ucharms)//延时子程序{uchari;while(ms--){for(i=0;ilt;120;i++);}}[实验现象及结果]上电时,点亮P00的LE,当按下K1时,LED向右移一位,按下K2时,LED向左移一位.实验二I/O驱动实验[实验目的]了解I/O口的电气特性和驱动能力。掌握程序编写的方法。了解LED电路中加入限流电阻的原因。[实验内容][实验要求]利用单片机及8个发光二极管等器件,构成一个流水灯单片机系统。[实验步骤]1、打开Uv4IDE环境,选择菜单Project的下拉菜单OpenProject选项,加载后缀名为uvproj的工程文件。篇二:单片机实训报告单片机实训报告题目:单片机上课时钟控制器组员:荣彬彬牟斌李会班级:XX级电气四班指导老师:石梅香一:实验器材AT89S52单片机外接12MHz晶振2个数码管蜂鸣器7407芯片电容电阻等元件二:实验目的做一个计时时钟,了解设计要求及设计需要的技术,通过这次课程实验,一方面使我们课堂学的单片机知识进一步巩固和验证,另一方面也增加了我们的感性认识,有助于加深我们对所学知识的理解,同时也锻炼了我们实际动手能力和分析问题能力。三:课程设计任务利用AT89S52单片机定时器,中断,串行口,内存等内部资源,两位LED4段数码管,实现电子秒表功能的多样化。四:实验设计要求1要求能够实现上下课时间控制器显示功能2能产生12MHz的振荡信号供单片机使用3四位LED显示:动态方式扫描显示,要求无闪烁,能正确显示程序送显的数据4能正确显示秒表的进制5外扩按键,能够正确识别键值,当按下时,能够正确调试LED显示,能够秒表功能。五:实验原理本设计为电子计时器综合系统,主控芯片采用AT89S52单片机。配合软件延时实现秒的计时。本系统设计采用此种软件控制方法来实现计时,通过定时器定时中断,使时间缓存单元数据加一,提供系统时间。同时可以通过键盘对时间缓存单元数据进行修改,以达到修改时间的目的。单片机内的数据通过并行I/O接口输入输出。并驱动四位LED数码管,动态显示数据。晶振及复位电路为单片机提供工作脉冲及复位信号。在单片机应用系统中,键盘和显示往往需要同时使用,为节省I/O口线,可将键盘和显示电路做在一起,构成实用的键盘、显示电路。图一中,是采用8155的I/O口线。8155芯片不仅具有两个8位的I/O端口(A口和B口)和一个6位的I/O端口(C口),而且还可以提供256B的静态RAM存储器和一个14位的定时/计数器,它和单片机的接口非常简单。由于键盘与显示共用一个接口电路,因此,在软件设计中要综合考虑键盘查询与动态显示,编程比较复杂。硬件电路图如下图(一)所示六:硬件设计1芯片介绍AT89S52单片机是低功耗的、具有4KB在线课编程Flash存储器的单片机。它与通用80C51系列单片机的指令系统和引脚兼容。片内的Flash可允许在线重新编程,也可使用非易失性存储器编程。他将通用CPU和在线可编程Flash集成在一个芯片上,形成了功能强大、使用灵活和具有较高性能性价比的微控制器。AT89S52具有如下特性:(1)片内程序存储器含有4KB的Flash存储器,允许在线编程,檫写周期可达1000次;(2)片内数据存储器内含128字节的RAM;(3)I/O口具有32根可编程I/O线;(4)具有两个16位I/O线;(5)中断系统具有6个中断源、5个终端矢量、2个中断优先级的中断结构;(6)串行口是一个全双工的串行通信口,具有两个数据指针DPTR0和DPTR1,低功耗节电模式有节电模式和掉电模式,包含3级程序锁定位;(7)AT89S52的电源电压为,AT89C51的电源电压为,振荡器频率0-33MHz(AT89S52),0-16MHz(AT89LS51;(8)具有片内看门狗定时器,灵活的在线片内编程模式(字节和页编程模式);(9)具有断电标志模式POF。2引脚功能P0口——8位、开漏极、双向I/O口,P0口可作为通用I/O口,但必须外接上拉电阻;作为输出口,每个引脚课吸收8个TTL的灌电流。作为输入时,首先应将引脚置1,P0口也可用作外部程序存储器和数据存储器是的低八位地址/数据总线的复用线。在该模式下,P0口含有内部上拉电阻,在Flash编程时,Po口接受代码数据;在编程校验时,P0口输出代码字节数据(需要外接上拉电阻),P1口——8位、双向I/O口、内部含有行拉电阻,P1可作为普通I/O口。输出缓冲器可驱动4个TTL负载;用作输入时,先交引脚置1,有片内上拉电阻将其抬到高电平。P1口的引脚可由外部负载拉倒低电平,通过上拉电阻提供拉电流。在Flash并行,编程和校验时,P1口可输入低字节地址,在串行编程和校验时,MOSI,OSI和SCK分别是串行数据输入、输出和移位脉冲引脚。I/O具有内部拉电阻的8位双向I/O。P2口用作输出口时,可驱动四个TTL负载;用作输入口时,先将引脚置1,由内部上拉电阻将其提高到高电平。若负载为低电平,则通过内部上拉电阻向外输出电流。CPU访问外部16位地址的存储器时,P2口提供高8位的地址。当CPU用8位地址寻址外部存储器时,P2口为P2特殊功能寄存器内容。在FLASH并行编程和校检时,P2口可输入高字节地址和某些控制信号。--P3口——局有内部上拉电阻8位双向口。P3口左忽出口时,输出缓冲器可吸收4个TTL的灌电流;用作输入口时,手先将引脚置1,有内部上拉电阻抬为高电平。若外部负载是低电平,则通过内部上拉电阻向外输出电流。输入/输出引脚-,-,-,-。①P0口(-)是一个8位漏极开路型双向I/O口,在访问外部存储器时,它是分时传送的低字节地址和数据总线,P0口能以吸收电流的方式驱动八个LSTTL负载。②P1口(-)是一个带有内部提升电阻的8位准双向I/O口。能驱动(吸收或输出电流)四个LSTTL负载。③P2口(-)是一个带有内部提升电阻的8位准双向I/O口,在访问外部存储器时,它输出高8位地址。P2口可以驱动(吸收或输出电流)四个LSTTL负载。④P3口(-)是一个带有内部提升电阻的8位准双向I/O口。能驱动(吸收或输出电流)四个LSTTL负载。图二AT89s52单片机引脚图3复位电路复位电路是使单片机的CPU或系统中的其他部件处于某一确定的初始状态,并从这上状态开始工作。除了进入系统的正常初始化之外,当由于程序运行出错或操作错误使系统处于死锁状态时,为摆脱困境,也需要按复位键。通常单片机复位操作有上电复位、信号复位、运行监视复位,运行监视有程序运行监视和电源监视。手动复位要求接通电源后按键,单片机自动实现复位操作。瞬间RESET引脚获得高电平,随着电容的充电,RERST引脚的高电平将逐渐下降。RERST引脚的高电平只要能保持足够的时间(2个机器周期),单片机就可以进行复位操作。上电与按键均有效的复位电路不仅在上电时可以自动复位,而且在单片机运行期间,利用按键也可以完成复位操作(图三所示)。所以本设计选用第二种上电复位与按键均有效的各单位电路。篇三:单片机实验报告单片机原理实验报告学年:______________学期:______________专业:09电子信息工程班级:______________姓名:____Pred______学号:______________指导老师:___________日期:年月日目录contentsO输入、输出实验…………………32.数码管动态扫描显示实验……………….….………63.键盘输入实验….……….……………94.定时/计数器…………125.音频控制实验……………..…………166.串行口通信………………..…………22说明:个实验程序均在伟纳电子ME830单片机实验板上调试成功。Mcu是AT89S52。2.音频控制实验源码来自网上,若想在晶振上运行,只需更改输出频率表格的定时器初值即可。同时,由于程序占用233字节data,写入普通51mcu是运行不了的,这里我是用ICE52仿真器运行。3.串行口通信实验中上位机使用伟纳电子的串口调试软件,可以到其官方网站下载。4.由于本次实验旨在达到实验目的,程序本身存在很多不完善的地方,如:定时计数器实验中取位运算中耗费大量时间,导致显示过程出现闪烁现象。5.电路原理图在prorel99se上画的,不能保证原理图的正确。(我还没学呢….)实验一:I/O口输入/输出实验1.实验任务流水灯单循环,P0口接八个共阳发光二极管,分别为D0、D1……D7。程序先点亮D0,延时一段时间(1秒钟),再顺序点亮D1……D7,然后又是D0。同时只能有一个灯亮。设晶振频率fosc=,要求亮灯1秒后下一个灯点亮。2.实验原理图3.系统板上硬件连接4.程序设计内容1)先计算好定时器初值,并载入TH0,TL02)等待定时器中断响应,响应后累次叠加到1s时,设置标志位3)检测标志位,点灭上一个灯,点亮点一个灯4)判断是否点亮第七个灯,是则下一个点亮第零个灯,否则跳过5.程序框图语言源程序#includelt;#defineucharunsignedchar#defineLEDPORTP0bitledturn=0;//设置亮灯标志chari=0;ucharcodeledlight[8]={0xFE,0xFD,0xFB,0xF7,0xEF,0xDF,0xBF,0x7F};//led亮起顺序voidmain()N{RCAP2H=0x4C;//定时器2,晶振,单次定时50msRCAP2L=0x00;ET2=1;//定时器2中

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论