欢迎来到天天文库
浏览记录
ID:32896973
大小:102.00 KB
页数:6页
时间:2019-02-17
《苏州大学实验报告-实验八数码管led实验报告》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、苏州大学实验报告院、系 年级专业 姓名 学号 课程名称 成绩 指导教师 同组实验者 实验日期 实验名称: 数码管LED实验 一.实验目的 理解8段数码管的基本原理,理解8段数码管的显示和编程方法,理解4连排共阴极8段数码管LG5641AH与MCU的接线图。二.实验内容 理解8段数码管原理,运行与理解各子程序,编制一个4连排8段数码管程序,MCU的PTA7-PTA4接各LED的位选线(
2、自左到右),PTB7-PTB0接LED的数据线hgfedcba,在4连排8段数码管显示MCU复位后的开始到现在的运行时间。由于只有四个数码管,所以只显示MCU运行到目前为止的分钟和秒,当计时达到一个小时,就重新从00:00开始计时。另外,也可以通过PC方的串口通信程序,指定计时的开始值。 三.实验过程(一)原理图(b)共阳极Vccabcdefgdp(a)共阴极GNDabcdefgdpagdfecbh图8-2数码管外形图8-1数码管(二)接线图agdfecbhagdfecbhagdfecbhagd
3、fecbhabfCS0CS1CS2cdeghCS3123456789101112PTC3PTB6PTB2PTB7PTB3PTB41K1K1K1KPTB1PTC2PTC1PTB5PTB0PTC0图8-3MCU与4连排8段数码管的连接第6页(三)基本原理 8段数码管一般由8个发光二极管(Llight-emittingdiode,LED)组成,每一个位段就是一个发光二极管。一个8段数码管分别由a、b、c、d、e、f、g位段,外加上一个小数点的位段h(或记为dp)组成。根据公共端所接电平的高低,可分为共阳极和共阴极两种。有时
4、数码管不需要小数点,只有7个位段,称7段数码管。共阴极8段数码管的信号端高电平有效,只要在各个位段上加上相应的信号即可使相应的位段发光,比如:要使a段发光,则在a段加上高电平即可。共阳极的8段数码管则相反,在相应的位段加上低电平即可使该位段发光。四.编程(一)流程图开始SCI初始化子程序头文件和声明定时器初始化子程序开放SCI接收中断、定时器1溢出中断,开放总中断结束人工复位1?开始把当前计时值改变为接收到的计时初始值结束开始等待SCI接收中断事件的发生取得计时初始值分钟达到60则清零计时值的秒加1秒达到60则清零,分
5、钟值加1结束等待定时器溢出中断事件的发生 图8-4数码管LED显示流程图(及其中断子程序)(二)所用寄存器名称及其各个位程序中没有使用与LED显示相关的控制和状态寄存器,仅仅使用了通用I/O口A口和B口。(三)主要代码段1.汇编方式:数码管LED显示的主程序部分代码……MainInit:://复位后程序从此开始执行//系统初始化SEI//关中断//1.堆栈初始化为RAM最高端LDHX#RAMEndAddr//HX=#RAMEndAddrTXS//HX-1->SP//2.系统初始化第6页JSRMCUInit//初学时跳
6、过此处//3.串行口初始化JSRSCIInit//4.定时器1初始化JSRTimer1Init//调定时器1初始化子程序BSET#5,SCC2//设置接收中断允许CLI//开中断//LED口初始化LDA#0xffSTALEDdata_D//数据口为输出到LEDSTALEDcs_D//位选口为输出到LED//给Time[0-2]"时分秒"赋初值0、0、0(?多一个0-1即可)LDA#$0STATimeSTATime+1STATime+2//程序总循环入口MainLoop://LEDbuf[0-3]中放入要显示的数字//分
7、LDATime+1CLRHLDX#10DIVSTALEDbufPSHHPULASTALEDbuf+1//秒LDATime+2CLRHLDX#10DIVSTALEDbuf+2PSHHPULASTALEDbuf+3//在4位共阴极LED上显示LEDbuf中的4个数据(只允许0-9)MOV#%11111110,I1//初始位选信号(共阴极情况)//MOV#4,I2//显示个数AIS#-1LDA#4STA1,SPLDHX#LEDbufLEDShow:PSHH//保护数据地址PSHXLDX,X//数据LDAI1//位选信号JSR
8、LEDShow1//显示一个数据LDAI1//变动位选信号SECROLASTAI1//延时LDHX#10JSRDelay_msPULX//恢复数据地址PULH第6页AIX#1//指向下一个数据DBNZ1,SP,LEDShowAIS#1JMPMainLoop……数码管LED显示的中断子程序部分代码……//Timer1Int:定时器1
此文档下载收益归作者所有