2025年led灯实验报告.pdfVIP

  • 0
  • 0
  • 约6.79千字
  • 约 10页
  • 2025-10-23 发布于山东
  • 举报

子曰:“知者不惑,仁者不忧,勇者不惧。”——《论语》

led灯实验报告

篇一:单片机实验报告——LED灯控制器

《微机实验》报告

LED灯控制器

指导教师:专业班级:姓名:学号:

联系方式:

一、任务要求

实验目的:加深对定时/计数器、中断、IO端口的理解,掌握定

时/计数器、中断的应

用编程技术及中断程序的调试方法。

实验内容:利用C8051F310单片机设计一个LED灯控制器主要

功能和技术指标要求:1.LED灯外接于P0.0端。

2.LED灯分别按2Hz,1Hz和0.5Hz三种不同频率闪动,各持续

10s。3.在LED灯开始和停止闪烁时蜂鸣器分别鸣响1次。4.利

用单片机内部定时器定时,要求采用中断方式。提高要求:

使用按键(KINT)控制LED灯闪烁模式的切换。

二、

设计思路

C8051F310单片机片上晶振为24.5MHz,采用8分频后为

3.0625MHz,输入时钟信号为48个机器周期,所以T1定时器采

用定时方式1,单次定时最长可以达到的时间为1.027s,可以满足

臣心一片磁针石,不指南方不肯休。——文天祥

0.5Hz是的定时要求。基础部分:

给TMOD赋值10H,即选用T1定时器采用定时方式1,三种频

率对应的半周期时间为0.25s、0.5s、1s。计算得需给

TH1和TL1为C1H、B1H;83H、63H;06H、C6H。要使闪烁持续

10s,三种模式需要各循环40、20、10次。

用LOOP3:MOVC,PSW.5;PSW.5为标志位,进定时器中断后置

JNCLOOP3

代替踏步程序等待中断,以便中断完后回到主程序继续向下执

行。

为了减少代码长度,可以采用循环结构,循环主题中,将R1、

R2分别赋给TH1、TL1,R7为循环次数(用DJNZ语句实现);定

时中断里,重新给TH1、TL1赋值时同理。这样,循环时只要把定

时时间和循环次数赋给R1、R2、R7即可,达到减少代码长度的效

果。

蜂鸣器也采用T1定时方式1,定时一秒。

提高部分:

采用外部中断0,下降沿触发。外部中断程序里置标志位PSW.1

和R0,PSW.5用于判断执行完一种模式后,是否跳出循环结束。

R0用于判断执行何种模式,每按一次后RO加一,第四次时就将

R0和PSW.5清零,这样程序就又回到了基础部分的循序执行。

因为中断程序执行完后,会回到原来程序中断的地方,继续向

太上有立德,其次有立功,其次有立言,虽久不废,此谓不朽。——《左传》

下执行而给程序运行带来诸多不便。所以,查看了RETI语句的实

现形式:将栈顶压入PCH,POP后再将栈顶压入PCL,利用这个

定义,只要将需要返回的地址压入PCH和PCL就能返回到指定地

址。

三、资源分配

P0.0:为LED灯控制端口,高电平触发。

P3.1:为蜂鸣器控制端口,高电平触发。P0.1:为KINT键控制

端口,下降沿触发。

R1、R2:用于存放计时器计时数据,R1赋给TH1、R2赋给TL1。

R7:存放三种模式的循环次数。

R0:在外部中断程序中赋值,用于判断采用何种模式。

PSW.1:为标志位,用于等待定时器中断,中断执行完清零,并

在中断处向下继续执

行程序。

PSW.5:为标志位,用于判断执行一种中断还是三种,在外部中

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档