程序执行步骤程序执行的速度是由晶振频率产生震荡产生的。时钟频率时钟频率是由晶振频率决定的,产生对应晶振频率的时钟频率。当晶振频率是11.0592MHz的时候,时钟等于((1/11.0592)=0.090422)微秒,也就是时钟每震荡一次的的时间是0.090422微妙机器周期单片机内部每执行一条语句需要花费12个时钟频率。也就机器周期=12*时钟频率这是因为,执行一条语句单片机需要内部很多步骤,正好消耗12个时钟频率,所以规整成一,叫做机器周期,但操作某些变量也有自己的机器周期。如下图。11.0592MHZ的延时程序计算过程:需要知道对应晶振的时钟周期11.0952MZH的时钟周期为:时钟周期:
功能:0.本系统采用STC89C52作为单片机1.LCD1602液晶显示功能界面2.支持添加/删除/搜索指纹,更改密码3.支持指纹和密码开锁4.采用DC002作为电源接口可直接输入5V给整个系统供电原理图:PCB:主程序:#include"main.h"enumModeFlag_DfModeFlag;//模式,正常开锁模式,设置密码模式,设置指纹模式unsignedcharstepCnt=0;charsetIndex=0;xdataunsignedchardis0[16];bitrefreshFlag=1;unsignedcharinpPasswd[4];//输入密码unsignedcharP
什么是按键抖动?在进行硬件设计时,添加到PCB板中的机械开关触点断开、闭合时,由于机械触点的弹性作用,按键开关在闭合或松开时并不会马上稳定地接通或断开。因而在闭合或断开的瞬间均伴随有一连串的抖动,这样的抖动叫按键抖动。按键消抖程序一般采取在程序中加入延时函数的方法来消抖,程序如下:#includereg51.h>sbitkey=p1^0;//定义key为p1.0sbitled=p2^0;//定义led为p2.0voiddelay_ms(unsignedintt)//ms延时{unsignedinti,j;for(i=0;it;i++)for(j=0;j120;j++)}voidmain(voi
目录实验现象DS1302介绍ds1302简介引脚工作流程寄存器控制寄存器时间寄存器读写与时序写读ds1302的GPIO代码ds1302.cmain.c备注实验现象将程序烧录到单片机中后,lcd1602显示屏将从预设时间开始进行时钟功能。在lcd1602显示屏第一行分别显示年,月,日,星期;在第二行显示时,分,秒。DS1302介绍ds1302简介DS1302是DALLAS公司推出的涓流充电时钟芯片,内含有一个实时时钟/日历和31字节静态RAM,通过简单的串行接口与单片机进行通信。实时时钟/日历电路提供秒、分、时、日、周、月、年的信息,每月的天数和闰年的天数可自动调整。DS1302与单片机之间可以
目录实验现象DS1302介绍ds1302简介引脚工作流程寄存器控制寄存器时间寄存器读写与时序写读ds1302的GPIO代码ds1302.cmain.c备注实验现象将程序烧录到单片机中后,lcd1602显示屏将从预设时间开始进行时钟功能。在lcd1602显示屏第一行分别显示年,月,日,星期;在第二行显示时,分,秒。DS1302介绍ds1302简介DS1302是DALLAS公司推出的涓流充电时钟芯片,内含有一个实时时钟/日历和31字节静态RAM,通过简单的串行接口与单片机进行通信。实时时钟/日历电路提供秒、分、时、日、周、月、年的信息,每月的天数和闰年的天数可自动调整。DS1302与单片机之间可以
我是电子信息的一名学生这是我的单片机课程设计,今天分享给大家。有需要的评论区留言,可以发源码给你们,包含实验报告,仿真图。 STC89C52为核心,设计一个温度报警器,它由部分组成:显示模块、CPU控制模块、报警模块、温度测量模块、按键控制模块。CPU控制模块采用STC89C52单片机进行控制,温度传感器由DS18B20模块进行室温的测量,显示模块由八个数码管进行显示,报警模块由LED亮灭和有源蜂鸣器来实现。温湿度显示器要求如下:1、数码管显示:1)、温度-阈值显示上电数码管第一位和第二位显示室温大小第三位显示C,第六位显示-表示阈值,第七位第八位显示阈值大小;2
我是电子信息的一名学生这是我的单片机课程设计,今天分享给大家。有需要的评论区留言,可以发源码给你们,包含实验报告,仿真图。 STC89C52为核心,设计一个温度报警器,它由部分组成:显示模块、CPU控制模块、报警模块、温度测量模块、按键控制模块。CPU控制模块采用STC89C52单片机进行控制,温度传感器由DS18B20模块进行室温的测量,显示模块由八个数码管进行显示,报警模块由LED亮灭和有源蜂鸣器来实现。温湿度显示器要求如下:1、数码管显示:1)、温度-阈值显示上电数码管第一位和第二位显示室温大小第三位显示C,第六位显示-表示阈值,第七位第八位显示阈值大小;2
大家在日常短途出行时,一般都会选择自行车、电动滑板之类的工具,相比于步行或者公共交通工具,在骑车的时候还需要额外佩戴一些护具来保证安全,而在选择头盔之类的护具时,质量必然是首先考虑的,如果有额外的功能当然就更好了,像是我现在用的这款HelmetphoneBH51MNeo,就是一种智能头盔,加入了很多安全相关的智能特性。BH51MNeo这款来自头盔接入了华为鸿蒙生态,可以无缝连接华为智慧生活APP,并且具有灯光、语音等配置,还能识别撞击,从而实现灯光预警、语音提示、紧急求救等功能,进一步提升骑行的安全性。Helmetphone是LIVALL力沃旗下的一个品牌,专注于BH51MNeo这种智能化的护
小伙伴们大家好,最近学习了点阵屏,写篇blog记录一下。😁🗣️前言:学习完点阵屏,小伙伴们可能都想要展示一下自己的名字,而有的同学的名字太过复杂,宽为8的点阵屏无法写出,于是我便想到了纵向显示笔画过于复杂的名字。就比如“嘉”字,横向无法写出,我们就把字体给拉长,丑是丑了点,但可以完整显示了🐶:采用这种表示,将一整串名字自上到下进行展示,就可以把名字完整展示出来啦!💕🤔思路:横向流动的原理1.要想将一长串的字幕展示出来,我们需要定义一个数组,把所有需要亮的位置显示出来。这里要注意是纵向取模哦!2.实现流动的效果:纵向流动原理:横向显示是通过列进行快速的扫描,我们需要把每一列的数据输入到点阵屏,再
小伙伴们大家好,最近学习了点阵屏,写篇blog记录一下。😁🗣️前言:学习完点阵屏,小伙伴们可能都想要展示一下自己的名字,而有的同学的名字太过复杂,宽为8的点阵屏无法写出,于是我便想到了纵向显示笔画过于复杂的名字。就比如“嘉”字,横向无法写出,我们就把字体给拉长,丑是丑了点,但可以完整显示了🐶:采用这种表示,将一整串名字自上到下进行展示,就可以把名字完整展示出来啦!💕🤔思路:横向流动的原理1.要想将一长串的字幕展示出来,我们需要定义一个数组,把所有需要亮的位置显示出来。这里要注意是纵向取模哦!2.实现流动的效果:纵向流动原理:横向显示是通过列进行快速的扫描,我们需要把每一列的数据输入到点阵屏,再