-
本篇文章将与大家探讨USART波特率vsSPI速率。这里提出一个问题,为什么USART的波特率是内核时钟的1/8或者1/16,而SPI最快的频率可以是内核时钟的1/2。 请大家带着这个问题来阅读本文。 串口和SPI内部时钟 在回答上面问题之前,需要先了解STM32内部时钟的概念,尤其是串口和SPI的内部时钟。 STM32里包含有系统时钟、AHB时钟和APB时钟...[详细]
-
尝试了下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驱动电机不...[详细]
-
引言近年来,随着高层建筑数量的与日俱增,电梯的需求量也在增加。现阶段我们广泛使用的电梯都是基于LED点阵列的显示系统,显示状态信息比较简单,显示方式比较单调。此外,现在的一些电梯里的广告机,虽然改善了电梯轿内的乘坐环境,良好的广告效果也给商家带来了不小的经济效益。但是这种显示装置没有和电梯控制系统融为一体,只是单纯的视频播放而已。为了使显示和电梯控制系统相融合,打造舒适的乘坐环境,针对现...[详细]
-
引言 随着“低碳出行,绿色环保”观念的深入人心,自行车成为了很重要的交通代步工具。目前市场上运营的城市公共自行车为人们出行提供了方便,但系统多为一车一桩式,容易出现“还时满车,借时空桩”的现象,尚无法由管理系统对损坏车辆进行识别。单纯线下租借不支持线上查询,使市民很难找到合适的服务点,而服务网点规划与布局需要更多详细可靠的数据支持。基于以上状况,本文提出一款基于北斗/GPS定位的城市公共自...[详细]
-
1、STM32能下载ELF格式的文件吗?答:可以。因为所谓的bin文件就是ELF文件的.text代码段和.data数据段。当然前提是下载工具能识别ELF文件格式,STM32下载ELF文件并不意味着STM32可以把ELFdownload到Flash上,而是下载工具能从ELF提取到bin文件,下载时通信链路上传输的也只有要bin文件。例如有elf文件:123456789...[详细]
-
一、环境准备硬件环境就是STM32F103C8T6核心板和DAP调试器,复杂的主要在软件部分。调试时需要让gdb链接openocd,因此需要telnet工具。Windows下直接在Windows功能里打开telentclient并重启就行1.1_软件VSCode可以使用普通版或便携版,我使用的是大佬制作的便携版:https://portapps.io/app/vscode-...[详细]
-
一、下载压缩包(已上传至群文件),在你的Arduino安装路径hardware下新建一个文件夹,起名为expressif,并将压缩包解压到文件夹里(图片中是我的路径,可以参考一下)然后进入文件夹,点击expressifarduino-esp-32-mastertools,找到get.exe并右键以管理员身份运行窗口打开后会自己关闭,然后应该会多出这三个文件夹(如果直接从git...[详细]
-
本文分别通过操作寄存器和调用库函数的方式,对比测试STM32读写IO时间。硬件环境主控芯片:STM32F103ZET6外部晶振:8MHZ系统主频:72MHZ1.操作寄存器的方式读取IO分析:在while(1)中循环翻转PA3输出电平。通过在线调试的方式,可以看出1条C语句:GPIOA-BSRR=13;//PA3输出高电平对应3条汇编指令:MOVSr0,#0x0...[详细]
-
在直流减速电机控制中,最常用的方法就是通过PWM来控制直流电机的转速。在控制小车走直线的过程中,需要两者的转速一置(如果要走得很直,还需要在短时间内保证两者的行程大致相当,这可以用PID算法来控制)。因此,在检测到两者转速不一样时,需要动态调整其中一个或两个轮子的PWM的点空比(简单点的就以一个轮为基准,调整另外一个轮子即可;如果以一个固定的标准的话,需要调整两个轮子的PWM占空比)。1...[详细]
-
具体实现功能(1)LCD1602液晶第一行显示当前的甲醛值,第二行显示当前的温度和湿度值;(2)可以设置甲醛报警值、温湿度上下限报警值;(3)当甲醛值高于设定的报警值,蜂鸣器和指示灯发出声光报警;(4)当温湿度值低于或高于设定的范围时,相应的指示灯亮,蜂鸣器报警。仿真演示视频:https://www.bilibili.com/video/BV1rwyfYXEoB/设计介绍...[详细]
-
串行RGBWS2812SK6812等相信大家都很熟悉了,你电脑里面的光污染大多来源于此,网上很多相关的资料,驱动方式多种多样,PWMSPI,甚至直接进行IO模拟来驱动。这里讨论一下,如何用一片C8T6驱动2048个灯,并且实现以下参数:驱动2048个RGB30FPS刷新速率单片机不能阻塞单片机不能爆空间先看看时序,大家应该都很熟悉了。WS2812时序0,1这里...[详细]
-
源代码:;逗比小憨憨ZHENGEQU30HFANEQU31HNOEQU32HASEQU33HSSEQU34HORG00HAJMPMAINORG03HAJMPSUB_INT0ORG30HMAIN:MOV10H,#01HMOV11H,#03HMOV12H,...[详细]
-
现行市场上的MODBUS实现都是官方标准的某种变体。不同的供应商设备之间可能无法正确的通信。我根据自己的需求用MODBUS-RTU协议写了一个通过串口通信的实现。MODBUS协议的介绍可以参考这篇https://www.bilibili.com/opus/546416352263391792串口的配置可以参考之前写的这两篇https://www.bilibili.com/op...[详细]
-
最近在一个问答社区回答了一个问题,关于单片机存储器的,于是有了想专门写一篇关于单片机存储器的想法。作为单片机内部一个重要组成部分,存储器占有很重要的地位,今天就来聊聊我对于单片机的内部存储器RAM和FLASH的一些认识和理解。1、先聊聊存储器存储器是单片机结构的重要组成部分,存储器是用来存储编译好的程序代码和数据的,有了存储器单片机系统才具有记忆功能。按照存储介质的特性,可以分“易失性存...[详细]