使用三极管设计的演示开启瞬间关断电路电路功能概述本电路使用2个NPN、1个PNP三极管实现了在电源上电时延时通路,电源断电时瞬时关断的效果,可以应用在音响当中作为喇叭保护电路进行使用。
电路工作原理
当 31V 上电 时,电阻 R2 向电容 C10 充电。当 C10 电压超过 1.27V 时,NPN 三极管 Q1、Q3 导通,驱动后级电路进入工作状态。由于此时 31V 仍存在,PNP 三极管 Q2 被关断,因而 C10 无法快速放电。
当 31V 断电 时,电阻 R4 将 Q2 的基极拉低,使 PNP 三极管 Q2 导通,从而为 C10 提供快速放电通路。这使得 Q1、Q3 能够迅速关断,保证后级电路快速停止工作。
在使用本电路时应注意:
5V 侧的滤波电容宜取较大,以增强电源稳定性。
31V 侧的电容则应在满足滤波要求的前提下尽量减小,避免影响快速关断特性。
延时时间计算公式为:
在上述电路当中 R_2 = 100000Ω(100KΩ) ; R_3 = 10000Ω(10KΩ) ; VCC = 31V ; C = 0.00047F(470 ...
MCU获取时间本文收录MCU获取网络时间的各种不同方式。
1.ESP8266/8285使用ESP8266/8285获取时间共有以下方式
通过NTP获取网络时间
需要的库
ESP8266WiFi.h
WiFiUdp.h
NTPClient.h(可通过 Arduino 库管理器安装)
示例代码
123456789101112131415161718192021222324252627#include <ESP8266WiFi.h>#include <WiFiUdp.h>#include <NTPClient.h>// 替换为你自己的 WiFi 信息const char* ssid = "your_SSID";const char* password = "your_PASSWORD";// 创建 UDP 实例WiFiUDP ntpUDP;// 创建 NTP 客户端,偏移秒数(如北京时间为 +8 小时 = 8 * 3600 = 28800 秒)NTPClient timeCl ...
HDT系列温湿度变送器在HDT系列温湿度变送器中有着如下具体型号。
型号
温度范围
湿度范围
精度
输出方式
典型响应时间
供电电压
DHT11
0~50°C
20~90%RH
±2°C / ±5%RH
单总线
1秒
3.3–5V
DHT12
-20~60°C
20~95%RH
±0.5°C / ±5%RH
单总线/I²C
2秒
2.7–5.5V
DHT22(AM2302)
-40~80°C
0~100%RH
±0.5°C / ±2%RH
单总线
2秒
3.3–6V
AM2301
-40~80°C
0~100%RH
±0.5°C / ±3%RH
单总线
2秒
3.3–5V
1.DHT11目前我手中的DHT11变送器共有两种不同的型号,一个是正常的DHT11,还有一种是湿度5%-95%、温度-20-60℃的“加强版”。
示例程序在ESP8266上使用DHT11读取温湿度。
想要在Arduino IED上使用DHT库函数,请确保您的Arduino IED中安装了DHT sensor library 库函数。
12 ...
一种基于C语言开发的桌面快捷托盘引言我不喜欢电脑桌面上有太多图标,用上动态壁纸了桌面就是用来看的,,在网上找了一下,雨滴美化对我来说有些繁琐,BitDesk也是如此,对我来说没有的功能太多了,故自己写一个吧。
正文现在Ai横行,再加之我没有开发Windows应用的经验,索性直接让ChatGPT生成了一个框架,如下:
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394#include <windows.h>#include <shellapi.h>#define WM_TRAYICON (WM_USER + 1) // 托盘图标消息ID#define ID_TRAY_EXIT 1001 // 托盘菜单退出选项IDHINSTANCE hInst;HWND hW ...
C语言常用排序1. 冒泡排序 (Bubble Sort)
12345678910111213141516171819202122232425262728293031323334353637#include <stdio.h>void bubbleSort(int arr[], int n) { for (int i = 0; i < n-1; i++) { for (int j = 0; j < n-i-1; j++) { if (arr[j] > arr[j+1]) { // 交换 int temp = arr[j]; arr[j] = arr[j+1]; arr[j+1] = temp; } } }}void printArray(int arr[], int n) ...
网络问题解集在windows下网络莫名被限速且无法解除贴主的电脑经常莫名其妙下载速度就被限制在10MB/s左右通过修改网络适配器硬件属性及相关设置无果后,在网络上一番大搜索最终在一篇知乎的评论区中找到了解决办法。知乎原帖链接
下面简述一下解决办法
打开windows命令行
win+r,输入cmd。
在命令行中输入。
1netsh winsock reset
回车运行命令。
重启计算机。
问题解决。
很奇怪,目前贴主仍未了解其中道理,仅仅通过实验在贴主的电脑上解决了贴主的问题,不能保证是否泛用。
网络查询可能是贴主电脑中Clash的原因。
顺带贴主也搜索了一下上述命令,结果如下。知乎链接
在这个知乎的评论区中有提及使用此命令后电脑问题加重,贴主目前还没有遇到过,请谨慎使用本解决办法。
更新系统后无法使用网线无法连接网络现在这种情况出现的概率很小了,因为目前大多数使用的是Windows10或Windows11这两个系统在安装使基本都附带网卡驱动,但像Windows7、Windows XP 比较古早的系统,可能会不识别网卡,处理起来也很简单。
1.使用手机 ...
C语言函数库公共函数库Keil C51 的扩展库intrins.h1. nop()
功能: 执行一个空操作(No Operation)指令,通常用于时间延迟或指令间隙。
原型: void _nop_(void);
示例:
1_nop_(); // 执行一个空指令
2. cror()
功能: 对字节数据进行循环右移。
原型: unsigned char _cror_(unsigned char data, unsigned char count);
参数:
data: 待操作的字节。
count: 右移的位数。
示例:
1unsigned char result = _cror_(0x85, 2); // 0x85 右移2位得到 0x61
3. crol()
功能: 对字节数据进行循环左移。
原型: unsigned char _crol_(unsigned char data, unsigned char count);
参数:
data: 待操作的字节。
count: 左移的位数。
示例:
1unsigned char result = _crol ...
普中科技HC6800-EM3理论知识周期在51单片机中存在时钟周期、状态周期、机器周期、指令周期
时钟周期: 时钟周期也称振荡周期或晶振周期,即晶振在单位时间发出的脉冲数,在一般情况下使用外部晶振源,在本套单片机中提供了11.0592MHz、12MHz、24MHz三个晶振可供选择。
状态周期: 在8051单片机中将两个时钟周期定义为一个状态周期。
机器周期: 在计算机中往往将一条指令的执行过程划分成多个阶段,其中完成一个阶段的操作所需的时间成为机器周期,在8051系列单片机中一个机器周期 = 12个时钟周期。
指令周期: 完成一条指令所需的时间。在STC单片机下载程序中有12T和6T的选择,在12T模式下指令周期 = 12个时钟周期,在6T模式下指令周期 = 6个时钟周期。此选项会影响串口的波特率。
中断中断简单的来说就是在主程序执行过程中突然有人叫CPU紧急去做另外一件事。
在基本型8051单片机中存在5个中断源分别是外部中断:INT0、INT1和定时计数器中断:T0、T1以及串口中断。
其中断的启用与否由内部特殊寄存器IE控制
IE位(中断 ...

