登录社区云,与社区用户共同成长
邀请您加入社区
STC89C51属于CMOS8位微控制器的范畴,由STC公司研发并生产而来,它的功耗非常低,具有较高的使用性能,标准功能如下所示:Flash的字节是8k,RAM的字节是512, I/O口线的类型是32位的,使用的计时器是一种看门狗计时器,内置4KB EEPROM,MAX810复位电路,使用的是全双工串行口,7向量4级中断结构有1个, 外部中断与16位定时器/计数器的数量分别是4个与3个。因为它具有
本文探讨了64位运算在8051单片机上的应用前景。传统8051虽已问世40年,但凭借低成本、低功耗优势仍广泛应用于家电、工控等领域。随着物联网、AI等新兴需求涌现,增强型8051通过引入32位乘除单元(如STC的AI8051U)和配套编译器(金水明32051),实现了性能飞跃。文章通过加权平均、神经网络和FIR滤波三个案例,展示了乘加指令如何将运算周期从数百次压缩到数次。借鉴RISC-V和ARM的
可靠性设计两级防抖处理(硬件延时+软件检测)EEPROM数据持久化存储完备的状态检查机制实时性保证定时器中断确保精确计时主循环高效处理保证响应速度扩展性架构模块化代码结构清晰的状态划分智能化升级加入语音识别实现声控增加AI自动评判功能物联网整合微信小程序远程控制比赛数据云端存储分析专业化定制支持不同比赛规则预设可配置的评分策略引擎该系统作为经典的嵌入式应用实例,很好地展示了51单片机在控制领域的灵
问题:为什么要定义这么多文件夹?为什么不按照之前程序那样直接main.c文件里面写代码呢?
STC89C5X系列单片机提供了4个外部中断:外部中断0(INTO)、外部中断1(INT1)、外部中断2(INT2)、外部中断3(INT3)。当进入主程序main开始,从上往下去执行,当此时突然来了中断响应,此时程序会暂停当前执行的行数,去执行中断函数,当中断函数里面的程序执行完成,此时会回到刚才程序暂停的位置继续往下执行下一行代码,继续一行一行的往下走。
打开Keil5->project->newproject.....保存.接下来要选择我们所使用的单品机:microchip->At89c52->是否都可以之后与VS类似;第一个文件名称即为:main.c从左到右依次为:编译,建立工程,所有文件重新建立;右边小把手可以调节配置 ,文字大小和文字颜色之类的;LED介绍:小头正,大头负,长脚正,短脚负.VCC为+极,RP7和RP9为两个1K欧的电阻,作用
摘要:本文介绍了一种基于51单片机的智能花盆系统设计。该系统通过集成土壤湿度传感器、DS18B20温度传感器和光敏电阻等模块,实时监测花盆环境参数,并自动控制加热片、水泵、补光灯等执行机构。系统采用LCD1602显示屏实现数据可视化,支持按键设置参数阈值,通过继电器和步进电机实现自动浇水、温控及松土功能。该设计具有成本低、模块化程度高、控制精准等特点,适用于家庭盆栽养护、农业科研和教育实践等领域,
在单片机系统中,操作任意寄存器或者某一位的数据时,必须给出其物理地址,又因为一个寄存器里有8位,所以位的数量是寄存器数量的8倍,单片机无法对所有位进行编码,故每8个寄存器中,只有一个是可以位寻址的。把各个模块的代码放在不同的.c文件里,在.h文件里提供外部可调用函数的声明,其它.c文件想使用其中的代码时,只需要#include "XXX.h"文件即可。所有的函数均放在main.c里,若使用的模块比
基于STM32的智能鱼缸系统通过多传感器实时监测水温、水位、光照等参数,结合自动控制模块实现精准调节。系统支持手机APP远程监控,集成温度控制、水质调节、自动喂食等功能,显著降低人工维护成本。硬件采用STM32F103C8T6主控,搭配DS18B20等传感器,软件实现PID控制算法与数据滤波。适用于家庭观赏、水产养殖等场景,具有高性价比和模块化扩展优势。未来可集成AI算法优化控制,并接入智能家居系
本文介绍了一种基于51单片机的智能花盆系统设计,通过集成多种传感器和执行机构实现植物养护自动化。系统采用STC89C52单片机作为主控,配备土壤湿度、温度和光照传感器实时监测环境参数,并通过继电器控制水泵、加热片、补光灯等装置自动调节生长环境。具备LCD显示、按键设置、声光报警等功能,支持蓝牙/Wi-Fi远程监控扩展。设计突出模块化、低成本和精准控制特点,适用于家庭盆栽、农业科研及教学实践场景。未
摘要:STM32程序卡死需点3次全速运行才能启动的"玄学"问题,根源在于默认启用的半主机模式。当程序使用printf等标准I/O函数时,会通过调试器与主机通信,若调试器未准备好就会阻塞。解决方法包括:1) 删除printf;2) 启用MicroLIB并重定向fputc至串口;3) 完全重写标准库I/O函数。该问题暴露了嵌入式开发中默认配置不匹配、main函数前的隐藏初始化代码、
摘要: void*是C/C++中的无类型指针,能存储任意类型数据的地址,但使用时需显式类型转换。其核心优势在于实现泛型编程和内存管理,常见用途包括: 编写通用函数(如打印不同数据类型) 构建通用数据结构(链表/队列) 标准库函数实现(malloc/memcpy) 跨场景数据传递(多线程/回调函数) 使用注意事项: 必须显式类型转换后才能解引用 不能直接进行指针运算 需自行确保类型安全 推荐配合si
摘要:本章介绍了DAC数模转换的两种实现方案。方案一采用外接串行DAC芯片MCP4921(12位分辨率,SPI接口),详细说明了硬件连接、数据格式配置及C51编程实现,包括直流电压输出、锯齿波和正弦波生成方法。方案二为PWM+RC低通滤波的替代方案,适用于简单应用场景。文章还涵盖了DAC基础概念(分辨率、参考电压)、测试方法以及误差优化建议,重点比较了两种方案的优缺点,指出专用DAC在精度和波形质
在Python生态中,开发者可高度定制化地实现代理IP池的构建与管理。此外,与OpenAI API的结合尝试正在推进,通过自然语言指令直接生成代理策略代码,将原本2小时的人工配置流程缩短至分钟级。策略二是开发智能路由算法,通过Python的pandas库分析历史IP响应时间与成功率数据,建立权重动态分配模型,优先调用高可用代理节点。策略三是嵌入异常自愈模块,当检测到连续3次请求超时时自动触发代理池
本文设计了一种基于STC89C52单片机的智能窗户控制系统。该系统通过雨滴、温湿度、风速等传感器实时监测环境参数,自动控制步进电机开关窗户,支持手机APP远程操作和本地触摸控制。测试表明,系统响应迅速,能有效防止雨水侵入、强风损坏及夹伤风险,显著提升居住舒适度。未来可扩展AI学习、WiFi联网和PM2.5监测功能,进一步融入智能家居生态。整套方案成本约200元,具有较高实用价值。
一、LED点阵发光原理8*8单色单片机结构图如下:https://blog.csdn.net/weixin_42625444/article/details/90897605从电路图中很简单的就可以看出来,想要点亮点阵中的某一个LED灯。只要使得那个灯所在的行输出高电平,所在列输出低电平就好。
注:仿真中51单片机芯片是兼容的,AT89C51、AT89C52为具体型号,内核相同。原理图中无论STC还是AT系列,引脚功能一致,程序兼容,可替换为STC89C52/STC89C51/AT89C52/AT89C51等51单片机芯片。资料下载链接:S0082 51单片机电子钟12-24时制设计链接:https://pan.baidu.com/s/1QnKZRhgwCcwNBNDUlvr_zA?pw
本文介绍了DS18B20温度传感器的驱动代码实现方法。DS18B20是一款单总线数字温度传感器,具有测量范围-55℃~125℃、精度±0.5℃的特点,支持寄生供电。文章详细阐述了其硬件连接方式(P3.7引脚需接上拉电阻)和软件实现,包括复位、读写操作的核心函数(ds18b20_Reset、write_ds18b20、read_ds18b20)以及温度获取函数get_tmp的实现原理。通过UART串
STC32G144K246-LQFP100/64, 9/1已回 ,9/3 可能 printf_usb("Hello World!- TinyML,Ai8051U 人工智能 开山之作,AI手写计算器 国芯人工智能技术交流网站 - AI32位8051交流社区。-支持32位/8位8051指令,74MHz。双向端点,支持4种端点传输模式。
基于51单片机的智能宠物饮水机系统采用STC89C51作为主控芯片,集成水位监测、显示、报警、补水及蓝牙通信功能。系统通过传感器实时采集水量数据,结合阈值判断实现自动补水与远程监控,满足宠物饮水的智能化需求。MCU-918基于51单片机的智能宠物饮水机_哔哩哔哩_bilibili本系统通过低成本方案实现宠物饮水的自动化与远程管理,具备实用性与可扩展性,适合家庭及宠物店应用。后续可结合用户反馈迭代功
文章摘要:硬件浮点运算(FPU)是嵌入式系统的关键性能加速器,通过专用电路实现IEEE754标准的浮点数运算,相比软件模拟可提升10-100倍计算速度。核心优势包括:提升实时信号处理/机器人控制精度、降低CPU负载、简化开发流程,助力AI边缘计算等创新应用落地。典型应用场景涵盖PID控制、FFT分析及AI推理等领域。虽然会略微增加芯片成本和功耗,但总体性价比显著。使用需注意芯片选型、编译配置和代码
嵌入式系统中的时钟使能与外设使能是开发的关键技术,它们如同芯片功能的"开关",控制着各模块的运行状态。时钟使能负责为外设提供时钟信号,外设使能则激活具体功能。这种双重机制既保证了系统灵活性,又实现了低功耗设计。文章通过STM32实例展示了它们的应用场景,分析了在功耗优化和系统稳定性方面的优势,同时也指出会增加调试复杂度等挑战。随着AIoT发展,这种精细化的资源管理技术将愈发重要
摘要: 本文深入探讨了嵌入式系统中使用硬件定时器实现毫秒级延时函数的技术原理与实践方法。通过对比软件空转的局限性,分析了硬件定时器在精度、效率和抗干扰性方面的优势,并以STM32为例展示了具体实现代码和项目应用场景(如LED呼吸灯、按键消抖等)。文章系统阐述了定时器的底层架构(时钟源、预分频器等核心部件),提供了工程实践中的参数配置公式和标准化封装建议,同时指出了多线程环境下的潜在风险与解决方案。
音频双缓冲区交叉播放,利用视频播放帧间隔加载下一个缓冲区音频数据,时间计算:16000采样率 16bit 双声道 一秒32000字节。一个缓冲区播放时间:4K采样点,一通道2K,播放时间2K/16K*1000ms = 125ms。想要获取资料的可以点击帖子上方链接查看哦。想要更多资料可点击上方链接,移步至原贴。160*80 一帧刷屏时间28.2ms。fps20,50ms 周期。
点击「STC89C52RC 系列各功能模块」链接,里面有 AI Cube 生成的详细步骤:从第一步到最后一步(共 16 步左右),每步都写得很清楚,跟着做就能上手功能模块开发,对新手超友好。在软件【资料下载】中找到【芯片手册】,比如点击【STC89C52数据手册】【AI8051U】,直接跳转到对应手册,手册资料详细管脚图、选型功能等信息一目了然,查参数超方便。:【库函数】【实验箱】【核心功能实验板
【STC单片机】--如何用 AiCube程序自动生成STC89C52RC系列各功能模块程序?come on, AI学妹来教你!11, STC89C52RC@AiCube-点击那个播放的按键-是产生KEIL-C51项目。只能8位自动重载的定时器1。》的相应原理部分后,来。Keil C51 项目。来配置,自动生成程序。
在编写嵌入式代码时,豆包AI大模型优势显著。它知识储备丰富,能快速提供各类嵌入式系统所需的基础代码框架,如针对单片机、ARM等的初始化代码。对于复杂算法,像PID控制算法,能详细解释原理并给出实现代码。还可依据具体硬件平台特点和应用场景,给出优化建议,提升代码性能。同时,当代码出现问题,它能帮助分析错误原因,提供调试思路,大幅提高嵌入式代码编写的效率与质量。
一时心起,想起来分享下当年做的小玩意,今天就来个倒车雷达,要不然在电脑里早晚我得删了他,哼!要是哪天哪个小伙伴也被逼着做这种东西,来这!背景车辆在倒车时,由于驾驶员无法看到车辆后方的状况,存在一定的安全隐患。倒车雷达是一种能够在倒车时检测车辆后方障碍物的电子装置,该装置一般使用超声波探测技术,利用超声探头发出超声波,超声波遇到障碍物后部分反射回超声探头,通过检测超声探头从发出超声波到接...
保护现场(PSW入栈,IF=TF清零)PSW入栈,就是把现在处理结果的标志位保存在堆栈中,IF=TF=0就相当于把一切的干扰排除,不让单步中断等影响处理结果。1.正在执行一个程序(主程序),执行到一个位置的时候,突然有了中断请求,在这会把所有的中断进行判优,找到优先级别最高的中断,进行执行。保护断点(CS,IP入栈)CS:IP相当于是断点,断点就是在哪里打断的点,如果执行完中断以后,还要返回到断点
TY1801 反激变换器PWM GaN功率开关电源芯片
PWM 控制 IC :CRE6959UHN
莱特准则是一种正态分布情况下判别异常值的方法。具体内容如下:假设在一列等精度测量结果中,第iii个测量值xix_ixi所对应的残差vixi−xˉvixi−xˉ的绝对值满足∣vi∣max3σxˉ∣vi∣max3σxˉ则该误差为粗差,所对应的测量值xix_ixi为异常数值,应剔出不用。σ1n−1∑i1nvi2(贝塞尔公式)
半导体物理
花样流水灯就是让LED灯按照一定规律进行各种变化,流水灯在生活中也随处可见,例如在建筑物的棱角上装上流水灯,可以起到变换闪烁达到美不胜收的效果。
51单片机+土壤湿度传感器+温湿度传感器+光敏电阻+二氧化碳传感器。控制器、OLED屏、WiFi模块会在后续更新,需要源码私信我。Free
51单片机DS18B20测温LCD1602显示,Proteus仿真运行图及源程序
本项目使用Proteus8仿真51单片机控制器,使用数码管、按键、交通信号灯模块等。系统运行后,交通灯系统开始运行,数码管显示初始时间,默认南北绿灯5S,东西红灯8S,绿灯过后南北黄灯3秒;然后切换东西绿灯5S,南北红灯8S,绿灯过后南北黄灯3秒;如此循环。可使用K1键进入红绿灯时间设置,K2和K3进行加减调节,设定好后,K4键确定并继续运行。在运行过程中,可通过K2键禁止通行,此时东南西北方向红
了解51单片机
51单片机无法烧录程序的N种解决办法有没有掉电!!!如果没有自动掉电的电路时,需要手动掉电;单片机的晶振有没有安装好,是否有缺失,晶振的负载电容是否合适;CH340的TXD,RXD要与单片机的TXD,RXD反接,CH340的地线有没有和单片机接好;如果单片机的最小系统是自己焊接的,检查一下复位电路,是否因为复位电路有问题,导致RST引脚电平一直被拉高;确认单片机的型号是否正确,尝试降...
由于停电所以只写了两个,即电子钟和闹钟,日历没有写,闹钟也只精确到了分钟,按k5切换。
E18系列模块采用美国德州仪器公司原装进口 CC2530 射频芯片,芯片内部集成了8051 单片机及无线收发器,部分模块型号内置PA功率放大器增加通信距离。出厂自带固件基于 ZigBee3.0 协议实现的串口数据透传,支持 ZigBee3.0 协议下各种指令命令。经实测,对市面上大多数 ZigBee3.0 产品有着非常良好的兼容性。
首先如果我们是以个人账号登录嘉立创的话,我们就得新建立一个元器件库,如图:接着再新建器件(在上图元件库的右边)如图:这里我们再点击管理分类,然后点击一级分类什么的绿色再然后再根据需要命名,最后要先点击应用再点击确认,如图然后再按照NE5532手册上的实物图绘制, 绘制完第一个部分后,如图:鼠标点击左下角的芯片,选择新建部件然后就会跳转到新的一页,然后继续绘制我们的第二部分。
该外设已经有了固定的硬件连接,因此我们只需要关注其DQ位与单片机的P14引脚连接到了一起。对DS18B20外设的额外介绍:DQ全称为数字信号输入输出端,该传感器的最低温度精度为0.0625℃,并将读取到的温度保存到MSB、LSB两个8位寄存器当中。MSBSSSSSLSB从表格中进行观察我们可以发现,高位的MSB寄存器的前5位用于表示温度是否为整数,当全为0时极为整数,编程时不需要在意。最后3位与L
【代码】51单片机——声光报警器、蜂鸣器、报警。
按键其实就是一个会回弹的振片,通过内部设计使得按键按下时,电路被接通(不再是断路的状态),电路中的电流从无到有,电平发生变化,观察原理图发现按键一端接GND一端接P3口,GND其实就是接地,也就是低电平,P3口默认接的是。编译烧录后发现现象还是有点小故障,其实是因为弹片在按下和弹起的时候都会有微小的振动,振动时间很段,就几毫秒的时间,但是对于单片机这样高速运行的CUP来说振动的时间并不是极短的,抖
当时,由于诺基亚对它的维护不够用心,Qt没有任何商业模式,只是一款纯开源的软件。然而,对于我这个对MFC感到厌倦的人来说,Qt简直就是一个天赐的礼物。首先是一些深藏不露的BUG,如QtWebkit中右键菜单的BUG,无论我怎么努力,都无法解决。几年后,我接到了一个项目,对用户界面的要求比较高,因此我决定学习Qt 5.12版本的QML。虽然这个问题并不被广泛讨论,但我根据自己的开发经验,谈谈我对这个
pcf8591同时读取两个通道的adc是可能会出现两个值跟通道刚好相反,有人会直接把1和3通道顺序互换来解决,这里提供一个更科学的方法。具体原因应该是通道命令给到pcf8591和它完成转换并把值保存进adc的寄存器之间有时间间隔,所以把变换通道的命令传给pcf8591时,它此时的adc寄存器里的值还是上次也就是上个通道的值。...
Keil5代码提示,自动填充,自动补齐设置.