* * 表9-3 LED灯闪烁P1口状态说明 状态顺序 LED闪烁过程 P1口值 16进制值 初状态 L1-L8灭00H 第一次 L1灯亮,其他灯灭01H 第二次 L2灯亮,其他灯灭02H 第三次 L3灯亮,其他灯灭04H 第四次 L4灯亮,其他灯灭08H 第五次 L5灯亮,其他灯灭10H 第六次 L6灯亮,其他灯灭20H 第七次 L7灯亮,其他灯灭40H 第八次 L8灯亮,其他灯灭80H 返回到初状态 L1-L8灭00H * 根据LED闪烁时间间隔要求,确定定时器工作于方式1,定时时间T1=50ms=50×10-3s。利用公式(9-2)计算得到初值N=9E58H,则TH0=9EH,TL0=58H。 LED控制主程序和中断服务程序流程图如图9-7所示。 * * 一、汇编语言参考代码 ORG 0000H ;程序起始地址 LJMP START ORG 000BH ;定时器中断入口地址 LJMP TIME0_INT ORG 0030H ;跳过中断入口地址区 ; 主程序开始地址 START:;完成定时器、 ;P1端口初始化工作 MOV SP, #30H ;设置堆栈入口地址 MOV R2, #08H ;设置左移次数 MOV P1, #00H MOV A, #01H ;设置初值 TIME0_INTIAL: MOV TMOD, #01H MOV TH0, #9EH ;设定TH0的值 MOV TL0, #58H ;设定TL0的值 * SETB EA ;允许中断 SETB ET0 ;开启定时中断 SETB TR0 ;启动定时器 WAIT: SJMP $ ;等待定时时间到达 TIME0_INT: MOV P1,A ;输出至P1 RL A ;左移一位 CLR TR0 MOV TH0, #9EH ;设定TH0的值 MOV TL0, #58H ;设定TL0的值 DJNZ R2,LOOP ;R2是否为0, ;不是则跳到LOOP MOV R2, #07H MOV A , #01H;重新开始新的循环 LOOP: SETB TR0 ;重新启动定时 RETI ;返回入口地址处 END * 二、C语言参考代码 #include reg51.h unsigned char LightDatat=1,LoopCount=8; void main(void) { TMOD=0x01; TH0= 0x9e; TL0=0x58; P1=0; EA=1; ET0=1; TR0=1; while(1); } * void T0_Irq(void) interrupt 1 using 0 { TH0= 0x9E; //重新设定定时器初值 TL0=0x58; ET0=0; //关中断 P1= LightDatat; //左移一位输出 LightDatat = LightDatat 1; LoopCount --; if(LoopCount ==0) //判断一轮是否完成 {//完成,则需要重新循环顺序 LoopCount =7; LightDatat =1; //首位亮灯位置 } ET0=1; //重新开中断 } * 9.3.2 超出最大范围定时/计数 毫秒级的定时相对来说比较简单,但是在多数实际应用过程中,都是超出单片机定时或者计数的范围216(65536)。如定时3.5s,或者计数值65535次,这些显然超出了范围,因此需要考虑采用其他的方法来扩展其定时/计数长度,满足应用的需要。如定时3.5s,采用多次循环定时即可实现,定时3.5s=50ms?70,设T0的定时中断间隔时间为50ms,则连续中断70次所需时间刚好为3.5s。 比如将前一小节的8个LED灯循环闪烁过程中的闪烁时
您可能关注的文档
- 网页设计与开发第15章JavaScript对象编程.ppt
- 网站建设与管理项目三 了解VBScript语法基础.ppt
- 网站建设与管理项目十 使用Recordset对象访问数据库.ppt
- 审计实务课件项目三生产与仓储循环审计.ppt
- 网页设计与开发第17章JavaScript高级应用.ppt
- 网站建设与管理项目十一 使用Recordset对象更新数据库.ppt
- 网页设计与开发第18章Ajax技术的使用.ppt
- 审计实务课件项目四 筹资与投资循环审计.ppt
- 微控制器原理及应用第1章 微型计算机组成及原理.ppt
- 网页设计与开发第19章jQuery技术.ppt
- 广东省广州省实验中学教育集团2025-2026学年八年级上学期期中考试物理试题(解析版).docx
- 广东省广州大学附属中学2025-2026学年八年级上学期奥班期中物理试题(解析版).docx
- 广东省广州市第八十六中学2025-2026学年八年级上学期期中物理试题(含答案).docx
- 广东省广州市第八十九中学2025-2026学年八年级上学期期中考试物理试题(解析版).docx
- 广东省广州市第二中学2025-2026学年八年级上学期期中考试物理试题(含答案).docx
- 广东省广州市第八十六中学2025-2026学年八年级上学期期中物理试题(解析版).docx
- 广东省广州市第八十九中学2025-2026学年八年级上学期期中考试物理试题(含答案).docx
- 广东省广州市第二中学2025-2026学年八年级上学期期中考试物理试题(解析版).docx
- 2026《中国人寿上海分公司营销员培训体系优化研究》18000字.docx
- 《生物探究性实验教学》中小学教师资格模拟试题.docx
原创力文档

文档评论(0)