1、概述
(1)熟悉定时器的使用。
(2)在中断服务程序中实现流水灯控制,有两个按钮,1个是系统开始工作按钮,一个是系统停止按钮。
(3)掌握单片机定时器中断服务程序的设计方法。
2、原理
(1)8051单片机内部有两个16位可编程定时/计数器,记为TO和TL 8052单片机内除了TO和T1之外,还有第三个16位的定时器/计数器,记为T2。它们的工作方式可以由指令编程来设定,或作定时器用,或作外部脉冲计数器用。定时器TO由特殊功能寄存器TL0和TH0组成,定时器TI 由特殊功能寄存器TLI 和TH1 .组成。定时器的工作方式由特殊功能寄存器TMOD编程决定,定时器的运行控制由特殊功能寄存器TCON编程控制。T0、T1在作为定时器时,规定的定时时间到达,即产生一个定时器中断, CPU转向中断处理程序,从而完成某种定时控制功能。T0、T1用作计数器使用时也可以申请中断。作定时器使用时,时钟由单片机内部系统时钟提供;作计数器使用时,外部计数脉冲由P3口的P3. 4(或P3. 5)即T0(或T1)引脚输入。
(2)对51单片机定时器中断程序的实现先要定义好定时器的初值不管你使用多大的晶振,使用51单片机,-般都是12分频出来,也就可以得出一个机器周期,
机器周期=12/n(n指晶振频率),假设你要定时的时间为M,那么定时的初值为:
M/机器周期=初值;
THO= (65536 -初值) % 256 ;
TLO= (65536 -初值) /256 ;
将(65536-初值)所得的值化成16进制,其高位就是TH0的值,低位为TL0的值。
(3)工作方式寄存器TMOD:
(4)定时器/计数器控制寄存器TCON:
3、硬件和软件设备
(1)Protues软件中器件:AT89C51芯片、开关、电阻、电容、晶振、发光二极管、直流电源、开关。
(2)Keil软件中外部中断相关程序设计。
4、步骤(含代码)
(1)先画一个程序框图,有一个大体思路。
(2)对硬件进行设计:选元件、接线、调试等一系列内容。
(3)对软件进行编程:为了实现实验目标,先在程序中写出相关头文件,本实验用到了字符循环左移,所以用到了#include <intrins.h>;然后定义变量,实验用到了按钮,对按钮进行了位定义;因为要在P3.4引脚处接一个按钮,作开始按钮,按下后8个LED灯依次闪烁,设计一个停止按钮,按下后灯停止闪烁;在主函数中用到了if语句实现了对按钮的控制,让八个灯依次闪烁,用中断函数得到了实现。然后编译调试生成.hex文件,程序设计:
#include<reg52.h>
#include<intrins.h>
#define uchar unsigned char
#define uint unsigned int
sbit P3_4=P3^4;
sbit P3_5=P3^5;
char i=100;
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数Python工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Python开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Python开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新
如果你觉得这些内容对你有帮助,可以添加V获取:vip1024c (备注Python)
文末有福利领取哦~
👉一、Python所有方向的学习路线
Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
👉二、Python必备开发工具
👉三、Python视频合集
观看零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。
👉 四、实战案例
光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。(文末领读者福利)
👉五、Python练习题
检查学习结果。
👉六、面试资料
我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
👉因篇幅有限,仅展示部分资料,这份完整版的Python全套学习资料已经上传
一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
整版的Python全套学习资料已经上传
一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
[外链图片转存中…(img-bWU7v1cA-1712788153448)]