下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、#include<reg51.h>#define LEDPort P1unsigned char LED01_9=0xFF,0xFE,0xFD,0xFB,0xF7,0xEF,0xDF,0xBF,0x7F,;/方式 0,方式 1 灯开关数组。unsigned char LED23_5=0xFF,0x7E,0xBD,0xDB,0xE7;/方式 2,方式 3 灯开关数组。unsigned char LED4_16=0XFF,0X7F,0X3F,0X1F,0X0F,0X07,0X03,0X01,0X00,0X01,0X03,0X07,0X0f,0X1 f,0X3f,0X7f; / 方式 4
2、unsigned char LED56_8=0XFF,0X3F,0X9F,0XCF,0XE7,0XF3,0XF9,0XFC;unsigned char LED7_=0X0F,0XF0,0X33,0XCC,0X3C,0XC3,0XFF;unsigned char TAB9=0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80;/定义断码表。unsigned char i=0,j=9;/数据选择计数。unsigned char Mode=0;/ 模式选择,默认为模式0。unsigned char Count=1;/ 定时器中断计数。unsigned char D
3、elay=1;/ 延迟计数,通过改变改数值改变灯状态延迟时间。/ 灯延迟时间=uc_Dalay*定时器溢出时间。void main()P2=0X3F;TMOD=0x01;/定时器0 模式一。TH0=0x3C;TL0=0xB0;TR0=1;/溢出时间: 50ms。/定时器 0 开启。IT0=1;IT1=1;/外部中断/外部中断0 下降沿触发。1 下降沿触发。EX0=1;/外部中断0 开。EX1=1;/外部中断1 开。ET0=1;/定时器 0中断开。EA=1;/总中断开。while(1);/*/*/* * *定时*器0中断函数/*/*< 函数功能>:当定时器0 溢出时执行此函数,首先执
4、行2 个判断:*/*(1) if判断是否改变灯的状态,可用于改变延时时间;*/*(2) switch判断闪烁模式,根据不同模式对灯进行不同的通断。*/*最后对定时器TH0,TL0 重新赋值,溢出时间为50ms。*/*/*void vTimer0(void) interrupt 1if(Count%Delay=0)/通过此判断语句来改变延时。,例如:当 uc_Delay=6时,定时器/溢出5次时灯状态改变1 次。同时uc_Count 重新赋值1.否则, uc_Count+Count=1;/ 等待下一次溢出。因此可以改变延时。switch(Mode)/<<<<<<
5、;<<<<<<<<<<<<<<<<<<<<<<<<<<<<模式0,灯从上往下依次点亮,不断循环。 >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>case 0:if(i>=8)i=0;else i+;LEDPo
6、rt=LED01_i;break;/<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<模式1,灯从下往上依次点亮,不断循环。 >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>&g
7、t;>>case 1:if(i<=0)i=8;else i-;LEDPort=LED01_i;break;/<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< 模式 2 ,灯从两边往中间依次点亮,不断循环。 >>>>>>>>>>>>>>>>>>>>
8、>>>>>>>>>>>>case 2:if(i>=4)i=0;else i+;LEDPort=LED23_i;break;/<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< 模式 3 ,灯从中间往两边依次点亮,不断循环。 >>>>>>>>>>&g
9、t;>>>>>>>>>>>>>>>>>>>>>case 3:if(i<=0)i=4;else i-;LEDPort=LED23_i;break;case 4:if(i<16)i+;else i=0;LEDPort=LED4_i;break;case 5:if(i<7)i=i+2;else i=0;LEDPort=LED56_i;break;case 6:if(i<7)i+;else i=0;LEDPort=LED56_i;break;case 7
10、:if(i>=7)i=0;else i+;LEDPort=LED7_i;break;/<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<所有等以一定时间间隔同时闪烁。 >>>>>>>>>>>>>>>>>>>>>>&g
11、t;>>>>>>>>>>>>>>>>case 8:if(LEDPort=0xFF)LEDPort=0x00;else LEDPort=0xFF;/<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
12、;<<<<<其他>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>default:break;else Count+;TH0=0x3C;/重新给定时器赋值。TL0=0xB0;/定时时间: 50ms。/*/*/*外部中断0中断函数*/*/* <函数功能 >:当外部中断0 产生下降沿信号时执行此函数,将闪灯模式从模式0 到 4循环切换。*/*/*void vModeChange(void) interrupt 0if(Mode>7)Mode=0
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年度企业形象展示活动承办协议书4篇
- 2025年度门楼智能锁具集成安装服务合同4篇
- 2025年度历史文化建筑屋顶防水修缮合同4篇
- 2025年度车床租赁合同范本售后服务保障4篇
- 二零二四年企业风险管理与内部控制委托合同3篇
- 2025年度环保技术代理注销合作框架协议4篇
- 二零二五年度大棚温室大棚温室大棚设施销售合同4篇
- 2025年度果树种植与农业产业链承包服务协议范本3篇
- 2025年度代发工资与员工餐饮补贴合作协议4篇
- 二零二五年度木门企业信息化建设与数据服务合同4篇
- 2024年住院医师规范化培训师资培训理论考试试题
- 期末综合测试卷(试题)-2024-2025学年五年级上册数学人教版
- 2024年广东省公务员录用考试《行测》试题及答案解析
- 结构力学本构模型:断裂力学模型:断裂力学实验技术教程
- 黑色素的合成与美白产品的研究进展
- 金蓉颗粒-临床用药解读
- 法治副校长专题培训课件
- 《幼儿园健康》课件精1
- 汽车、电动车电池火灾应对
- 中医药适宜培训-刮痧疗法教学课件
- 免疫组化he染色fishish
评论
0/150
提交评论