在编程中经常需要精确的延时,或者需要精确的统计一段代码的执行时间,亦或者是需要精确的保证某段代码被调用的频率。比如需要统计某个函数的执行时间,从而判断开销,又比如在飞控中需要精确的保证每隔 2m 调用一次读取传感器的函数,可以使用定时器去实现。在 STM32 平台上,我们可以充分的利用 systick 去实现。
在线曲线拟合网站集合
DRV8825电机驱动模块引脚图
Allegro设置十字大光标
在运用Alllegro设计PCB时,把鼠标设置成大十字光标,在布局摆放元器件时,器件很方便对齐。在Allegro中,如何通过设置实现大十字光标呢?其具体设置方法如下:
1、打开Setup菜单栏下的User Preferences选项,如下图:
Allegro将元器件移动到相对位置
如果我们想要移动器件相对现在的位置向右移动5个单位,我们可以按照下面操作:
① allegro pcb中先执行移动命令
② 选中要移动的器件
③ 命令栏输入ix 5命令,然后回车
如果向左移动5个单位,那输入ix -5 ,记住 ix 后有个空格,allegro pcb中如果上下移动相对位置使用iy命令,向上移动10个单位就输入 iy 10,然后回车。
[ESP32]外部中断
开启外部中断
attachInterrupt(pin,function,mode);
参数:
- pin: 外部中断引脚
- function : 外部中断回调函数
- mode : 5种外部中断模式, 见下表:
中断触发模式 | 说明 |
---|---|
RISING | 上升沿触发 |
FALLING | 下降沿触发 |
CHANGE | 电平变化触发 |
ONLOW | 低电平触发 |
ONHIGH | 高电平触发 |
1 | void func1() |
关闭引脚中断
detchInterrupt(pin);
无返回值
[ESP32]霍尔传感器
[ESP32]电容按键
电容输入 touchRead(pin) 及电容输入中断touchAttachInterrupt(pin, TSR , threshold)
ESP32专门提供了电容触摸传感器的功能, 共有T0,T2~T9 共 9个touch传感器可用.分别对应引脚4、2、15、13、12、14、27、33、32. 无需设置PinMode
首先看一下触摸按键的原理,如下图:
通过Docker安装部署Mosquitto服务器
MQTT 介绍
MQTT 是一个基于客户端-服务器的消息发布/订阅传输协议。MQTT 协议是轻量、简单、开放和易于实现的,这些特点使它适用范围非常广泛:
在很多情况下,包括受限的环境中,如:机器与机器(M2M)通信和物联网(IoT)。
其在,通过卫星链路通信传感器、偶尔拨号的医疗设备、智能家居、及一些小型化设备中已广泛使用。
Mosquitto 介绍
Mosquitto 是一款实现了消息推送协议 MQTT v3.1 的开源消息代理软件,提供轻量级的,支持可发布/可订阅的的消息推送模式,使设备对设备之间的短消息通信变得简单,比如现在应用广泛的低功耗传感器,手机、嵌入式计算机、微型控制器等移动设备。