-
众所周知STM32有5个时钟源HSI、HSE、LSI、LSE、PLL,其实他只有四个,因为从上图中可以看到PLL都是由HSI或HSE提供的。 其中,高速时钟(HSE和HSI)提供给芯片主体的主时钟.低速时钟(LSE和LSI)只是提供给芯片中的RTC(实时时钟)及独立看门狗使用,图中可以看出高速时钟也可以提供给RTC。 内部时钟是在芯片内部RC振荡器产生的,起振较快,所以时钟在芯片刚上...[详细]
-
在基础实验成功的基础上,对串口的调试方法进行实践。硬件代码顺利完成之后,对日后调试需要用到的printf重定义进行调试,固定在自己的库函数中。 b)初始化函数定义: voidUSART_Configuration(void);//定义串口初始化函数 c)初始化函数调用: voidUART_Configuration(void);//串口初始化函数调用 初始化代...[详细]
-
为了实现对家居环境安全状况实时的监控以及在发生警情时能自动拨号进行语音提示或发送报警短信,设计了一种基于GPRS的嵌入式电话报警系统。该系统以SoC(在片系统)单片机C8501F020为控制与处理核心,并利用2.4GHz数字无线传输技术连接传感器,接收传感器采集的信号,对周围环境进行监控。同时,该系统结合GPRS短信功能和固定电话网络,实现报警信息的可靠传递和远...[详细]
-
stm32直流电机驱动与测速 说实话就现在的市场应用中stm32已经占到了绝对住到的地位,51已经成为过去式,32的功能更加强大,虽然相应的难度有所增加,但是依然阻止不了大家学习32的脚步,不说大话了这些大家都懂要不然也不会学习stm32的人那么多!!! 进入我们今天的主题,今天给大家介绍的是stm32中一个很小但是比较实用的stm32直流电机驱动与测速,话不多说先给大家上一段直流电...[详细]
-
一、基本定时器介绍在STM32中,基本定时器有TIM6、TIM7等。基本定时器主要包含时基单元,提供16位的计数,能计数0~65535。基本定时器除了计数功能以外,还能输出给DAC模块一个TRGO信号。基本定时器框图如下:二、时基单元介绍STM32的所有定时器都具备时基单元,时基单元的功能就是简单的计数,即计数时钟源TMxCLK的脉冲个数,这个时钟源来至APB1总线。高...[详细]
-
一、独立看门狗 STM32的独立看门狗由内部专门的40Khz低速时钟驱动,即使主时钟发生故障,它也仍然有效。 看门狗的原理:单片机系统在外界的干扰下会出现程序跑飞的现象导致出现死循环,看门狗电路就是为了避免这种情况的发生。看门狗的作用就是在一定时间内(通过定时计数器实现)没有接收喂狗信号(表示 MCU已经挂了),便实现处理器的自动复位重启(发送复位信号)。 在键值寄...[详细]
-
首先,作为刚入行不久的新人,我在单片机开发这块并没有太多的经验,所以可能在写一些相关的文档的时候存在一些错误,希望大家多多包含!也希望各位不吝赐教,指点迷津!好记性不如烂笔头,之所以选择开通博客是因为我想把自己在工作和学习过程中碰到的一些问题以及疑惑记录下来,同时积极地定位问题的源头以及寻求解决方案,或许在碰到相同的问题时就能很快地解决。同时在博客上也可以学习到很多工程师长期积累的经验,分享自...[详细]
-
一、工作原理输入捕获是STM32单片机定时器的一项重要的功能,应用很广泛,常用于测量脉冲宽度,周期等。超声波模块测距的原理是:单片机给超声波模块(我用到的超声波模块型号是HC-SR04,下面简称HC-SR04)发送一个大于10us的高电平,触发HC-SR04发出8个40kHz的方波,并自动检测是否有信号返回,如果有信号返回,就会通过Echo对单片机输出一个高电平,高电平的持续时间就是超声波从...[详细]
-
在了解重定向之前,我们先来看看linux的文件描述符。linux文件描述符:可以理解为linux跟踪打开文件,而分配的一个数字,这个数字有点类似c语言操作文件时候的句柄,通过句柄就可以实现文件的读写操作。用户可以自定义文件描述符范围是:3-num,这个最大数字,跟用户的:ulimit–n定义数字有关系,不能超过最大值。linux启动后,会默认打开3个文件描述符,分别是:标准输入s...[详细]
-
一开始学习51单片机就是用的MDK这个IDE软件,IDE软件虽然看起来直观好像更加容易入门(因为有界面看起来很形象),但是实际上IDE却是向我们这些入门人员隐藏了背后真实存在的过程,让我们以为编译就是点一下一个按键就完成了。直到使用了大半年的STM32芯片,我觉得不能一直依赖IDE软件,所以打算试试在Linux下开发STM32,首先需要一个linux下STM32的编译器查了一下,度娘告诉我a...[详细]
-
请问我用的unodir32ESP32开发板,下载了ESP32舵机库放在了li'braries文件夹里,在ide烧录的时候说servo库与我运行的esp32开发板不兼容是怎么回事...[详细]
-
STM32简介STM32是“意法半导体”生产的基于“ARM公司Cortex-M3内核”的32位高性能MCU。ST——芯片制造商意法半导体,SOC厂商ARM——IP厂商,负责芯片内核设计的公司M——Microelectronics的缩写,指微控制器32——指它是一个32位的微控制器注意:51单片机是5V工作电压,而STM32是3.3V工作电压。STM32芯片结构,如下图所示。...[详细]
-
STM32CubeMonitor除了同样可以提供变量监测的功能,还有非常丰富的组件可以搭建各种风格的图形化界面,以及众多免费的第三方组件可以进行功能扩展。此外,STM32CubeMonito还支持远程监测功能。STM32CubeMonitor变量监测及可视化工具,支持通过ST-LINK的SWD或者JTAG接口连接到目标MCU,可以在程序全速运行不被打断的情况下,读取需要检测的变量值。非常适合那...[详细]
-
12.1关于按键前面控制LED灯是让GPIO输出高低电平,而获取按键则是读取GPIO电平,从而获知用户是否按下按键。按键监测一般有两种:按键扫描和按键中断。按键扫描是间隔很短时间反复查询GPIO状态,从而得知是否有按键动作,这种方式代码简单,但比较耗资源。按键中断而是通过按键产生中断信号,从而实现按键的检测,这种方式需要使用到中断机制,需要对MCU了解深入一点,效果是最好的。本节先介绍按...[详细]
-
Why?Rust作为一门新兴语言,其安全、可靠、运行效率高等特点让它成为一门非常适合嵌入式开发的语言。本文主要介绍如何搭建Rust嵌入式开发环境,然后使用stm32h7开发板点个灯。在嵌入式开发领域,C语言的地位是无法被撼动的(至少在2023年是这样)。用Rust开发嵌入式目前就两个目的:玩战未来:)适用对象如果你没有接触过嵌入式编程,或者完全不懂gcc系列的开源工...[详细]