MCU综合课程设计——IO接口实验与LED显示实验.docVIP

MCU综合课程设计——IO接口实验与LED显示实验.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
MCU综合课程设计——IO接口实验与LED显示实验

实 验 报 告 课程名称: MCU(微控制器)综合课程设计 实验名称: I/O接口实验与LED显示实验 院 (系): 专 业: 姓 名: 学 号: 实 验 室: 测控技术实验室 实验组别: 同组人员: 实验时间: 2011 年 4 月 29 日 评定成绩: 审阅教师: 目 录 实验目的和要求······································3 实验原理···········································3 实验方案和实验步骤··································5 实验设备与器材配置··································8 实验记录············································8 实验总结···········································8 源代码··············································8 实验目的和要求 熟悉和掌握编辑和编译环境Keil和Medley; 熟悉汇编语言; 了解I/O接口和使LED灯和数码管亮的原理。 利用实验板I/O口(例如P0口)控制8个LED循环显示,循环点亮时间间隔约为1秒(采用软件延时实现)。 在8个LED数码管显示8个指定的数(例如学号后8位)。 实验原理 (1)、I/O接口实验(流水灯实验): 本实验采用上排LED指示灯(与FPGA相连),其原理图如下: 主板左下方有16个LED指示灯,其中上面8个LED指示灯FLED0~FLED7输入直接与FPGA插座引脚相连,可由FPGA模块输出引脚直接驱动,需要8根导线将I/O口与相应的LED连接。输入高电平时相应指示灯被点亮(这里实验箱开机复位后默认是点亮的)。通过改变送到I/O接口的8位数,控制8个LED灯的亮灭。本实验中使用的单片机的工作频率为12MHz,机器周期为1us。延时1s的实现可通过控制指令周期来实现。 (2)、LED显示实验: 要求在8个LED数码管显示8个指定的数(例如学号后8位)。 LED数码管的电路图如下: 如图所示:实验装置上设有8只共阳极七段数码管及驱动电路,8只数码管共数据线,通过片选可以分别显示。段码表为: 数码管模块具有两个地址:片选地址(位控地址)0F400H和数据(段码)地址0F300H,要在某个数码管上显示1个数,需要先向片选地址上送一个数,选中其中一个数码管,再向数据地址送要显示的数据的段码值,这就是位控和段控。数码管的I/O地址都为片外地址。数码管要8位同时显示,需要采用动态刷新的方式将8位数码管轮流显示。刷新时间可设为1ms,可用软件延时实现。段码可采用查表法或其它方法来实现,例如查表法TAB: DB 0C0H,0F9H,… 实验方案与实验步骤(最好绘制程序流程图) (一)、I/O接口实验(流水灯实验) 实验步骤:编译环境为Medley (1)新建项目,命名后其它设置按默认进行,无需手工进行任何设置(一路默认设置即可)直到完成项目的创建。 (2)添加自己编写的.asm源文件。 (3)编译/汇编。 (4)用8根导线分别将8个LED指示灯 FLED0~FLED7和P0口的8位相连。 (5)生成代码并下载到仿真器上。 (6)全速运行,即可看到流水灯现象。 实验方案:利用实验板I/O口(例如P0口)控制8个LED循环显示,循环点亮时间间隔约为1秒。先将A中的数赋01,并送到P0口,即右边第一个灯亮,调用延时,然后A的数值左移,再送P0口,再延时,采用RL A左移,所以当最左边的灯亮后,下一次亮的会是最右边的灯,如此循环反复,流水灯就运作起来了。 流程图: N 该实验的延时1S用指令周期的个数实现,一个机器周期为1us,所以需要个指令周期。计算所编写程序的延时时间为: {[(248*2+3)*20+3]*20+3+1+2*168}*5+3=us (二)、LED显示实验 实验步骤:编译环境为Medley,本实验无需连图,编写.asm源文件,编译后生成代码下载到仿真器上,全速运行,即可看到数码管的现象。 实验方案:通过片选地址(位控地址)0

文档评论(0)

a888118a + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档