MS5837-30BA压力传感器的使用

MS5837-30BA压力传感器的使用
硕士毕业设计做的是水下机器人。深度计就是测量水下机器人垂直方向位置的重要传感器。 目前,常用的航模级水下压力深度计是MS5837-30BA压力传感器,该传感器I2C接口,量程为绝压0~30Bar(0~3Mpa),内部AD分辨率达24位,传感器配上防水外壳就成为一款分辨率达2mm测量深度200米的深度传感器。此外该传感器还具有压力值温漂修正的功能,也可以作为温度计使用。 该款传感器是I2C接口的,(地址:1110110X WRIT...

STM32下位机与带ROS系统的上位机通信的学习

STM32下位机与带ROS系统的上位机通信的学习
项目使用TX2上位机与下位机STM32进行通信,故对此进行一些研究。之前也用过STM32通过串口与装有ROS的笔记进行通信,使用的是 “基于STM32的rosserial_client的节点开发”,见链接,文章中使用的是STM32F4系列的单片机,本人在F1系列中实现了,但是存在代码复杂和运行效率不高的问题。因此本次直接使用串口与TX2建立通信。 上位机(TX2)与下位机(STM32)通过串口进行通信 参考链接:https://www.ncnynl.com/...

STM32F0系列——停机模式(低功耗)

STM32F0系列——停机模式(低功耗)
这段时间正在磨一个项目,要求系统中STM32F0系列的芯片不工作时处于一个低功耗,要用几个月,所以需要研究下stm32F0的低功耗模式。 经过了解,STM32F0芯片与其他STM32F1系列一样,有休眠(Sleep)、停机(Stop)和待机(Standby)三个模式,相应的功耗如下图。可见,休眠模式由于程序和绝大部分功能还在工作,所以低功耗效果并不是很明显。停机模式和待机模式的低功耗效果拔群,故在该两种中进行取舍,待机...

STM32——获取Flash学习的空间占用

STM32——获取Flash学习的空间占用
这段时间使用STM32F103C8T6芯片做项目,要使用芯片中的Flash存储用户信息,其Flash有128K Bytes(其中64KB还是未检测,但是可用的),很大一部分用于存储程序代码以及相关的变量等,剩下的可以作为断电保存数据的存储,要知道什么位置可用,需要知道代码的所占用的空间大小。 烧写到单片机所占用的空间,可以看编译结果的中的Program Size项获取,之前对Keil编辑后的Program Size比较困惑,它们代表了些什...

Flash学习——STM32F103C8T6

Flash学习——STM32F103C8T6
前言 项目中使用了STM32F103C8T6的Flash进行数据的断电保存,所以介绍下STM32F103的Flash。将从flash的基本作用、特性、空间分析、函数与代码几个方面介绍。由于此次项目涉及的内容只是Flash中简单的一部分,故用户选择字节部分没有介绍。 作用 Flash在STM32芯片中主要用于储存程序,也可以用于存储需要断电保存的用户数据。 特性 数据可以断电保存; 可擦写 STM32官方数据提供最小的有效擦写次数是10k次...

I2C知识整理

I2C知识整理
什么是I2C? IIC (Inter-Integrated Circuit), 通常发音为: I-squared-C,是多主、多从、分组交换、单工的串行总线,通常用于处理器或微控制器与低速外围器件的短距离通信连接。这个通信协议是由(NXP半导体的前生)飞利浦公司发明,并在2006年开始,I2C协议的实施不要许可费,但仍要收取I2C从机分配地址的费用。 来自:wiki IIC的特性 仅用两线连接; 不像RS232那样有着严格的波特率要求,而是由主设备...