- 1、本文档共6页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实验8数码管LED实验报告
苏州大学实验报告
院、系 年级专业 姓名 学号
课程名称 成绩
指导教师 同组实验者 实验日期
实验名称: 数码管LED实验
一.实验目的
理解8段数码管的基本原理,理解8段数码管的显示和编程方法,理解4连排共阴极8段数码管LG5641AH与MCU的接线图。
二.实验内容
理解8段数码管原理,运行与理解各子程序,编制一个4连排8段数码管程序,MCU的PTA7-PTA4接各LED的位选线(自左到右),PTB7-PTB0接LED的数据线hgfedcba,在4连排8段数码管显示MCU复位后的开始到现在的运行时间。由于只有四个数码管,所以只显示MCU运行到目前为止的分钟和秒,当计时达到一个小时,就重新从00:00开始计时。另外,也可以通过PC方的串口通信程序,指定计时的开始值。
三.实验过程
(一)原理图
(二)接线图
(三)基本原理
8段数码管一般由8个发光二极管(Llight-emitting diode,LED)组成,每一个位段就是一个发光二极管。一个8段数码管分别由a、b、c、d、e、f、g位段,外加上一个小数点的位段h(或记为dp)组成。根据公共端所接电平的高低,可分为共阳极和共阴极两种。有时数码管不需要小数点,只有7个位段,称7段数码管。共阴极8段数码管的信号端高电平有效,只要在各个位段上加上相应的信号即可使相应的位段发光,比如:要使a段发光,则在a段加上高电平即可。共阳极的8段数码管则相反,在相应的位段加上低电平即可使该位段发光。
四.编程
(一)流程图
图8-4 数码管LED显示流程图(及其中断子程序)
(二)所用寄存器名称及其各个位
程序中没有使用与LED显示相关的控制和状态寄存器,仅仅使用了通用I/O口A口和B口。
(三)主要代码段
1.汇编方式:
数码管LED显示的主程序部分代码 ……
MainInit:: //复位后程序从此开始执行
//系统初始化
SEI //关中断
//1.堆栈初始化为RAM最高端
LDHX #RAMEndAddr //HX=#RAMEndAddr
TXS //HX-1-SP
//2.系统初始化
JSR MCUInit //初学时跳过此处
//3.串行口初始化
JSR SCIInit
//4.定时器1初始化
JSR Timer1Init //调定时器1初始化子程序
BSET #5,SCC2 //设置接收中断允许
CLI //开中断
//LED口初始化
LDA #0xff
STA LEDdata_D //数据口为输出到LED
STA LEDcs_D //位选口为输出到LED
//给Time[0-2]时分秒赋初值0、0、0 (?多一个0-1即可)
LDA #$0
STA Time
STA Time+1
STA Time+2
//程序总循环入口
MainLoop:
//LEDbuf[0-3]中放入要显示的数字
//分
LDA Time+1
CLRH
LDX #10
DIV
STA LEDbuf
PSHH
PULA
STA LEDbuf+1
//秒
LDA Time+2
CLRH
LDX #10
DIV
STA LEDbuf+2
PSHH
PULA
STA LEDbuf+3
//在4位共阴极LED上显示LEDbuf中的4个数据(只允许0-9)
MOV #I1 //初
文档评论(0)