NE555定时器

article/2025/10/12 16:05:51

基本原理:

低电平触发端:TRIG 高电平触发端:THR

两者的电压值小于参考电压时,即U。=1 放电管截止

两者的电压值大于参考电压时,即U。=1 放电管导通

蓝桥杯板子上是一个信号发生电路 通过继电器RB3来改变输入信号的频率

蓝桥杯555定时器的考核:测量它产生的一个频率:

测量原理: 将输出端与定时器T0的中断的引脚进行了短接,那么我们便可已利用来一个信号产生一次中断,那么测量1Hz,就是一秒钟产生了多少个信号,那么我可以用一个定时器来收集产生的信号,设置好初值,来一个信号我就进行一次中断,进行一次中断我就让一个变量进行累加,然后用另外一个定时器来产生一个一秒的数值,一秒产生完后记录下变量累加了多少次,就可以计算出出频率了

注意的小地方:

定时器0是8位自动重装载,不用赋初值,采用的是计数模式

定时器1是16位的装载模式,需要赋初值,然后就是换算数值的时候

采用的是多个并列的条件判断 例如一个5位数  首先/10000%10获得第五位 然后再除以1000%10获得第4,然后以此类推

#include <STC15F2K60S2.H>unsigned int date=0;
unsigned char count=0;
unsigned int date_p=0; code SMG_NoDot[18] ={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x80,0xc6,0xc0,0x86,0x8e,0xbf,0x7f};void inint()
{	TMOD=0x16;TH0=0xff;TL0=0xff;TH1=(65535-50000+1)/256;TL1=(65535-50000+1)%256;EA=1;ET0=1;ET1=1;TR1=1;TR0=1;}
void  service () interrupt 1
{date++;}void service1() interrupt 3
{TH1=(65535-50000+1)/256;TL1=(65535-50000+1)%256;count++;if(count==20){date_p=date;count=0;date=0;}}void smgdelay(unsigned int i)
{while(i--);}
void select138(unsigned char n)
{switch(n){case 4:P2=(0x1f&P2)|0x80;break;case 5:P2=(0x1f&P2)|0xa0;break;case 6:P2=(0x1f&P2)|0xc0;break;case 7:P2=(0x1f&P2)|0xe0;break;case 0:P2=(0x1f&P2)|0x00;break;}
}
void smgshow_bite(unsigned char date,unsigned char pos)
{ 	select138(6);P0=0x01<<pos;select138(7);P0=date;}
void smgshowall()
{ 	select138(6);P0=0xff;select138(7);P0=0xff;}
void smgshow()
{smgshow_bite(0x8e ,0);smgdelay(500);smgshow_bite(0xff ,1);smgdelay(500);smgshow_bite(0xff ,2);smgdelay(500);if(date_p>9999){smgshow_bite(SMG_NoDot[(date_p/10000)%10] ,3);smgdelay(500);}if(date_p>999){smgshow_bite(SMG_NoDot[(date_p/1000)%10] ,4);smgdelay(500);}if(date_p>99){smgshow_bite(SMG_NoDot[(date_p/100)%10] ,5);smgdelay(500);}if(date_p>9){smgshow_bite(SMG_NoDot[(date_p/10)%10] ,6);smgdelay(500);}if(date_p>0){smgshow_bite(SMG_NoDot[date_p%10] ,7);smgdelay(500);}smgshowall();
}void main()
{inint();while(1){smgshow();}}


http://chatgpt.dhexx.cn/article/4LjSUnil.shtml

相关文章

使用NE555实现的延时开关电路

NE555 的电气特性 555系列有几种不同的规格 NE555是民用版本, 推荐的工作温度是 0 - 70 NA555, SA555, SE555 是工业版本, 推荐工作温度为 -40 - 100 电压: 最高18V, 推荐工作电压15V以内 电流: Pin3 输出电流支持 225 mA, 推荐的工作电流区间是 200 mA. 注意: 支持反向的电…

Android NE问题分析方法介绍

文章目录 简介Native内存布局NE问题常见类型常用调试工具tombstone抓取流程实例分析tombstone文件内容举例 简介 NE&#xff0c;全称Native Exception&#xff0c;在Android中主要指在用户空间运行的native程序或者natvie库发生异常。NE问题通常带来程序奔溃现象&#xff0c;导…

认真学习设计模式之适配器模式(Adapter Pattern)/包装器模式

【1】适配器模式 ① 介绍 适配器模式是将一个类的接口&#xff0c;转换成客户期望的另一个接口。适配器让原本接口不兼容的类可以合作无间。 适配器的作用可以简单通过下图得知&#xff0c;OO适配器就是将一个接口转换成另一个接口&#xff0c;以符合客户的期望。 实际场景应…

学习:java设计模式—Adapter模式

1、核心意图&#xff1a; 将一个类的接口转换成客户希望的另外一个接口&#xff0c;从而使得原本由于接口不兼容而不能一起工作的类可以一起工作。 该模式的目标是通过一个代理&#xff08;这里是Adapter&#xff09;&#xff0c;在原来的类&#xff08;Adaptee&#xff09;和客…

23种设计模式之适配器模式(Adapter模式)

转载地址 https://sscloud.net/solution/jsp/article.jsp?articleId10090 模式的定义与特点 23种设计模式demo下载 适配器模式&#xff08;Adapter&#xff09;的定义如下&#xff1a;将一个类的接口转换成客户希望的另外一个接口&#xff0c;使得原本由于接口不兼容而不能一…

安卓设计模式のAdapter模式

1. 模式介绍 模式的定义 适配器模式把一个类的接口变换成客户端所期待的另一种接口&#xff0c;从而使原本因接口不匹配而无法在一起工作的两个类能够在一起工作。 使用场景 用电源接口做例子&#xff0c;笔记本电脑的电源一般都是接受5V的电压&#xff0c;但是我们生活中的…

设计模式2--Adapter(适配器模式)

1.Adapter模式 在程序中&#xff0c;经常会出现有的程序无法直接使用的情况&#xff0c;需要进行适当的变换之后才能使用的情况。这种用于填补现有程序和所需程序之间差异的设计模式就是Adapter模式 Adapter模式也被称为Wrapper模式&#xff0c;有以下两种 &#xff08;1&am…

设计模式02——Adapter模式

定义 适配器设计模式&#xff0c;顾名思义就是将适配器的作用总结抽象成为一种代码的组织方式&#xff0c;将现有的代码通过适配器进行适配&#xff0c;以满足项目对另外一个类或者接口的要求。换句话说就是将一个类的接口适配&#xff08;包装/转换&#xff09;成客户&#x…

图解设计模式 - Adapter 模式

读书笔记 仅供参考 Adapter 模式 Adapter 即为是适配器,用来填补两者之间的差异。就想充电器的装换器,要把 220v 的电压转换为低电压才能对手机或电脑充电。 Adapter 模式也称为 Wrapper(包装器)模式。 两种 Adapter 模式: 类适配器模式(使用继承的适配器)对象适配器…

适配器模式(Adapter模式)

在现实生活中&#xff0c;经常出现两个对象因接口不兼容而不能在一起工作的实例&#xff0c;这时需要第三者进行适配。例如&#xff0c;讲中文的人同讲英文的人对话时需要一个翻译&#xff0c;用直流电的笔记本电脑接交流电源时需要一个电源适配器&#xff0c;用计算机访问照相…

设计模式学习(三):Adapter适配器模式

一、什么是Adapter模式 我们先举个例子&#xff1a;如果想让额定工作电压是直流12V的笔记本电脑在交流220V的电源下工作&#xff0c;应该怎么做呢?通常&#xff0c;我们会使用适配器&#xff0c;将家庭用的交流220V电压转换成我们所需要的直流12V电压。这就是适配器的工作&…

3.设计模式--适配器模式(adapter模式)

1.场景 适配器模式可能是开发人员用的最多的一种设计模式&#xff0c;做后台开发你可能每天都在使用。只是不知道他的名字&#xff1b;现实中的适配器你应该不会陌生&#xff0c;新款的IQOO 8 pro手机充电器已经达到了120w&#xff0c;实际上充电器就是一个适配器&#xff0c;他…

设计模式【7】——适配器模式(Adapter 模式)

文章目录 前言一、适配器模式&#xff08;Adapter 模式&#xff09;二、具体源码1.Adapter.h2.Adapter.cpp3.main.cpp 三、运行结果总结 前言 实际上在软件系统设计和开发中&#xff0c;经常会遇到&#xff1a;我们为了完成某项工作购买了一个第三方的库来加快开发。这就带来了…

【Adapter模式】C++设计模式——适配器

适配器 一、设计流程探讨二、模式介绍三、代码实现 C设计模式大全&#xff0c;23种设计模式合集详解—&#x1f449;&#xff08;点我跳转&#xff09; 一、设计流程探讨 首先放一张图&#xff0c;让大家大致了解什么叫适配器。适配器属于接口隔离的一种&#xff0c;它能使接口…

设计模式-Adapter模式(适配器模式)

适配器模式是什么&#xff1f;为什么要有适配器模式&#xff1f;用一个例子来看看代码的实现 适配器模式是什么&#xff1f; 我的理解&#xff1a; 比如现实世界&#xff0c;电脑充电需要的电压是12V&#xff0c;而家用电压是220V&#xff0c;肯定不能直接用呀&#xff0c;那不…

adapter 模式

一、adapter是什么 属于结构模式&#xff08;持有或继承被适配的类&#xff09;。 对功能类进行包装&#xff0c;转换成客户端希望的样子&#xff0c;所以也叫包装模式。 实现比较直观&#xff0c;比较简单&#xff0c;就是加了一层封装。 二、adapter的使用场景 系统改造&a…

Adapter 模式(适配器模式)

适配器 将一个类的接口转换成客户希望的另一个接口。Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。 动机 由于应用环境的变化&#xff0c;常常需要将「一些现存的对象」放在新的环境中应用&#xff0c;但是新环境要求的接口是这些现存对象所不满足…

Adapter(适配器)模式

Adapter 模式是一个常用的模式&#xff0c;它可以与其他很多模式共同使用 Adapter模式的意图是 将一个类的接口转换成希望的另外一种接口&#xff0c;Adapter模式使原本由接口不兼容而不能一起工作的那一些类可以起工作&#xff0c;就是说 需要一种方法&#xff0c;为一个内容合…

oracle decode嵌套,Oracle 中 Decode函数用法 | YuXi

含义解释&#xff1a; decode(条件,值1,返回值1,值2,返回值2,...值n,返回值n,缺省值) 该函数的含义如下&#xff1a; IF 条件值1 THEN RETURN(翻译值1) ELSIF 条件值2 THEN RETURN(翻译值2) ...... ELSIF 条件值n THEN RETURN(翻译值n) ELSE RETURN(缺省值) END IF decode(字段…

DECODE函数和SIGN函数详解

SIGN函数 一、基本语法 sign是符号函数&#xff0c;基本语法如下&#xff1a; sign(n)如果n>0&#xff0c;则返回1&#xff1b;如果n0&#xff0c;则返回0&#xff1b;如果n<0&#xff0c;则返回-1。 二、案例演示 【案例1】 select sign( 100 ),sign(- 100 ),sign…