系列文章链接HC-SR04超声波模块的使用 编码电机以及双电机驱动4针0.96'OLED的使用更多有意思的文章点击“我的主页”--------😐更多有意思的视频----->B站@想要亿只独角兽--------😐 前言之前发布了一篇硬件I2C的0.96'OLED驱动代码,这次就添加一篇硬件SPI的驱动代码。其实改动的代码不多,对下面两个写命令和写数据的函数稍加改动即可。 voidOLED_WR_DATA(uint8_tdata) 和 voidOLED_WR_CMD(uint8_tcmd)目录系列文章链接 前言一、OLED驱动的基本功能二、CubeMX中的设置2.1. 配置时钟树2.2. 配置硬件
文章目录前言一、阻塞发送函数:HAL_UART_Transmit1、函数原型:2、Timeout的意义3、注意的问题二、串口扫描接收:HAL_UART_Receive三、中断发送函数:HAL_UART_Transmit四、串口中断接收:HAL_UART_Receive_IT五、串口DMA接收数据1、cubemx配置2、程序配置六、串口DMA发送总结需要注意的点前言串口的发送包括:阻塞式的发送中断发送DMA发送串口的接收包括:扫描接收中断接收DMA接收一、阻塞发送函数:HAL_UART_Transmit1、函数原型:HAL_StatusTypeDefHAL_UART_Transmit(UART_
目录前言:IIC协议简介:1、起始信号和停止信号:2、应答信号:3、读写字节:AT24C02:字节写操作:页写操作:读操作:MCP4017:写操作:读操作:前言: 本篇文章主要介绍IIC通信协议,同时给大家介绍一下蓝桥杯嵌入式的模块的AT24C02和MCP4017,此外本篇博客会采用按键控制PB14来读取可编程电阻MCP分的电压值,并将电压值存储在AT24C02中。IIC协议简介: I2C(IIC,Inter-IntegratedCircuit),一种半双工通信协议,采用两线式串行总线,它是由数据线SDA和时钟SCL构成的串行总线,可发送和接收数据,这两条线必须通过上拉电阻
目录前言:IIC协议简介:1、起始信号和停止信号:2、应答信号:3、读写字节:AT24C02:字节写操作:页写操作:读操作:MCP4017:写操作:读操作:前言: 本篇文章主要介绍IIC通信协议,同时给大家介绍一下蓝桥杯嵌入式的模块的AT24C02和MCP4017,此外本篇博客会采用按键控制PB14来读取可编程电阻MCP分的电压值,并将电压值存储在AT24C02中。IIC协议简介: I2C(IIC,Inter-IntegratedCircuit),一种半双工通信协议,采用两线式串行总线,它是由数据线SDA和时钟SCL构成的串行总线,可发送和接收数据,这两条线必须通过上拉电阻
一、杂谈拖了好久才来更文章….是因为一直比较忙,哈哈。工程在文末今年呢,是第二次参加智能汽车校赛,本来也是参加了飞卡的,但是因为某些原因(包括个人的也有包括组队的一些其实现在看来也就那样的问题)我退出了,说有遗憾那必然是有的,因为毕竟哪个工科男生没有一个做车车的想法呢,但不后悔,因为有了更多时间去做其它也想做的事情。所以这个智能车校赛就当作过过车瘾了。说一下大致的情况吧,我写程序调车,另一个同伴搭车做硬件,我们是高年级组了要求的是做三轮车,去年也参加了做的四轮车,去年调了一个月接近,也是我一个人调的程序,最后拿了三等奖。其实三轮车和四轮车区别不大,无非就改改代码控制而已。今年的三轮车组别,我调
一、杂谈拖了好久才来更文章….是因为一直比较忙,哈哈。工程在文末今年呢,是第二次参加智能汽车校赛,本来也是参加了飞卡的,但是因为某些原因(包括个人的也有包括组队的一些其实现在看来也就那样的问题)我退出了,说有遗憾那必然是有的,因为毕竟哪个工科男生没有一个做车车的想法呢,但不后悔,因为有了更多时间去做其它也想做的事情。所以这个智能车校赛就当作过过车瘾了。说一下大致的情况吧,我写程序调车,另一个同伴搭车做硬件,我们是高年级组了要求的是做三轮车,去年也参加了做的四轮车,去年调了一个月接近,也是我一个人调的程序,最后拿了三等奖。其实三轮车和四轮车区别不大,无非就改改代码控制而已。今年的三轮车组别,我调
记录一下今天参考别人的代码实现了四个电机的测速。 编码器被广泛应用于电机测速,实现电机闭环控制。所以不论是自己做小车还是后续参加各种比赛,必须要学会编码器测速。一.参数 编码电机其实就是一个带有编码器的电机,我的这个电机是一个带霍尔传感器的电机,型号是JGB37-520,然后我的电机减速比是30(一定要记住,买的时候也要看清电机减速比是多少,涉及到转速的计算),额定电压12V,然后就是编码器的参数了,见下图电机驱动模块我用的TB6612的四路的板子,就是下面这款,很好用,就是稍微有点贵。二.常用测速方法主要分为M法、T法和M/T法,详情见这篇文章STM32CubeMax编码
最近在学习王维波老师的《STM32Cube高效开发教程》,王老师移植的是普中科技的驱动,而我手动移植了一下正点原子的lcd驱动,看了网上的诸多教程,有的博客存在一些bug,于是乎手动整理了一下,带来了移植驱动的全过程和问题解答。希望对即将入门嵌入式的小伙伴有一点帮助。准备环节:正点原子的官方例程(精英板和mini板两者驱动有些许区别,我们用精英板)、CubeIDE开发环境。CubeMX配置:第一步:打开CubeIDE,新建项目,选择单片机型号以及项目名称。第二步:CubeMX初始化RCC、SYS相关 第三步:分配时钟树,勾选生成.c/.h代码 第四步:FSMC的配置在左侧的Connectiv
最近在学习王维波老师的《STM32Cube高效开发教程》,王老师移植的是普中科技的驱动,而我手动移植了一下正点原子的lcd驱动,看了网上的诸多教程,有的博客存在一些bug,于是乎手动整理了一下,带来了移植驱动的全过程和问题解答。希望对即将入门嵌入式的小伙伴有一点帮助。准备环节:正点原子的官方例程(精英板和mini板两者驱动有些许区别,我们用精英板)、CubeIDE开发环境。CubeMX配置:第一步:打开CubeIDE,新建项目,选择单片机型号以及项目名称。第二步:CubeMX初始化RCC、SYS相关 第三步:分配时钟树,勾选生成.c/.h代码 第四步:FSMC的配置在左侧的Connectiv
stm32(HAL)库编码器电机pid代码及利用VOFA+对Pid波形显示调参基本介绍PID控制是一种经典的反馈控制算法,它通过不断地调整输出来使系统的实际值与设定值尽量接近,并保持在设定值附近。PID控制器由三个部分组成:比例§、积分(I)和微分(D)。比例作用(P):比例作用通过测量实际值与设定值之间的偏差,乘以一个比例系数来产生输出。输出与偏差成正比,用来调整系统的响应速度和稳定性。较大的比例系数会增加系统的灵敏度,但可能导致过渡振荡。积分作用(I):积分作用通过将偏差的累积值乘以一个积分系数来产生输出。积分作用能够消除系统的静差,提高系统的稳定性和响应速度。然而,过大的积分系数可能导致