一直以来我都想在本科毕业前完成一个电机相关的实验,之前看了网上比较火热的自平衡莱洛三角形项目后,决心先做一个类似的小项目。因此,我通过学习大量前辈的项目案例,完成了该项目。本项目的特点是:在需要通信的部分,全部采用STM32自带的硬件接口,使用自己设计PCB,有利于后期调试和拓展。文章目录1总体设计方案1.1平衡车硬件需求2原理图和硬件选中2.1主控芯片STM322.2驱动模块TB66122.3GB520电机2.4姿态传感器MPU60502.5蓝牙模块2.60.96OLED2.7超声波模块2.8整体设计3PCB设计1总体设计方案1.1平衡车硬件需求基于STM32的平衡小车所需的硬件模块主要有九
文章目录1简介2课题背景3详细设计3.1整体设计方案3.2功能模块3.3软件设计4实现效果5部分实现代码6最后1简介Hi,大家好,今天向大家介绍一个学长做的单片机项目基于单片机的门禁系统大家可用于课程设计或毕业设计2课题背景门禁系统的基本组成主要包括身份识别、传感与报警、处理与控制、电锁与执行、管理与设置。本系统从应用角度出发,针对家庭或小型办公场所的使用需求,主要从两个方面着手优化设计:一是硬件搭建上坚持低功耗设计,加入电源管理模块供电;二是在软件实现上,尝试多种策略来提高系统的响应速度,并考虑多种情况下的报警处理,提高系统的安全性。3详细设计3.1整体设计方案学长设计的禁系统主控制芯片采用
因为本人也是新手,所以代码难免会有漏洞,还望见谅。这次的代码是依照我上一篇温湿度计改编过来的。面对新手,我尽可能的在注释中列出需要注意的东西,我不讲传感器的原理,因为我也不会,这工程完全是给萌新应急用的,我也总结了所有外设iO口的接线,方便新手快速接线。实现的效果 oled实时显示温度,湿度,光照强度,烟雾浓度,一氧化碳浓度和空气质量。(从黑夜到白天)当光照强度大于50且上一次光照强度低于50时,步进电机启动,顺时钟转动360度(模拟关闭窗帘);(从白天到黑夜)当光照强度小于50且上一次高于50时,步进电机逆时针转动360度(模拟打开窗帘)。当温度大于25时,蜂鸣器报警,提醒踢被
最近用STM32CubeMX创建了一个demo工程,在调试过程中,printf打印功能一直不能正常打印,检查工程中也已将fputc函数进行了实现。奇怪的是用JTAG进行调试时打印恢复了正常。最后发现问题的原因是没有勾选MDK使用微库的配置,使用微库的话,不会使用半主机模式。printf之类的函数,使用了半主机模式,MDK上开启半主机模式-需要SWO线(换言之,需要使用JTAG接线)当目标板脱离仿真器(jlink/ulink)单独运行时,不能使用半主机模式。半主机是ARM的一种目标机制,它使得在ARM目标上跑的代码,如果主机电脑运行了调试器,那么该代码可以使用该主机电脑的输入输出设备。这点非常重
开发环境搭建:安装Thonny代码编辑器和ESP32带有CAM的固件链接:https://pan.baidu.com/s/1NBTMvZzzF6eJse2Wsr2ykQ?pwd=1o6y 提取码:1o6y安装Thonny,教程网上一大把,基本上一路下一步即可!ESP32CAM固件烧录先点击运行,配置解释器然后如图操作,选择端口与烧录文件 然后重启Thonny即可,如果使用了下载板,把下载板卸了然后用USB转TTL连接串口!便会与Thonny连接,然后进行程序运行:ESP32CAM端程序:注意更改:wifi名称与密码,还有绑定电脑网络IP!importsocketimportnetworkimp
TDC-GP22控制的资料,网上的资源都是基于STM32或者MSP430主控的,但现在这两款芯片都太贵了,因此就想用便宜点的ESP32,折腾了快一周,终于弄好了。工程源码和参考资料在文章最后。高精度计时芯片TDC-GP22,在可编程比较器的调整范围和时间测量精度方面也有了进一步的性能改进。TDC-GP22的时间测量精度高达90ps,偏移调整范围增加到±35mV。TDC-GP22芯片采用QFN32引脚的超小型封装,工作温度范围为-40℃~+125℃。本文用的TDC-GP22模块是CJMCU-22模块,主控模块用的是ESP32-DevKitC开发板搭载WROOM-32D/U模块, ESP32和GP
目录一、GPIO外设时钟初始化二、配置GPIO2.1配置 GPIO_InitTypeDef结构体成员变量 2.2把参数写到对应寄存器2.2.1io口的配置2.2.2外部中断的配置三、相关知识分析3.1hal_gpio其他函数简单分析3.1.1HAL_GPIO_DeInit();3.1.2 HAL_GPIO_ReadPin();3.1.3 HAL_GPIO_WritePin();3.1.4 HAL_GPIO_TogglePin();3.1.5 HAL_GPIO_LockPin();3.1.6 HAL_GPIO_EXTI_IRQHandler() 3.1.7HAL_GPIO_EXTI_Ca
1.引言在使用进行STM32F407开发的时候,一般被推荐使用的是Keil。经过一整子的Keil洗礼,我真的要崩溃了,在界面、调试、代码跳转、代码格式化、开发效率等方面一直很抓狂。之前一直使用vscode开发,用着还蛮顺心,界面风格很讨人喜欢。因此,尝试在vscode上进行STM32开发。接下来主要讲述个人将Keil和vscode环境搭建问题以及一些小Tips。2.环境搭建2.1Keil环境搭建2.1.1Keil安装关于Keil程序的安装,网上已经有很多优秀的教程,此处贴出不错的博文。Keil的下载地址为https://www.keil.com/download/product/,其中会看到M
[GD32F4]基于GD32固件库移植cherryusb[STM32F4]基础环境使用开发板是淘宝买的不知名开发板,没什么好说的,具体的型号是GD32F450VET6。使用的cherryusb版本是0.9.0版本。使用的GD32官方固件库版本是:GD32F4xx_Firmware_Library_V3.0.4大神速通cherryusb最牛的地方在于抛弃掉所有的依赖,只需要知道芯片的usb中断函数名称usb外设的基地址使用的io口就行。本文实现了gd32f4模拟usbfshid设备作为鼠标。具体步骤首先准备参考cherryusb的如下教程先放松一点,别管usb,老老实实准备一个可以使用串口pri
目录模块介绍:基本部分:引脚配置:工作原理:展示部分:代码部分展示(在正点的基础上加了一个读手势去控制舵机):视频展示:模块介绍:基本部分:手势模块搭载的芯片是PAJ7620,无论是正点原子的还是别的手势模块的底层是一致的,甚至代码也是通用的。芯片内部集成了光学数组式传感器,以使复杂的手势和光标模式输出,自带九种手势识别,支持上、下、左、右、前、后、顺时针旋转、逆时针旋转和挥动的手势动作识别,有效探测距离为5-15cm;也可以检测物体的距离和大小原理图(正点的):引脚配置:VCC-GND:3.3V到5VSCL-SDA:IIC接口(额外)正点的模块是多两个个INT和NC的引脚:NT是中断引脚,N