- 博客(57)
- 问答 (1)
- 收藏
- 关注
原创 宿舍生活新升级:智能指纹锁的便捷体验(嘉立创EDA设计)
此外,通过APP,用户还可以随时查看和管理指纹信息,确保安全。:通过APP,用户不仅可以远程控制门锁,还可以查看门锁的状态,比如是否已上锁、是否有人尝试非法入侵等。无论是在宿舍内还是外出,都可以通过手机轻松控制门锁的开关,极大地提升了使用体验。:这款智能指纹锁设计精巧,安装过程简单,不需要破坏原有的门结构。:所有指纹数据都存储在锁内,不通过网络传输,从而保护用户的隐私安全。此外,APP端也采用了加密技术,确保数据传输的安全。:管理员可以通过APP为不同的用户设置不同的权限,比如仅限特定时间段内使用等。
2024-07-19 08:30:09
10953
原创 有毒环境气体监测系统(嘉立创EDA设计)
首先,在硬件设计方面,我们选用了高质量的元器件和合理的电路布局,减少了干扰和噪声的影响。其次,在软件设计方面,我们采用了高效的数据处理算法和通信协议,提高了数据传输的速度和稳定性。这样,每个订阅了该主题的用户都能够实时接收到最新的数据,实现了数据的实时共享和监控。本研究旨在深入探讨有毒环境气体监测系统的核心技术、工作原理及应用情况,分析其存在的问题与不足,并提出相应的优化和改进措施。同时,系统还具备可扩展性,可以根据用户需求添加更多的传感器和功能模块,实现更广泛的应用场景。1.开时钟,分频,配IO。
2024-07-18 09:53:45
13159
原创 STM32进阶-RTC时钟应用的详细步骤+源码
简介RTC (Real Time Clock):实时时钟STM32 的 RTC 外设,实质是一个掉电后还继续运行的定时器。RTC是个独立的BCD定时器/计数器。提供一个日历时钟,两个可编程闹钟中断,以及一个具有中断功能的周期性可编程唤醒标志。RTC还包含用于管理低功耗模式的自动唤醒单元。两个32位寄存器包含二进码十进制格式(BCD)的秒,分钟,小时(12或24小时制),星期几,日期,月份和年份。此外,还可以提供二进制的亚秒值。系统可以自动将月份的天数补偿为28,29(闰年),30,31天。
2024-06-27 10:56:00
1635
原创 嘉立创EDA快速入门教程
嘉立创下载直接去官网下载国产嘉立创EDA - 一个用心为中国人定制的电路板开发平台 (lceda.cn)在官网有专业版和标准版,有windows,linux,mac系统的版本可供选择。绘制原理图下面是嘉立创给的一个ESP32最小系统板的案例之后我们来看一下对原理图的基础操作导入他人的原理图文件放置器件进入页面后,根据所选要的元器件选择放置,这里我以10K的电阻为例这里基础库和扩展库的区别:嘉立创SMT为了区分通用的元件和非通用的元件,降低贴片的难度,降低成本,把能够贴的元件分成两
2024-06-27 08:40:34
13781
原创 基于STM32的简易智能家居设计
1、OLED显示温湿度、空气质量,并可以设置报警阈值2、设置4个继电器开关,分别控制灯、空调、开关、风扇3、设计一个离线语音识别系统,可以语音控制打开指定开关、并且可以显示识别命令词到OLED屏上4、OLED实时显示4个继电器的状态5、设计一个低功耗开关电路,可以语音控制使得系统进入低功耗模式,并且进入低功耗模式后可以再次语音唤醒系统,重新开始正常工作。
2024-06-27 08:40:20
7487
原创 基于STM32环境空气质量检测系统
存储模块部分主要包括SD卡、SPI FLASH(W25Q128)以及EEPROM(AT24C02),前面两者用于存储图片、字库等数据,从SD卡读相关数据写入SPI FLASH,写入SPI FLASH只用于出厂设置或者更新数据时使用,此后SPI FLASH只读;由于该芯片是1.8V工作电压,所以还需提供一个1.8V稳压电路,并且单片机IO引脚输出3.3V,该芯片IO引脚输出1.8V,也不兼容,通信时需要加上电平转换电路。WiFi模块使用ESP8266模块,可以直接接入机智云,在机智云app上看到相关数据;
2024-06-27 08:40:04
6765
原创 【STM32 RTC实时时钟如何配置!超详细的解析和超简单的配置,附上寄存器操作】
STM32 里面RTC模块和时钟配置系统(RCC_BDCR寄存器)处于后备区域,即在系统复位或从待机模式唤醒后,RTC的设置和时间维持不变。因为系统对后备寄存器和RTC相关寄存器有写保护,所以如果想要对后备寄存器和RTC进行访问,则需要通过操作相应的寄存器来解除某些限制。文章有点长,想要理解RTC原理的可以认真阅读。如果只想要源码的,可以直接拉到文章最下面。
2024-06-26 17:27:50
1443
原创 ADC采集到的数值和电压值、频率有什么联系?
同时,采样速率也受到信号带宽的限制,如果采样速率低于信号带宽,则会出现混叠现象,导致采样数据失真。举个例子,如果要采样一个最高频率为10kHz的信号,根据采样定理,采样频率应该大于20kHz,一般可以选择40kHz或以上的采样频率。您好,我们一些喜欢嵌入式的朋友一起建立的一个技术交流平台,本着大家一起互相学习的心态而建立,不太成熟,希望志同道合的朋友一起来,抱歉打扰您了QQ群372991598。其中,Vref为ADC参考电压,n为ADC的位数,ADC_value为ADC采集到的数字值。
2024-05-24 14:27:42
909
原创 STM32-串口通信波特率计算以及寄存器的配置详解
我们只要得到USARTDIV的值,就可以得到串口波特率寄存器USART1->BRR的值,反过来,我们得到USART1->BRR的值,也可以推导出USARTDIV的值。但我们更关心的是如何从 USARTDIV的值得到USART_BRR的值,因为一般我们知道的是波特率,和 fPCLKx的时钟,要求的就是USART_BRR的值。波特率是每秒钟传输的比特位,一般为4800、9600、115200,波特率越大,则数据传输速度越快,但这样就需要接收端也要快速的接收,同时容易受到干扰;同步通信:带时钟同步信号传输。
2024-05-16 08:46:14
1370
1
原创 什么是DMA? STM32如何配置DMA?
您好,我们一些喜欢嵌入式的朋友一起建立的一个技术交流平台,本着大家一起互相学习的心态而建立,不太成熟,希望志同道合的朋友一起来,抱歉打扰您了QQ群372991598一、DMA简介1、DMA简介DMA(Direct Memory Access:直接内存存取)是一种可以大大减轻CPU工作量的数据转移方式。CPU有转移数据、计算、控制程序转移等很多功能,但其实转移数据(尤其是转移大量数据)是 可以不需要CPU参与。
2024-05-06 13:07:54
928
3
原创 基于STM32的ADC—电压采集(详细讲解+HAL库+标准库代码)
我们一般在设计原理图的时候会把 ADC 的输入电压范围设定在:0~3.3v,因为 ADC 是 12 位的, 那么 12 位满量程对应的就是 3.3V,12 位满量程对应的数字值是:2^12。规则通道可以有 16 个这么多,可规则数据寄存器只有一个,如果使用多通道转换,那转换的数 据就全部都挤在了 DR 里面,前一个时间点转换的通道数据,就会被下一个时间点的另外一个通 道转换的数据覆盖掉,所以当通道转换完成后就应该把数据取走,或者开启 DMA 模式,把数据 传输到内存里面,不然就会造成数据的覆盖。
2024-05-06 09:28:35
5488
原创 关于STM32的SPI外设时钟分频对应的速率
系统默认配置是fPCLK2=72MHz,fPCLK1=36MHz。SPI最大能达到的速率是fPCLK/2,也就是SPI1最大能达到36M,SPI2最大能达到18M。我们一些喜欢嵌入式的朋友一起建立的一个技术交流平台,本着大家一起互相学习的心态而建立,不太成熟,希望志同道合的朋友一起来。QQ群372991598。上述的fPCLK对于SPI1来说是fPCLK2,对于SPI2来说是fPCLK1。可见:SPI1是在挂APB2上的,SPI2是挂在APB1上的。SPI的波特率控制有8种分频可选。
2024-05-06 09:11:33
726
原创 串口通信标准RS232 RS485 RS422的区别
通信能力:RS-485 接口在总线上是允许连接多达128个收发器,用户可以利用单一的 RS-485 接口方便地建立起设备网络。1、RS-422有4根信号线:两根发送(T+、T-)、两根接收(R+、R-)。2、RS-485只有两根数据线:发送和接收都是A和B。RS232: 逻辑”1” : -3V ~ -15 V;RS485: 逻辑”1” : +2V ~ +6 V;逻辑”0” : -2V ~ -6 V。RS422: 逻辑”1” : +2V ~ +6 V;逻辑”0” : -2V ~ -6 V。
2024-04-29 17:02:42
3141
1
原创 一篇易懂的SPI通讯指南
单主多从模式,即主设备的SCLK和MOSI连接到每个从设备的相应引脚,从设备的MISO连接到主设备的MISO引脚,每个从设备有独立的SS引脚与主设备连接,主设备通过选择SS来选择要与之通信的从设备。然后,主设备通过MOSI线将数据发送到第一个从设备,第一个从设备接收到数据后,将其通过MISO线传输给第二个从设备,这样,数据从一个从设备级联传输到下一个从设备,直到传输到最后一个从设备。从第一个从设备的MISO连接到第二个从设备的MOSI,以此类推,直到最后一个从设备的MISO。
2024-04-29 16:56:20
2417
原创 位与(&)、位或(|)、异或(^) 、左移<<、右移>>、原码、反码、补码的简单应用
所以,为区别起见,将带符号位的机器数对应的真正数值称为机器数的真值。例:0000 0001的真值 = +000 0001 = +1,1000 0001的真值 = –000 0001 = –1。(2)取一个数的指定位:找一个数,对应X要取的位,该数的对应位为1,其余位为零,此数与X进行“与运算”可以得到X中的指定位。常用来对一个数据的某些位置1:找到一个数,对应X要置1的位,该数的对应位为1,其余位为零。(1)使特定位翻转找一个数,对应X要翻转的各位,该数的对应位为1,其余位为零,此数与X对应位异或即可。
2024-04-28 11:28:20
2923
原创 如何看待AIGC技术?
因此,在推广和应用AIGC技术时,需要加强对伦理问题的考虑,制定相关的政策和法规,确保技术的合理、安全和可持续发展。一方面,随着AIGC技术的不断成熟和普及,人们将享受到更智能、便捷的生活方式,例如智能家居、智能交通等将更加普及。另一方面,AIGC技术的应用可能会引发一些社会问题,例如失业风险、隐私泄露等,需要政府、企业和个人共同努力来解决。同时,面对伦理和风险问题,需要制定更加详细的政策和规范,保护个人隐私和数据安全,确保技术的良性发展。简介:探讨AIGC技术的发展现状和未来趋势。
2024-04-26 15:56:23
325
4
原创 零基础快速上手STM32开发(手把手保姆级教程)
开发板与核心板最大的区别就是,开发板板载了更多的硬件资源,比如更多 LED 灯,更多按键,也有一些传感器,以及一些扩展 flash 等等资源。上面所推荐的这块核心板,主控芯片是 STM32103C8T6 ,64K flash,20K RAM,4 个定时器,3 个串口,网络上资料好几吨,非常适合初学者入门,强烈推荐。如果大家使用的是其它系列芯片,那就搜索对应系列的关键词。核心板上边的电源线,随便找一根 microUSB 线来接就行,也就是之前手机充电线,扁头的那种,它就是用来供电的,没有传输数据。
2024-04-25 11:12:20
4394
4
原创 带你搞懂STM32中GPIO的8种工作模式
从图示可以看到,之前的3种模式,输入的信号都经过了TTL施密特触发器,把缓慢变化的模拟信号转换成阶段变化的数字信号。当输出控制器将P-MOS关断、N-MOS关断时,相当于什么都没接,此时输出浮空,相对于其它点的电阻无穷大,呈现高阻态,可以理解为开路。当VDD和VSS的开关都断开时,此时弹簧既不向上拉,也不向下拉,处于一种悬空的状态。当输出高电平时,P-MOS导通,电流按下图箭头所示流出去,称之为推,把电流推出去。当输出低电平时,N-MOS导通,电流按下图箭头所示流进来,称之为挽,把电流挽回来。
2024-04-22 16:41:11
1351
1
原创 PWM原来是这么回事
PWM实现的原理是通过锯齿波/三角波(载波)所需要合成的波形(调制波)进行比较,然后确定PWM所需要输出的极性,通常是ON或者是OFF,因为一般都是作用到开关元器件上;然后我们继续想,能不能调制出其他的波形,比如调制一个正弦波sin wave,那也就是我们常说的SPWM,其实是可以的,具体如下图所示;所以根据面积等效法则,可以通过对改变脉冲的时间宽度,来等效的获得所需要合成的相应幅值和频率的波形;其实很简单,只要把需要调制的波形设置为斜坡输出的波形就可以了,具体如下图所示;PWM输出低电平,即为OFF;
2024-04-22 15:40:56
3815
原创 基于MEMS气敏元件的 SY-BSM-D12电池安全
传感器监测模块用来监测电池热失控过程中产气 以及温度数据,提供早期预警信号,测试数据通 过I2C 、UART接口通信。MEMS气敏元件表面可以被覆滤膜加以保护, 传感器模块可根据需要选择贴片或排线组装。对CO 、H2 高度敏感及快速响应,并可 通过增加过滤罩消除VOCs对测试干扰。备注:1 ,I2C接口需外置4.7-10KΩ上拉电阻 2,默认无插座。小尺 寸(17.8mmx15.2mmx6.5mm )低成本多因子输出,可对电池热失控 提供可靠早期预警。基准值可重置,存储状态可设置。
2024-04-22 14:48:47
3678
原创 I2C通信的详细讲解
要么表示未收到数据,无效响应),需要注意的是,到第九个周期的时候,主设备会释放SDA,即让其变为高电平,从设备会主动来拉低SDA,主设备会读取此时的SDA,若读取此时的SDA为则表示从设备已经收到刚刚发送的信息,若读取此时的SDA为则表示从设备没有收到刚刚发送的信息。(3)每一个I2C从设备在通信中都有一个I2C从设备地址,这个设备地址是从设备本身固有的属性,然后通信时主设备需要知道自己将要通信的那个从设备的地址,然后在通信中通过地址来甄别是不是自己要找的那个从设备。相应的主设备的应答也是如此。
2024-04-17 10:00:25
4650
原创 单片机按键消抖常用的软硬件方法
当我们按下按钮或拨动开关或微动开关时,两个金属部件会接触以短路电源。但它们不会立即连接,而是金属部件在实际稳定连接之前连接和断开几次。释放按钮时也会发生同样的事情。这会导致误触发或多次触发,例如多次按下按钮。这就像一个弹跳的球从高处落下,它一直在表面弹跳,直到它静止。换句话说,我们可以说开关弹跳是任何开关的非理想行为,它会生成单个输入的多个转换。当我们处理电源电路时,开关弹跳不是主要问题,但当我们处理逻辑或数字电路时,它会引起问题。因此,为了消除电路中的抖动,使用了开关去抖动电路。
2024-04-08 16:33:41
2953
1
原创 单片机的按键消抖/开关量监测函数(附源码,可移植)
1)扩展性:debounceSwitch该函数使用结构体指针的形式,提供了开关量检测的框架,需要多个开关量/按键检测时,实例化对应的按键变量即可。相对于纯软件延时消抖,debounceSwitch函数是更可靠的,因为它不依赖于软件的延时,而是基于实际的状态变化来判断开关信号的稳定性。致命缺点:在延时的时候一直占用cpu的资源,如果在延时的时候,有其他外部中断或者抢占事件,系统完全没有响应的。5)如果当前状态与 validState 不同,表示发生了有效的状态变化,更新有效状态。1)读取当前开关信号状态。
2024-04-08 16:25:49
6497
原创 技术干货丨电源常用电路—采样电路详解
ADC采样原理ADC(模数转换器)采样是将模拟信号按照一定的采样频率进行离散化,然后转换为数字信号的过程,通常包括采样、保持、量化和编码四个步骤。
2024-04-03 15:54:30
9552
原创 分享一款实用的太阳能充电电路(室内光照可用)
工作电压可以简单的理解为,带了负载以后,他能输出的最大电压,但是工作电压这个点其实要根据实际负载情况以及使用情况来看的,我个人认为他是不准确的(厂家肯定是根据某一个测试环境,用一个标准的负载给它做的参数标定),随着负载的改变他是会改变的。实际使用,在没有光照的情况下,我们不想超级电容过度的放电,因为电压降到负载需要的最低电压以下,负载电路已经不能正常工作了,但是超级电容其实连接着负载电路,还是会一直消耗电量。那么需要实现这个电路,需要用到的2个必不可少的元件:超级电容,太阳能电池板。
2024-04-03 15:46:46
9353
1
原创 简单几分钟将GPT部署到移动磁盘,从此不需要网络带着跑
另外令人激动的是,GPT4All 可以不用 GPU,有个8/ 16G 内存的笔记本就可以跑。第一步,下载安装包。种类比较多,对CPU性能的要求也不一样,可按自己的需求进行选择。隐私:使用某个公司提供的服务,避免不了你的个人数据安全无法得到保障,特别如果你要咨询关于自己隐私的问题就要考虑安全问题。点击下载客户端,将目录选择你的移动磁盘,最好单独放一个文件夹。在上方选择所识别到的模型,即可开始离线对话,不过仅支持英文。选择所下载的模型地址,客户端会自动识别到你的模型。
2024-04-02 14:06:34
8648
1
原创 TM1650芯片驱动四位数码管(含部分代码)
写“1”:保持 SDA 为“1”电平,SCL 从“0”跳到“1”,再从“1”跳到“0”,则认为是写入“1”写“0”:保持 SDA 为“0”电平,SCL 从“0”跳到“1”,再从“1”跳到“0”,则认为是写入“0“接口和TM1650通信,在输入数据时当SCL是高电平时,SDA上的信号必须保持不变;一个字节数据的传输格式如图4,数据发送时MSB在前,LSB在后。开始信号:保持SCL为“1”电平,SDA从“1”跳“0”,认为是开始信号,结束信号:保持SCL为“1”电平,SDA从“0”跳“1”,认为是结束信号,
2024-04-02 10:11:50
9909
原创 74HC595芯片工作原理(附使用方法)
存储寄存器是直接和8个输出引脚相通的,将移位寄存器的数据转移到存储寄存器后,Q0 Q1 Q2 Q3 Q4 Q5 Q6 Q7 就可以接收到我们开始输入的一个字节的数据。所谓存储寄存器,就是数据可以存在这个寄存器中,并不会随着一次输出就消失,只要595不断电,也没有新的数据从移位寄存器中过来,数据就一直不变且有效。新的数据过来后,存储寄存器中的数据就会被覆盖更新。那么这里的位移寄存器时钟也是同样的道理,当一个新的位数据要进来时,已经进入的位数据就在移位寄存器时钟脉冲的控制下,整体后移,让出位置。
2024-04-02 10:04:39
11031
原创 MPU6050使用指南(STM32)
九轴传感器:就是三轴加速度计+三轴陀螺仪+三轴磁强计的组合,在飞行器上是广泛应用的。当MPU6050作为一个IIC从机设备的时候,有8位地址,高7位的地址是固定的,就是WHOAMI寄存器的默认——0x68,最低的一位是由AD0的连线决定的。六轴传感器:通常指的是三轴加速度计+三轴陀螺仪,三轴加速器是检测横向加速的,三轴陀螺仪是检测角度旋转和平衡的,可以用在体感游戏上。MPU6050是由三个陀螺仪和三个加速度传感器组成的6轴运动处理组件,是一款六轴(三轴加速度+三轴角速度(陀螺仪))传感器。
2024-04-01 16:26:20
9230
原创 HC-SR04使用指南(STM32)
HC-SR04超声波距离传感器的核心是两个超声波传感器。一个用作发射器,将电信号转换为40 KHz超声波脉冲。接收器监听发射的脉冲。如果接收到它们,它将产生一个输出脉冲,其宽度可用于确定脉冲传播的距离。就是如此简单!该传感器体积小,易于在任何机器人项目中使用,并提供2厘米至400厘米(约1英寸至13英尺)之间出色的非接触范围检测,精度为3mm。让我们看一下它的引脚排列。VCC 是HC-SR04超声波距离传感器的电源,我们连接了5V的供电。
2024-04-01 16:04:58
9634
原创 stm32之点亮LED
学习stm32单片机的时候,会有三种,标准库,寄存器,HAL库。这里根据原理图发现PB5这个引脚所在的电路,是外接的有3.3V的VCC,即板子一上电就会有高电平)先看LED0 是和PB5引脚相连的 即PB5引脚控制着LED0的电平,上接3.3V电压,即默认是高电平,所以我们将PB5设置为低电平的时候,电路导通。我们通过每个案例来介绍单片机的知识点,流水的单片机,铁打的LED灯。这里补充一下,当IO口设置为输出模式的时候,也是可以读取IO的电平状态的。这里我们根据给的原理图,找到led的区域。
2024-03-31 14:44:53
11097
1
原创 电池储能系统介绍之电池管理系统(BMS)
电池储能系统三大核心系统(一) 完整的电化学储能系统主要由电池组、电池管理系统(BMS)、能量管理系统(EMS)、储能变流器(PCS)以及其他电气设备构成。 在储能系统中,电池组将状态信息反馈给电池管理系统BMS,BMS将其共享给能源管理系统EMS和储能变流器PCS;EMS根据优化及调度决策将控制信息下发至PCS与BMS,控制单体电池/电池组完成充放电等。
2024-03-24 14:13:46
15998
单片机开发PWM的案例
2024-07-07
stm32-lis3dsh-main.zip
2024-04-24
STM32-Lib-LIS3DSH-Accelerometer-main
2024-04-24
STM32+A4988步进电机
2024-03-22
C8T6+A4988步进驱动 2相4线 42步进电机+源码
2023-05-19
stm32通过串口读取香氛传感器并通过Matlab显示实时曲线
2023-05-19
为什么mediapipe找不大solutions
2021-07-02
TA创建的收藏夹 TA关注的收藏夹
TA关注的人