您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 交通运输 > 单片机综合实验LED灯控制器
《微机实验》报告1实验名称实验三综合实验-LED灯控制器指导教师专业班级姓名学号联系电话一、任务要求实验目的:加深对定时/计数器、中断、IO端口的理解,掌握定时/计数器、中断的应用编程技术及中断程序的调试方法。实验内容:利用C8051F310单片机设计一个LED灯控制器主要功能和技术指标要求:1.LED灯外接于P0.0端。2.LED灯分别按5Hz,1Hz和0.5Hz三种不同频率闪动,各持续20s。3.在LED显示器上显示当前模式。4.在LED灯开始和停止闪烁时蜂鸣器分别鸣响1次。5.利用单片机内部定时器定时,要求采用中断方式。提高要求:1)使用按键(KINT)切换LED灯闪烁频率。2)在LED显示器上显示当前模式和频率值。3)其它个性化设计。二、设计思路利用定时器T0实现0.1s,0.5s和1s的定时,分别对应5Hz,1Hz和0.5Hz三种闪烁方式的半周期,用T0的中断服务程序实现LED信号灯的闪烁和LED显示器显示当前模式,并重新开始计时。这三种定时时间的定时器计数初值存于工作寄存器中,赋计数初值时取出,一种频率的闪烁结束后通过改变寄存器内的值来改变半周期,接着再赋值取出。利用另一个工作寄存器来控制闪烁次数,是当前模式运行时间为20s。《微机实验》报告2N三、资源分配R0、R1:当前模式下定时器计数初值R2:循环次数,即闪烁次数四、流程图开始R2重新赋值改变定时器计数初值停止计时DECR2蜂鸣器停止LED灯状态改变启动蜂鸣器LED灯点亮LED显示器显示模式R2赋值定时器设置中断允许设置重新取当前模式下定时器计数初值开始计时取定时器计数初值R0、R1赋值等待中断请求R2=00H?Y《微机实验》报告3五、源代码$include(C8051F310.inc)LEDBITP0.0BEEPBITP3.1KINTBITP0.1ORG0000HLJMPMAINORG0003HLJMPT_KINTORG001BHLJMPTIME1MAIN:LCALLInit_DeviceMOVR0,#00HCLRLEDCLRBEEPCLRPSW.1CLRPSW.5SETBEASETBEX0SETBIT0MOVTMOD,#10HSETBET1CHOO:CJNER0,#02H,LOOPLJMPCASE2LOOP:JCCASE1LJMPCASE3CASE1:MOVR1,#0D7HMOVR2,#14HMOVR7,#0C8HMOVP1,#0《微机实验》报告4SETBP1.6SETBP1.5LJMPSTARTCASE2:MOVR1,#83HMOVR2,#63HMOVR7,#28HMOVP1,#0SETBP1.7SETBP1.6SETBP1.4SETBP1.4SETBP1.3SETBP1.1LJMPSTARTCASE3:MOVR1,#06HMOVR2,#0C6HMOVP1,#0SETBP1.7SETBP1.6SETBP1.5SETBP1.5SETBP1.4SETBP1.1MOVR7,#14HLJMPSTARTSTART:LCALLVOICEMOVTH1,R1MOVTL1,R2MOVA,R7BACK:SETBTR1《微机实验》报告5LOOP1:MOVC,PSW.5JNCLOOP1CLRPSW.5DJNZR7,BACKMOVC,PSW.1JCTHERECJNEA,#28H,LOOP2LJMPCASE3LOOP2:JCTHERELJMPCASE2THERE:LCALLVOICESJMP$VOICE:SETBBEEPMOVTH1,#06HMOVTL1,#0C6HCLRPSW.5SETBTR1LOOP3:MOVC,PSW.5JNCLOOP3CLRBEEPRETT_KINT:SETBPSW.1INCR0CJNER0,#04H,K_RETCLRPSW.1MOVR0,#00HK_RET:CLRTR1POPSPPOPSPMOVDPTR,#0036H《微机实验》报告6PUSHDPLPUSHDPHRETITIME1:MOVTH1,R1MOVTL1,R2SETBPSW.5CLRTR1CPLLEDRETIPCA_Init:anlPCA0MD,#0BFhmovPCA0MD,#000hretTimer_Init:movTMOD,#010hmovCKCON,#002hretPort_IO_Init:movXBR1,#040hretInterrupts_Init:movIE,#009hretInit_Device:lcallPCA_InitlcallTimer_InitlcallPort_IO_InitlcallInterrupts_InitretEND《微机实验》报告7六、程序测试方法与结果思考题1.若想实现3种闪烁方式的持续时间在5s-60s范围内可调,且每种方式的持续时间各不相同,应如何设计程序?答:只需将R2的值改成相应的即可。《微机实验》报告8其它说明:1.标题:黑体,小四号2.正文:宋体,五号,1.5倍行距3.流程图使用SmartDraw7或Visio软件绘制4.不要加封面本人承诺:本报告内容真实,无伪造数据,无抄袭他人成果。本人完全了解学校相关规定,如若违反,愿意承担其后果。签字:年月日
本文标题:单片机综合实验LED灯控制器
链接地址:https://www.777doc.com/doc-5146784 .html