-
在使用串口接受字符串时,可以使用空闲中断(IDLEIE置1,即可使能空闲中断),这样在接收完一个字符串,进入空闲状态时(IDLE置1)便会激发一个空闲中断。在中断处理函数,我们可以解析这个字符串。需要注意的是,IDLE标志位需要软件清零,否则由于会不断进入中断,而使正常程序无法运行。当再次收到数据时(即RXNE再次置1),等到空闲便会重新进入中断。在STM32F4中,IDLE标志位清零的...[详细]
-
尝试了下STM32的ADC采样,并利用DMA实现采样数据的直接搬运存储,这样就不用CPU去参与操作了。找了不少例子参考,ADC和DMA的设置了解了个大概,并直接利用开发板来做一些实验来验证相关的操作,保证自己对各部分设置的理解。我这里用了3路的ADC通道,1路外部变阻器输入,另外两路是内部的温度采样和Vrefint,这样就能组成连续的采样,来测试多通道ADC自动扫描了,ADC分规则转换和注入...[详细]
-
通过实验发现,定时器的一个通道控制一个pwm信号。 在正式开始之前也可以参考这个视频学习资料 (stm32直流电机驱动) http://www.makeru.com.cn/live/1392_1218.html?s=45051 超声波雷达测距仪 http://www.makeru.com.cn/live/15971_2626.html?s=45051 PWM驱动电机不...[详细]
-
作为一名程序员,在初步学习编程想必都绕不开一个最为基础的入门级示例“HelloWorld”,那么,在学习单片机时,最基础的入门示例是什么呢?没错,那就是“点亮一盏LED灯”本次将通过一个经典的跑马灯程序,带大家开启STM32F4之旅,通过本次的学习,你将了解到STM32F4的IO口作为输出使用的方法。我们将通过代码控制STM32F4开发板上的两个LED:DS0和DS1...[详细]
-
问题描述:最近在学STM32的HAL库,据说可以统一STM32江湖,前途无量。最近一段时间参照STM32CubeMX和原子的资料自己学着建了两个HAL库的工程模板,F4的还好说,F1的出现了一个玄学问题:芯片为STM32F103C8T6,下进HAL库编写的工程后J-Link就识别不到芯片了,下载也是,只有J-Link读取时按住复位才可以。更神奇的是用标准库的代码却没问题,具体表象就是下进标准库...[详细]
-
1硬件电路配置这里还是借用前面LED电路我就不贴图片。2时钟说明SysTick和HCK的时钟频率是一样的库函数代码如下/***@briefInitializeandstarttheSysTickcounteranditsinterrupt.**@paramticksnumberofticksbetweentwointerrupts*@return1=failed,0=su...[详细]
-
在直流减速电机控制中,最常用的方法就是通过PWM来控制直流电机的转速。在控制小车走直线的过程中,需要两者的转速一置(如果要走得很直,还需要在短时间内保证两者的行程大致相当,这可以用PID算法来控制)。因此,在检测到两者转速不一样时,需要动态调整其中一个或两个轮子的PWM的点空比(简单点的就以一个轮为基准,调整另外一个轮子即可;如果以一个固定的标准的话,需要调整两个轮子的PWM占空比)。1...[详细]
-
摘要:在看别人单片机程序时,你也许是崩溃的,因为全局变量满天飞,不知道哪个在哪用了,哪个表示什么,而且编写极其不规范。自己写单片机程序时,也许你也是崩溃的。总感觉重新开启一个项目,之前的写过相似的代码也无法使用,得重新敲,代码重用度不高,编程效率低下,代码无法积累。而且感觉写这个代码没有思想,没有灵魂,没有框架,只是一个一个功能代码的堆砌,很空泛。那么这个时候,你也许应该在单片机中引入...[详细]
-
前言本文主要介绍STM32多种的内部Flash读写方式和读写长文件的功能函数怎样编写。阅读完本文可以使你能够正常的完成Flash读写操作。介绍STM32FLASH不同型号的STM32,其FLASH容量也有所不同,最小的只有16K字节,最大的则达到了1024K字节。本次实验选用的STM32开发板是F103ZET6,其FLASH容量为512K字节,属于大容量产品(...[详细]
-
本次的预览版本让您能够探索全新HAL2,并深入了解我们在简化开发流程、优化开发体验方面所做的改进。我们强烈建议您通过专用渠道分享反馈。您的意见至关重要,将帮助我们在HAL2正式发布前持续完善,确保其满足您的需求。如何获取预览版本面向STM32U5系列的STM32CubeHAL2预览版已在GitHub代码库STM32CubeU5-V2-Preview中开放。更新后的HAL...[详细]
-
YMode协议说明YModem协议是由XModem协议演变而来的,每包数据可以达到1024字节,是一个非常高效的文件传输协议。我们平常所说的Ymodem协议是指的Ymodem-1K,除此还有Ymodem-g(没有CRC校验,不常用)。YModem-1K协议用1024字节数据帧传输取代了标准的128字节数据帧传输,发送的数据会使用CRC校验,保证数据传输的正确...[详细]
-
1.基本介绍IIC(II(Inter-IntegratedCircuit,I²C))是一种广泛使用的同步、半双工、串行通信协议,由飞利浦公司开发,主要特点是短距离,低速设备见得通信。支持多主多从架构,通过地址机制管理设备。串行:双向数据串行发送,SDA同步步:有共享的时钟信号,SCL半双工:支持两台设备和多台设备之间的相互通讯,不支持同时收发数据SDA:双向传输数据线SCL:产...[详细]
-
#include"reg51.h"unsignedcharcount;//0.5ms次数标识sbitpwm=P2^0;//PWM信号输出sbitjia=P2^1;//角度增加按键检测IO口sbitjan=P2^2;//角度减少按键检测IO口unsignedcharjd;//角度标识voidd...[详细]
-
导读C语言是单片机开发中的必备基础知识。我们这里就列举部分STM32学习中会遇见的C语言基础知识点1.位操作下面我们先讲解几种位操作符,然后讲解位操作使用技巧。C语言支持如下6中位操作:(图1:六种位操作)下面我们想着重讲解位操作在单片机开发中的一些实用技巧。1,在不改变其他位的值的状况下,对某几个位进行设值。这个场景在单片...[详细]
-
政府说,在这个变化万千的多元时代,一个娃怎么够?ST果断积极响应政府鼓励生二胎政策,继STM32F7,ST强势推出了400MHz基于Cortex-M7的微处理器STM32H7,它的一系列配置也是直接面向物联网时代的应用设计需求,可谓为物联网而生。那么,一起看看ST为他们的新娃STM32H7做了哪些的赶时代潮流的装备。基础指标:首款采用40nm嵌入式闪存技术,CoreMas...[详细]