目录一、相关资料二、驱动代码MI_motor_dev.h头文件:MI_motor_dev.c源文件:重定义can中断回调:三、使用过程一、相关资料电机图纸、上位机、电机固件等可以找客服下载,这里给出使用说明书的分享链接(建议阅读)文档链接:https://pan.baidu.com/s/1a9X6wEsewXEyym9UU40qYw?pwd=2023 提取码:2023二、驱动代码根据文档写出电机驱动文件如下(经测试可用):MI_motor_dev.h头文件:#ifndefMI_DEV_H#defineMI_DEV_H#ifdef__cplusplusextern"C"{#endif#inclu
文章目录前言一、CubeMX配置(第十二届省赛完整版)二、代码相关定义、声明1.函数声明2.宏定义3.变量定义三、主要函数1.按键扫描2.串口接收中断、定时器中断(接收)3.数据解析4.判定数据正误5.数据更新6.结算7.Main函数四、实验结果1.数据长度有误2.数据不合法3.数据正常五、源码(转载请注明出处)总结前言相关说明:开发板:CT117E-M4(STM32G431RB蓝桥杯嵌入式比赛板)开发环境:CubeMX+Keil5涉及题目:第十二届蓝桥杯嵌入式省赛题目难点:停车管理系统逻辑编写;数据接收,解析,判定,更新。代码思路:(使用usart1时需要修改引脚为PA8PA9PA10)串口
前言 这几天突然想用ESP01的AT指令玩玩,但是那模块突然坏了。只能利用手头上的ESP8266-12F模块,来使用AT指令,因为是第一次用ESP8266-12F的AT指令,不知道它的AT指令固件有没有和版本之类的,所以就重新刷AT固件的进去,和记录下文章。准备 需要使用的工具和材料有:一块ESP8266-12F开发板、一个USB转串口模块(或带有USB接口的开发板)、一个MicroUSB数据线、AT固件、烧录工具。安信可的AT固件下载地址:AT固件地址网站下面还有几个其它固件,我还没有了解过,感兴趣的可以看一下。安信可的开发工具清单地址:烧录工具地址有一个USB-TTL工具连接电脑,和接
UNT413A_S905L3A__AI语音_默认打开ADB_完美线刷固件包【可救砖】_基于云南原机制作_端口5555固件特点:1、修改dns,三网通用;2、开放原厂固件屏蔽的市场安装和u盘安装apk;3、无开机广告,无系统更新,不在被强制升级;4、大量精简内置的没用的软件,运行速度提升30%以上,多出大量的存储空间;5、原生9.0设置,有线蓝牙语音均正常,支持多遥控;6、纯净优化,除必要系统软件无任何预装;7、超稳定,运行速度快; 准备工作1、硬件:电视盒子、USB公对公刷机线一条、刷机用Win10或Win7电脑一台、显示器、质量过关的U盘一个(8G左右容量皆可);2、工具软件:USBB
在macOS上使用esptool烧录合宙ESP32C3开发板micropython固件遇到的问题与解决办法问题原因解决办法全部操作步骤1.安装esptool2.安装CH340驱动程序3.烧录固件问题使用esptool烧录遇到报错Afatalerroroccurred:FailedtowritetotargetRAM(resultwas01070000)原因看github上的讨论,LilyGO开发板使用的FTDI芯片似乎与macOSBigSurUART驱动程序不兼容;合宙ESP32C3开发板同理;我电脑的macOSMonterey版本同理;解决办法在mac上安装这个CH340驱动程序;链接:li
目录1、简介2、CubeMX初始化配置2.1基础配置2.1.1SYS配置 2.1.2RCC配置2.2ADC外设配置2.3 串口外设配置 2.4项目生成 3、KEIL端程序整合3.1串口重映射3.2ADC数据采集3.3主函数代3.4效果展示1、简介本文通过STM32F103C8T6单片机通过HAL库方式对MQ2烟雾传感器进行数据的读取,并通过串口来进行显示。2、CubeMX初始化配置2.1基础配置2.1.1SYS配置 2.1.2RCC配置2.2ADC外设配置2.3 串口外设配置 2.4项目生成 3、KEIL端程序整合3.1串口重映射具体步骤:stm32(HAL库)使用printf函数打印到串口3
我们学习单片机一般都是从51开始的,51单片机烧录程序通常是使用烧录软件如STC-ISP。这种方式,通过串口连接单片机,选择一个合适的波特率就可以烧录了。后来学习STM32,编程时使用KEIL软件自带的下载按钮就能下载程序,方便了不少,但需要额外使用J-Link等下载器。再后来,接触到产品研发,给已经发布出的产品升级,都是要靠远程无线升级的。……ICP全称是InCircuitProgramming,即在电路中编程ICP是最早的一种程序升级方式。首先需要明确的是,单片机程序下载的本质就是将由0和1组成的hex文件写入到掉电数据不会消失的EEPROM(ElectricallyErasablePro
前言经过之前的一些学习我们已经成功地让电机成功地转了起来,但是在实际应用中这样的电机是很难满足工业上的一些需求的,因为电机在启动和停止时都很难在一瞬间达到目标速度,我们可以从波形图的角度来看,如果我们让电机从0启动然后马上到目标速度再从速度马上停止到0,这样显然是不现实的,会产生丢步的情况,因此接下来要介绍一种电机控制算法:梯形加减速(资料来自正点原子)梯形加减速原理通过前面的学习,我们知道了当定时器处于输出比较模式下时,决定脉冲频率的参数是比较值ccr(以下统称Cn),因此控制速度首先我们要能够实时改变比较值,具体来说有三个:(1)加速阶段时需要多少脉冲数?使用n1进行表示(2)减速阶段要步
让坚持成为一种热爱,极致成为一种精神。历时10个月,目前我又重新回到了程序员的身份,2023想玩不一样的嵌入式。🚀目录前言一、安装STM32CubeMX二、配置自己的HAL库MDK工程三、HAL库与固件库的区别1.句柄2.回调函数3.时钟配置4.HAL_Init()5.其他结语前言我学STM32是基于固件库的,之后的一年都是用固件库开发STM32。其实固件库还是挺好用的,很稳定,即使ST已经放弃很多年了。为什么改用HAL库?1)CubeMX+HAL库是大势所趋。2)CubeMX可以直接生成驱动代码,而且CubeMX是很好的工具,即使不用HAL库,里面的一些工具对开发也很有帮助。3)HAL库效率
该程序是纯手敲,非Cube生成!所有代码均注释。源码在文章后面获取WS2818简介Keyword:单线通讯、归零码、Reset、RGB顺序RGB一共有24bit位->相当于驱动一个灯要24bit位->驱动若干个灯要24*nbit位,通过Reset码决定数据终止(保持)24bit位应该如何发送?可见:表示低电平需要T0H和T0L的配合,其关键在于高电平的时间,图中所示T0H时间为0.85us±150nsQ:怎么控制高低电平的时间数据发送速度可达800Kbps,就是1.25us发送一位数据,因为协议有一定的兼容性,所以实际上一个位的周期在1.25us±300ns之间都能识别到,因为是us级延时,所