草庐IT

STM32 学习————串口通信

一、串口介绍众所周知,串口通信是MCU最基本的通信方式,对于STM32来说也是如此。本文重点讲述STM32单片机的串口通信,主要包括的内容是:通信基础知识、串口通信原理、USART有关寄存器和自定义编写串口通信函数。1.处理器与外部设备通信的两种方式通信目的:的将一个设备数据传送到另一个设备,扩展硬件系统。通信协议:制定通信规则,通信双方按照协议规则进行数据收发。并行通信:  -⤴️传输原理:数据各个位同时传输。  -⤴️优点:速度快  -⤴️缺点:占用引脚资源多    4.串行通信: -⤴️传输原理:数据按位顺序传输。  -⤴️优点:占用引脚资源少  -⤴️缺点:速度相对较慢2.串行通信的分

STM32 CAN使用记录:FDCAN基础通讯

文章目录目的基础说明关键配置与代码轮询方式中断方式收发测试示例链接总结目的CAN是非常常用的一种数据总线,被广泛用在各种车辆系统中。这篇文章将对STM32中FDCAN的使用做个示例。CAN的一些基础介绍与使用可以参考下面文章:《CAN基础概念》https://blog.csdn.net/Naisu_kun/article/details/132814079《STM32CAN使用记录:bxCAN基础通讯》https://blog.csdn.net/Naisu_kun/article/details/132830073本文使用STM32H750作为主控芯片,PD0设置为FDCAN1_RX、PD1设

物联网项目分享 基于Stm32的家庭智能监控系统 - 单片机 图像识别 人体检测 AI

0前言🔥这两年开始毕业设计和毕业答辩的要求和难度不断提升,传统的毕设题目缺少创新和亮点,往往达不到毕业答辩的要求,这两年不断有学弟学妹告诉学长自己做的项目系统达不到老师的要求。为了大家能够顺利以及最少的精力通过毕设,学长分享优质毕业设计项目,今天要分享的是🚩基于Stm32的家庭智能监控系统🥇学长这里给一个题目综合评分(每项满分5分)难度系数:3分工作量:4分创新点:4分1简介结合低功耗AI芯片以及移动网络,将人员/物体检测模型部署到设备端,达到较低功耗、实时响应、节省流量的效果。2主要器件主控芯片使用勘智K210摄像头OV7740数据传输使用4G模块EC20或者2G模块SIM800C;3实现效

STM32CubeMX教程18 DAC - DMA输出自定义波形

1、准备材料开发板(正点原子stm32f407探索者开发板V2.4)STM32CubeMX软件(Version6.10.0)野火DAP仿真器keilµVision5IDE(MDK-Arm)ST-LINK/V2驱动一台示波器逻辑分析仪nanoDLA2、实验目标使用STM32CubeMX软件配置STM32F407开发板的DACOUT1实现输出0-3.3V周期为12.8ms的正弦波形3、实验流程3.0、前提知识由于STM32F407的两个DAC输出通道只能自动生成三角波和噪声波,因此如果想要输出其他的波形可以自己手动定义一个周期内DAC要输出的值,并选择定时器的更新事件作为DAC输出的触发源按顺序输

STM32CubeMX教程18 DAC - DMA输出自定义波形

1、准备材料开发板(正点原子stm32f407探索者开发板V2.4)STM32CubeMX软件(Version6.10.0)野火DAP仿真器keilµVision5IDE(MDK-Arm)ST-LINK/V2驱动一台示波器逻辑分析仪nanoDLA2、实验目标使用STM32CubeMX软件配置STM32F407开发板的DACOUT1实现输出0-3.3V周期为12.8ms的正弦波形3、实验流程3.0、前提知识由于STM32F407的两个DAC输出通道只能自动生成三角波和噪声波,因此如果想要输出其他的波形可以自己手动定义一个周期内DAC要输出的值,并选择定时器的更新事件作为DAC输出的触发源按顺序输

STM32-窗口看门狗WWDG剖析与实例

窗口看门狗窗口看门狗WWDG简介        窗口看门狗(WWDG)通常被用来监测由外部干扰或不可预见的逻辑条件造成的应用程序背离正常的运行序列而产生的软件故障。除非递减计数器的值在T6位(WWDG->CR的第六位)变成0前被刷新,看门狗电路在达到预置的时间周期时,会产生一个MCU复位。在递减计数器达到窗口配置寄存器(WWDG->CFR)数值之前,如果7位的递减计数器数值(在控制寄存器中)被刷新,那么也将产生一个MCU复位。WWDG的特性可配置的时间窗,用来检测应用程序非预期中的运行流程(过早或过晚)看门狗复位条件计数器值=0x40产生早期唤醒中断(EWI)WWDG的特性①使能了看门狗

STM32:基本定时器原理和定时程序

一、初识定时器TIM    定时器就是计数器,定时器的作用就是设置一个时间,然后时间到后就会通过中断等方式通知STM32执行某些程序。定时器除了可以实现普通的定时功能,还可以实现捕获脉冲宽度,计算PWM占空比,输出PWM波形,编码器计数等。STM32共11个定时器,2个高级控制定时器TIM1和TIM8,4个通用定时器TIM2~TIM5,两个基本定时器TIM6和TIM7,两个看门狗定时器和一个系统滴答定时器Systick.高级定时器TIM1和TIM8的时钟由APB1产生,其它六个通用定时器的时钟由APB2产生。它们的最大频率都可以配置成系统时钟的频率。定时器种类位数计数模式捕获/比较通道应用场景

帮公司面试一个32岁的程序员,只因一个细节,被我一眼看穿是培训班出来的,工作经验也是假的...

 首先,我说一句:培训出来的,优秀学员大有人在,我不希望因为带着培训的标签而无法达到用人单位和候选人的双向匹配,是非常遗憾的事情。最近,在网上看到这样一个留言,引发了程序员这个圈子不少的轰动。“帮公司面试了一个32岁的程序员,只因这一个细节,被我一眼看穿是培训班出来的,没啥工作经验...”培训出来的程序员总被误伤不知道从什么时候开始,大家是越来越看不上培训出来的程序员了,主要是嫌弃他们:基础不行、学历低、水平不行、学习能力弱、简历造假。有些培训机构出来的程序员确实有问题,但是不能因为“只是很多表现不好的程序员恰好都有过培训经历”,就一棍子打死所有培训出来的程序员。其实在很多软件、互联网公司里都

STM32基本定时器

STM32基本定时器1.时基单元计数寄存器(TIMx_CNT)计数器从0累加计数到自动重装载数值(TIMx_ARR寄存器),然后重新从0开始计数并产生一个计数器溢出事件。预分频寄存器(TIMx_PSC)它也有缓存,也是在更新事件产生时刷新缓存。自动重装载寄存器(TIMx_ARR)设置此值。计数器达到这个值,溢出。可以给此值设置缓存,这个缓存被称为影子寄存器。当TIMx_CR1的ARPE位为1时,表示有缓存;否则没有。有缓存时:更新缓存的时机是更新事件(计数器溢出或者TIMx_EGR寄存器的UG位为1)产生时。所以缓存有时不是实时的值。2.时序中的一些概念CK_PSC:预分频寄存器的时钟,也就是

【正点原子STM32连载】 第四十九章 SD卡实验 摘自【正点原子】STM32F103 战舰开发指南V1.2

1)实验平台:正点原子stm32f103战舰开发板V42)平台购买地址:https://detail.tmall.com/item.htm?id=6092947574203)全套实验源码+手册+视频下载地址:http://www.openedv.com/thread-340252-1-1.html#第四十九章SD卡实验很多单片机系统都需要大容量存储设备,以存储数据。目前常用的有U盘,FLASH芯片,SD卡等。他们各有优点,综合比较,最适合单片机系统的莫过于SD卡了,它不仅容量可以做到很大(32GB以上),支持SPI/SDIO驱动,而且有多种体积的尺寸可供选择(标准的SD卡尺寸及MicorSD卡