
简介
该用户还未填写简介
擅长的技术栈
可提供的服务
暂无可提供的服务
vscode + MinGW + cmake环境踩坑
NAME:参数模型的名称WIDTH:宽度,即CRC比特数POLY:多项式的简写,以16进制表示,省略最高位的1INIT:CRC初始值,REFIN:true/false,表示原始数据是否进行翻转REFOUT:true/false,计算之后,异或输出之前,整个数据是否按位翻转。XOROUT:计算结果与次之异或后得到最终的CRC值CRC算法名称多项式公式宽度多项式初始值结果异或值输入反转输出反转CRC-

一、认识PID在学习PID的时候,会猛然接触到很多概念,导致对PID认识不清。刚学习PID时会一下接触到PID、数字PID、增量式PID和位置式PID等概念,让人感觉到PID很复杂,但其实本质上PID的公式就只有一个,其他只是为了不同场合应用的变式,其本质还是一样的。原始PID公式:u(t)=KP(e(t)+1TI∫e(t)dt+TDde(t)dt)u(t)=K_P(e(t)+\frac{...
相信大家在看到这篇文章的时候一定对WS2812芯片的时序有了一定的了解,这里对于WS2812硬件通信方面就不做过多的介绍了。驱动WS2812需要的实现纳秒级别的电平翻转,像一般主频较低的MCU很难实现这种级别的电平翻转。我在这里使用的MCU是STM32F103系列主频为72M,恰好可以通过延时翻转高低电平模拟WS2812的通信时序进而实现对WS2812灯珠的驱动。STM32通过普通..
MAX6675 进行热电偶冷端补偿和数字化 K 型热电偶信号。输出 12 位分辨率、 SPI 兼容、只读的数据。转换器的精度为 0.25℃,最高可读+1024℃,如果使用数据的 8LSB 则温度范围为 0℃到+700℃。 MAX6675模块的原理图:从网上看到max6675模块并不便宜,正好手头又有MAX6675的芯片于是自己便根据原理图在洞洞板上搭建了一个测试模块 ...
深入Marlin固件(更新中。。。)前言Marlin是一款开源3D打印机固件,相信自己DIY过打印机的人对这个固件都不会陌生吧!目前市面上的桌面级3D打印机也都或多或少会有他的影子。Marlin的强大之处在于支持多种不同结构的3D打印机(如:xyz直角结构,coreXY、SCARA、三角洲等结构),支持多种硬件电路板,支持多种语言还附加了一些额外功能,如:自动调平等。正是这些强大的功能让Mar..
I2C学习笔记文章目录I2C学习笔记一、学习《I2C总线规范》I2C总线特征:重要知识点数据传输二、实现软件I2C实现1. 预处理2. `i2c_init()`3. `i2c_start()`4.`i2c_stop()``5.i2c_ack() i2c_nack()`6. `i2c_waitACK()`7.`i2c_writeByte()`8.`i2c_readByte()`测试总结一、学习《I2
用STM32单片机成功驱动一个超声波模块后,接下来便有了疑问如何用stm32单片机驱动多个超声波模块呢?(驱动一个超声波模块可以参考:stm32驱动超声波模块测距)超声波模块型号为HC-SR04,模块驱动方式选择利用外部中断的方式驱动(具体细节可参见上面链接)。经过一个下午的思考实验发现了两种驱动多个超声波模块的方法:分时测量同时测量1.分时测量:通过类似于实现流水灯的方法,多个超...
WS2812灯珠(三)-- STM32 PWM+DMA方式驱动文章目录WS2812灯珠(三)-- STM32 PWM+DMA方式驱动一、理论二、代码实践一、理论PWM输出就是对外输出脉宽(即占空比)可调的方波信号,信号频率由自动重装载寄存器ARR的值决定,占空比由比较寄存器CCR的值决定。由WS2812规格书可知:WS2812灯珠的通信速度为800Kbit/s。数据传输时间(T...
前言最初参考网上资料移植了一份基于串口的STM32通过rosserial和ROS系统通信的代码。对于小数据量格式的消息,可以正常通信,但消息量一大便会出错(如:发布ROS提供的odom和imu格式的消息)。网上还有另一种建立单片机和ROS系统的通信方式,https://blog.csdn.net/xiaoyuanwuhui/article/details/103203465这里的第二点有介绍,这.







