资源描述:
《华中科技大学单片机实验报告完整版led灯控制器》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、word完美格式【任务要求】利用C8051F310单片机设计一个LED灯控制器,LED灯外接于P0.0端,LED灯分别按2Hz,1Hz和0.5Hz三种不同频率闪动,各持续10s,在LED灯开始和停止闪烁时蜂鸣器分别鸣响1次,利用单片机内部定时器定时,要求采用中断方式。设计思路【设计思路】设置定时器T0定时时间为25ms,每隔25ms开一次中断,共R1次,R0与R2共同作用构成循400次循环,以达到定时10秒的目的。首先LED灯以2Hz频率闪动,初始赋值R1=10,循环执行10次中断后,即过去0.25s,灯闪烁一次,依次循环,直至
2、10s定时时间到,蜂鸣器响一次,2Hz频率的闪烁结束。然后LED灯以1Hz频率闪动,设置R1=20,与上类似,每过0.5s灯闪烁一次,十秒定时到,蜂鸣器响一次,到下一阶段。最后LED灯以0.5Hz频率闪动,设置R1=40即可,思路同上。当三十秒执行完毕后,使用无条件转移语句跳转到程序开始处,循环以上过程。【资源分配】R1:定时0.25秒,0.5秒或1秒R0,R2:循环400次,定时10秒定时器T0:定时中断25ms定时器T1:定时10s精心整理学习帮手word完美格式【流程图】精心整理学习帮手word完美格式【源代码(含文件头说
3、明、资源使用说明、语句行注释)】;------------------------------------;-GeneratedInitializationFile--;------------------------------------$include(C8051F310.inc)publicInit_DeviceINITSEGMENTCODErsegINITORG0000HLJMPMAINORG000BH;T0中断入口LJMPIT0P;转T0中断服务程序ORG001BH;T1中断入口LJMPIT1P;转T1中断服务程序O
4、RG1000H;主程序MAIN:LCALLInit_Device;设备初始化MOVSP,#60H;赋堆栈指针MOVTMOD,#11H;T1定时方式1,T0定时方式1MOVR0,#40;循环400次MOVR2,#10MOVR1,#10;定时0.25sMOVTH1,#38H;T1置初值MOVTL1,#9EHMOVTH0,#38H;T0置初值精心整理学习帮手word完美格式MOVTL0,#9EHSETBEA;允许中断SETBET0SETBET1LOOP:SETBTR0;计时开始SETBTR1CJNER1,#0,LOOP;判断是否到达0
5、.25sCLRP3.1CPLP0.0;取反MOVR1,#10CJNER0,#0,LOOP;判断是否到达10sCLRTR0;清零CLRTR1MOVR1,#20;R1重新赋值MOVR0,#40;循环400次MOVR2,#10SETBP3.1LOOP1:SETBTR0;计时SETBTR1CJNER1,#0,LOOP1;判断是否到达0.5sCLRP3.1CPLP0.0;取反MOVR1,#20CJNER0,#0,LOOP1;判断是否到达10sCLRTR0;清零CLRTR1MOVR1,#40;R1再次赋值MOVR0,#40;循环精心整理学习
6、帮手word完美格式MOVR2,#10LOOP2:SETBP3.1SETBTR0;计时SETBTR1CJNER1,#0,LOOP2;判断是否到达1sCLRP3.1CPLP0.0;取反MOVR1,#40CJNER0,#0,LOOP2;判断是否到达10sCLRTR0;清零CLRTR1HERE:AJMPHERE;等待中断ORG1500H;T0中断服务程序IT0P:MOVTH0,#38H;重置计数初值MOVTL0,#9EHDJNZR2,LOOP0;循环MOVR2,#10DECR0RETILOOP0:RETIORG1600H;T1中断服务
7、程序IT1P:MOVTH1,#38H;重置计数初值MOVTL1,#9EHDECR1RETI精心整理学习帮手word完美格式;Peripheralspecificinitializationfunctions,;CalledfromtheInit_DevicelabelPCA_Init:anlPCA0MD,#0BFhmovPCA0MD,#000hretTimer_Init:movTMOD,#001hretPort_IO_Init:;P0.0-Unassigned,Open-Drain,Digital;P0.1-Unassigned
8、,Open-Drain,Digital;P0.2-Unassigned,Open-Drain,Digital;P0.3-Unassigned,Open-Drain,Digital;P0.4-Unassigned,Open-Drain,Digital;P0.5-U