文章目录前言一、定时器的功能以及定时器的结构定时器的功能定时器的结构二、定时器的控制工作模式寄存器TMOD控制寄存器TCON写代码来初始化定时器三、定时器引发中断简易时钟主程序main.c延时函数Delay.c控制LCD162模块LCD1602.c定时器0模块Timer0.c实现效果总结前言最近在学习51单片机,学到了定时器这块,由于自己的基础不太扎实,在这方面花了很多时间,这里通过对定时器和中断的介绍,用简易时钟这个例子来对学习的内容进行加深巩固,把自己的经验分享给大家,希望对大家能够有帮助。一、定时器的功能以及定时器的结构定时器的功能其实就是单片机的内部,通过系统时钟的每一个机器周期产生一
文章目录前言一、定时器的功能以及定时器的结构定时器的功能定时器的结构二、定时器的控制工作模式寄存器TMOD控制寄存器TCON写代码来初始化定时器三、定时器引发中断简易时钟主程序main.c延时函数Delay.c控制LCD162模块LCD1602.c定时器0模块Timer0.c实现效果总结前言最近在学习51单片机,学到了定时器这块,由于自己的基础不太扎实,在这方面花了很多时间,这里通过对定时器和中断的介绍,用简易时钟这个例子来对学习的内容进行加深巩固,把自己的经验分享给大家,希望对大家能够有帮助。一、定时器的功能以及定时器的结构定时器的功能其实就是单片机的内部,通过系统时钟的每一个机器周期产生一
之前做了个密码锁因为代码写的比较乱,现在想将各个部分的函数整理一下分别封装起来在主函数中直接调用,从而使代码更精简,也提高了程序的移植性。文章分享的内容是整理后的代码加上一些注释。硬件部分键盘由16个按键组成,将每行4个的按键连在一起,再将每列4个的按键连在一起,就得到了8条支线分别将其接到单片机的io上。如下图 电路搭建好了接下来就是代码部分了,这里我使用的是行列扫描法。行列扫描法是先确定每行是否有按键被按下,再确定列是否有按键被按下。行:先给P1端口的低四位(接行的io)高电平、高四位(接列的io)低电平。当某个按键被按下时该按键所处的行为低电平,也就是接该行的io口为0。因为开始时我们
第一步:所需材料:我录制了关于此课程的视频,在b站,大家可以前往b站观看视频bandicam2022-05-1611-45-49-495_哔哩哔哩_bilibili既然你刷到我这篇学习总结了那说明你必然有1、51单片机(多数然应该是开发板,我用的是普中A7)————最好还有最小开发系统板2、esp8266-01S3、USB转TTL模块:这个模块并不是一定得有,你有开发板那就说明可以打开串口给单片机烧录程序了,但是有了也挺好,可以了解到这个模块接线的快乐,还可能遇到因为电压不足无法正常运行esp8266的问题,不踩坑就没办法进步,反正我是踩过了(无语)4、杜邦线若干5、数据线——进行数据传送,两
第一步:所需材料:我录制了关于此课程的视频,在b站,大家可以前往b站观看视频bandicam2022-05-1611-45-49-495_哔哩哔哩_bilibili既然你刷到我这篇学习总结了那说明你必然有1、51单片机(多数然应该是开发板,我用的是普中A7)————最好还有最小开发系统板2、esp8266-01S3、USB转TTL模块:这个模块并不是一定得有,你有开发板那就说明可以打开串口给单片机烧录程序了,但是有了也挺好,可以了解到这个模块接线的快乐,还可能遇到因为电压不足无法正常运行esp8266的问题,不踩坑就没办法进步,反正我是踩过了(无语)4、杜邦线若干5、数据线——进行数据传送,两
目录红外发射装置: NEC码:红外接收设备:1.红外遥控:数码管上显示红外解码遥控器键值 红外遥控方法一:外部中断+延时2.红外遥控:红外遥控控制LCD1602画面上的值 红外遥控方法二:外部中断+定时器红外发射装置: 也就是通常我们说的红外遥控器是由键盘电路、红外编码电路、电源电路和红外发射电路组成。红外发射电路的主要元件为红外发光二极管。它实际上是一只特殊的发光二极管;由于其内部材料不同于普通发光二极管,因而在其两端施加一定电压时,它便发出的是红外线而不是可见光。目前大量的使用的红外发光二极管发出的红外线波长为940nm左右,外形与普通发光二极管相同。红外发光二极
目录红外发射装置: NEC码:红外接收设备:1.红外遥控:数码管上显示红外解码遥控器键值 红外遥控方法一:外部中断+延时2.红外遥控:红外遥控控制LCD1602画面上的值 红外遥控方法二:外部中断+定时器红外发射装置: 也就是通常我们说的红外遥控器是由键盘电路、红外编码电路、电源电路和红外发射电路组成。红外发射电路的主要元件为红外发光二极管。它实际上是一只特殊的发光二极管;由于其内部材料不同于普通发光二极管,因而在其两端施加一定电压时,它便发出的是红外线而不是可见光。目前大量的使用的红外发光二极管发出的红外线波长为940nm左右,外形与普通发光二极管相同。红外发光二极
超声波测距实操1.超声波2.超声波模块2.1模块参数2.2模块原理图2.3超声波位差测距2.4模块特征3.超声波测距编程3.1超声波+流水灯3.2超声波+蜂鸣器1.超声波蝙蝠和某些海洋动物都能够利用高频率的声音进行回声定位或信息交流。它们能通过口腔或鼻腔把从喉部产生的超声波发射出去,利用折回的声波来定向,并判定附近物体的位置、大小以及是否在移动。超声波是一种频率高于20000赫兹的声波,它的方向性好,穿透能力强,易于获得较集中的声能,在水中传播距离远,可用于测距、测速、清洗、焊接、碎石、杀菌消毒等。在医学、军事、工业、农业上有很多的应用。超声波因其频率下限大于人的听觉上限而得名。科学家们将每秒
超声波测距实操1.超声波2.超声波模块2.1模块参数2.2模块原理图2.3超声波位差测距2.4模块特征3.超声波测距编程3.1超声波+流水灯3.2超声波+蜂鸣器1.超声波蝙蝠和某些海洋动物都能够利用高频率的声音进行回声定位或信息交流。它们能通过口腔或鼻腔把从喉部产生的超声波发射出去,利用折回的声波来定向,并判定附近物体的位置、大小以及是否在移动。超声波是一种频率高于20000赫兹的声波,它的方向性好,穿透能力强,易于获得较集中的声能,在水中传播距离远,可用于测距、测速、清洗、焊接、碎石、杀菌消毒等。在医学、军事、工业、农业上有很多的应用。超声波因其频率下限大于人的听觉上限而得名。科学家们将每秒
初级代码:使用延时函数,延时;进阶代码:使用定时器,延时:51单片机定时器控制数码管显示_学习笔记吧的博客-CSDN博客初级代码:#include//Header:数码管显示0-9//Author:Time//Date:2022.10.16unsignedcharcodeTab[]=//共阴数码管段码表0-9{0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};/*共阴数组(如果是共阳数码管就换一下共阳数组"0xc0,0xf90xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90")如果想要显示0-F就加上abcdef的