-
众所周知STM32有5个时钟源HSI、HSE、LSI、LSE、PLL,其实他只有四个,因为从上图中可以看到PLL都是由HSI或HSE提供的。 其中,高速时钟(HSE和HSI)提供给芯片主体的主时钟.低速时钟(LSE和LSI)只是提供给芯片中的RTC(实时时钟)及独立看门狗使用,图中可以看出高速时钟也可以提供给RTC。 内部时钟是在芯片内部RC振荡器产生的,起振较快,所以时钟在芯片刚上...[详细]
-
stm32直流电机驱动与测速 说实话就现在的市场应用中stm32已经占到了绝对住到的地位,51已经成为过去式,32的功能更加强大,虽然相应的难度有所增加,但是依然阻止不了大家学习32的脚步,不说大话了这些大家都懂要不然也不会学习stm32的人那么多!!! 进入我们今天的主题,今天给大家介绍的是stm32中一个很小但是比较实用的stm32直流电机驱动与测速,话不多说先给大家上一段直流电...[详细]
-
首先,作为刚入行不久的新人,我在单片机开发这块并没有太多的经验,所以可能在写一些相关的文档的时候存在一些错误,希望大家多多包含!也希望各位不吝赐教,指点迷津!好记性不如烂笔头,之所以选择开通博客是因为我想把自己在工作和学习过程中碰到的一些问题以及疑惑记录下来,同时积极地定位问题的源头以及寻求解决方案,或许在碰到相同的问题时就能很快地解决。同时在博客上也可以学习到很多工程师长期积累的经验,分享自...[详细]
-
最近做的项目,遇到问题以及解决方法1、jlink总是下载失败,PC可以识别,但是keil不识别解决办法:将工程中的和jlink相关的文件删掉,keil魔术棒中set键,弹出框,重新选择芯片型号,还有的时候是没有上电(囧)2、stm32f407改为stm32f401步骤(1)改启动文件,将工程中的启动文件.s文件修改,点击魔术棒--C/C++--Define中对应修改名称(将STM32F4...[详细]
-
gcc重定向printf和keil不一样。文件准备先从以前的工程中拷过一份串口的代码来,然后在main函数中初始化串口并print一个数据吧。新添加的文件需要添加到Markfile文件中,否则编译肯定会报错的。同时为了vscode不报错也把include路径在c_cpp_properties.json中放一份。.h文件路径-Makefile...[详细]
-
前言:1.要想学习STM32中断,要先掌握STM32对优先级的定义;2.有51单片机开发经验会比较容易理解中断优先级;3.本篇博文基于STM32F103ZET6芯片和3.5.0标准库编写;4.本篇博文从寄存器入手,最终实现编程的步骤;一基础知识1.cortex-m3支持256个中断,其中包含了16个内核中断,240个外部中断。(本博文只介绍60个外部可屏蔽中断)2.STM...[详细]
-
cortex-m3支持256个中端,其中包含了16个内核中断,240个外部中断。STM32只有84个中断,包括16个内核中断和68个可屏蔽中断。stm32f103上只有60个中断,f107上才有68个中断。中断是STM32很基础的一个功能,学会使用中断,才可以更好的使用其他的外设。理解STM32的中断,必须要先从STM32的中断优先级分组是怎么回事。要理解优先级分组,就要先理解什么是先占优...[详细]
-
首先,要包含头文件“stdio.h”第二:printf()函数使用了intfputc(intch,FILE*f)完成其功能。要使用printf,就需要重写这个函数。第三,在工程选项的Target里边勾选USEMicroLIB项。fputc示例如下:intfputc(intch,FILE*f){/*Placeyourimplementationof...[详细]
-
源代码:;逗比小憨憨ZHENGEQU30HFANEQU31HNOEQU32HASEQU33HSSEQU34HORG00HAJMPMAINORG03HAJMPSUB_INT0ORG30HMAIN:MOV10H,#01HMOV11H,#03HMOV12H,...[详细]
-
前言前几天改造Skye无人机(Skye无人机刷betaflight详细图文教程),对betaflight开源飞控有了一定的了解,产生了自制飞控板的念头,网上一番查资料发现可行,现把制作过程记录如下。1.材料清单CH340串口下载模块1个(2.5元)STM32F103C8T6黑色开发板1个(11.5元)GY-521加速度计模块1个(3.8元)ams1117-3.3电压转...[详细]
-
我们在玩游戏时,通常运行质量高的、画质高、体验感好的游戏时,CPU的风扇会转得非常的快,这是因为CPU处在100%运行的状态。那我们单片机在正常工作的时候,它里面的大部分功能都处于开启状态。最耗电的ARM内核处在100%全速运行状态。而平时CPU只有5%左右的工作量,可是单片机的内核却一直处在全速的状态,为什么我们没有感觉到有特别的变化呢?是因为单片机的性能远低于PC,产生的热量...[详细]
-
使用stm32CubeIDE优化等级的坑是踩了又踩,建议就是优化等级最低。牺牲点大小与速度可以避免很多奇奇怪怪的问题。优化等级可能出现的问题:问题1:打断点调试时该行被优化无法暂停直接跳过。(这个算正常没有逻辑错误)问题2:true为大于0真值if(true){语句一;}else{语句二;}程序运行到if处,语句一、二都不执行。问题3:true为大于0真值if(...[详细]
-
15.1关于串口15.1.1串口理论知识说到串口,经常提到TTL、RS232、RS422、RS485,简单的说,就是为了适应不同的环境条件,使用了不同的电平标准。假如微处理器和板载的蓝牙透传模块通信时,一般就使用TTL电平,引脚直接连接即可。假如微处理器在工业现场,需要连接一个几十米外的装置,则应该考虑将TTL电平转为RS232、RS422、RS485。图15.1.1...[详细]
-
如学习编程的入门课HelloWorld!一样,我们嵌入式的第一节课便是IO端口电平控制,点亮一个LED灯。网上各种STM32开发板,同学们可以买一个来学习,手上没有开发板又想马上试试的同学可以试试用multisim或者Proteus软件去仿真,将我们写好的程序下载进去,但是建议有块自己的开发板哦!到这里我的视频都有讲,建议同学们先把软件入门的视频看了https://www.bilibi...[详细]
-
套件概述STM32C011F4Px_STSPIN220是一款基于STM32C011F4Px的低压步进电机驱动套件。其中,STSPIN220是一款步进电机驱动器,在一个小型VFQFPN3x3x1.0mm封装中集成了控制逻辑和低RDS(开启)功率级。该套件提供一整套保护功能,包括过电流、过热和短路保护,并且可以强制进入零消耗状态,从而显著延长电池寿命。最近在弄ST的课程...[详细]