一、设计需求【1】项目背景在竞争日益激烈的今天,各行各业为提高竞争力,纷纷推出了各种新、奇的事物来吸引消费者。经过长时间的市场调查,发现广大市民及民营企业家大多还采用传统的人工喂养方式,这种方式不但耗费了大量的人力资源,而且由于现在的人力成本的不断增加,大大增加了企业的投入成本。此外还会由于饲养人员长时间的从事单调重复的工作,造成对工作的热情锐减,也不能使宠物的饮食规律得到保障。本设计就是为了同时满足这些需要而设计的宠物定时投喂器。本文将介绍一款基于STM32设计的宠物定时投喂器。该投喂器采用了STM32F103RCT6作为主控芯片,具有实时时钟模块、称重模块、步进电机和蓝牙模块等功能。通过Q
今天,翻出来一个双轴摇杆模块,某宝上几块钱一个,就给大家分享一下这个模块的驱动程序吧。 双轴驱动模块:可随着上面的键帽转动获得模拟值通过adc转换就可以查看到具体的数据从而得到上下左右的值。引脚:MS:按键VRy:y轴模拟量输出VRx:x轴模拟量输出5vGND展示:voidInit_ADC(void){GPIO_InitTypeDefGPIO_InitS; ADC_InitTypeDefADC_InitS; RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA|RCC_APB2Periph_AFIO|RCC_APB2Periph_ADC1,ENABLE);
想要更多项目私wo!!!一、电路设计 离线语音识别识别垃圾种类并且垃圾桶自动翻盖:说出唤醒词“垃圾桶”后,再说一句垃圾名称,语音识别模块端识别到相应关键词,便会将结果通过串口发送到STM32端,STM32端接着会发送打开相应垃圾桶盖的指令,6s后,垃圾桶盖自动关闭。其中翻盖功能是通过STM32端控制舵机实现。 语音播报功能:STM32端若判断到有人说出唤醒词了,通过串口发送指令给语音播报模块,外放喇叭便会播报“你好”的音频,若判断到相应的垃圾种类,便会播报相应的垃圾种类音频。 APP/网页端远程控制垃圾桶:STM32端通过串口连接WIFI模块esp82
目录SRAM实验存储器简介SRAM方案简介硬件设计程序设计程序流程图程序解析下载验证内存管理实验内存管理简介硬件设计程序设计程序流程图程序解析下载验证SD卡实验SD卡简介SD物理结构命令和响应卡模式数据模式SDIO接口简介SDIO主要功能及框图SDIO的时钟SDIO的命令与响应SDIO相关寄存器介绍SD卡初始化流程SDIO模式下的SD卡初始化SPI模式下的SD卡初始化硬件设计程序设计SD卡的HAL库驱动程序流程图程序解析下载验证FATFS实验FATFS简介硬件设计程序设计程序流程图程序解析下载验证SRAM实验STM32F103ZET6自带了64K字节的RAM,对一般应用来说,已经足够了,不过在
系列文章目录第一章了解STM32文章目录系列文章目录前言一、STM32基本系统1.STM32基本(最小)系统板2.使用STM32为核心器件的基本(最小)系统构成单元二、主控制器(CPU)1.STM32F103RCT6微控制器参数2.STM32F103RCT6微控制器引脚分布三、启动电路设计启动模式设置四、电源电路设计1.电源2.末级电源电路:使用LM1117-3.3五、调试电路设计调试接口六、复位电路设计1.复位电路2.阻容复位电路3.复位电路设计注意事项七、时钟电路设计总结前言为什么使用STM32而不是8051?是因为51的频率太低,无法满足计算需求?是51的管脚太少,无法满足众多外设的IO
文章目录一、AT24C02简介二、AT24C02引脚三、AT24C02寻址四、AT24C02读/写操作4.1AT24C02写操作4.2AT24C02读操作五、AT24C02程序六、应用实例七、拓展应用一、AT24C02简介AT24C01/02/04/08/16…是一个1K/2K/4K/8K/16K位电可擦除PROM,内部含有128/256/512/1024/2048个8位字节,AT24C01有一个8字节页写缓冲器,AT24C02/04/08/16有一个16字节页写缓冲器。电压可允许低至1.8V,待机电流和工作电流分别为1uA和1mA。该器件通过I2C总线接口进行操作,这里就不再对IIC做详细介
目录死区简介定时器相关时钟系统STM32中配置死区时间明确自己定时器系统时钟TIMx_BDTR寄存器死区简介 通常,大功率电机、变频器等,末端都是由大功率管、IGBT等元件组成的H桥或3相桥,每个桥的上半桥和下半桥是是绝对不能同时导通的。但高速的PWM驱动信号在达到功率元件的控制极时,往往会由于各种各样的原因产生延迟的效果,造成某个半桥元件在应该关断时没有关断,造成功率元件烧毁。死区就是在上半桥关断后,延迟一段时间再打开下半桥或在下半桥关断后,延迟一段时间再打开上半桥,从而避免功率元件烧毁。这段延迟时间就是死区。 PWM输出时的DeadZone(死区)作用是在电平翻
系列文章目录目录系列文章目录章目录目标一、认识端口文件二、使能 lv_port_indev.c 三、接口函数1.输入设备初始化四、Main函数五、过程中的疑难杂症1.内存不足2、LCD白屏五、效果总结目标在显示的基础上添加触摸输入提示:以下是本篇文章正文内容,下面案例可供参考一、认识端口文件这两个是输入设备的端口文件,这里我改过文件名(原文件名叫lv_port_indev_template) 只需要把相应的触摸屏驱动函数添加到文件里的函数里即可驱动二、使能 lv_port_indev.c 首先把文件使能 在 lv_port_indev.c的顶部(红圈),设置为#if 1三、接口函数 函数均在l
大家可以看作者的小破站教学视频(如果喜欢的话可以点个关注,给个三联!啊哈哈哈哈哈哈):【homeassistant配置MQTT集成以及传感器实体(STM32连接进入homeassistant)】最近homeassistan更新之后,传统的MQTT服务器配置是完全不适用的目前(2023.4.16)的教程都没有找到特别适用的看官方文档可以完整配置MQTT服务器,但是官方文档配置的MQTT底下的接入设备(传感器或者开关之类)的会出现配置不成功,或者显示没有启动的字眼(官方例程是不行的)所以我们采用配置时,我配置MQTT的方法以及用我添加传感器的方法才可以使用之前的大多教程: