| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 嵌入式 -> 平衡车+速度/位置pid+野火上位机移植+Freertos+cubemx(一) -> 正文阅读 |
|
[嵌入式]平衡车+速度/位置pid+野火上位机移植+Freertos+cubemx(一) |
平衡小车+野火pid上位机移植本篇博客用于记录一下自己在制作平衡小车使用和学习到的相关东西。 一.首先下载STM32CUBEMX这里就不介绍具体怎么下载的了,可以去官网下载安装包,参考相关博客。 二.配置相关单片机和相关功能1.配置时钟和debug引脚
2.开启freertos首先简单介绍一下freertos,为什么要使用freertos?作为一个优秀的实时操作系统,freertos可以将cpu的使用率大大提升,可以在规定时间内完成指定任务,可以实现在多任务中来回切换实现。如原本的延时函数,在实时操作系统中单片机可以在A的延时函数中跳转到B任务直行B任务(大大提高了CPU的利用率),可以参考B站正点原子对于freertos的详细讲解。 在左侧最下方有Middleware的选项,里面勾选freertos,选择版本CMSIS_V1(听说第二个版本目前是存在一些bug的)。 3.相关功能以及引脚的配置这里使用的相关功能有:1.TIM1 编码器模式 用于记录左轮的编码器 TIM1 编码器模式 用于记录左轮的编码器
TIM2 编码器模式 用于记录右轮的编码器同TIM1类似,不多介绍。 TIM3 PWM输出模式 用于控制电机
SPI1 用于控制OLED屏幕
接着,在GPIO选项中可以给引脚命名,并对引脚进行初始化。 USART1 串口配置
UART4 串口配置与USART1类似,不多介绍。 8个引脚用于连接矩阵键盘这里主要是配置GPIO,与前面屏幕配置类似,不再过多介绍。 4.代码生成在Project Manager中可以将代码生成。 最后点击右上角的GENERATE CODE就可以得到工程文件啦。 由于篇幅限制,下篇再介绍如何设计代码以及pid、上位机通信协议的移植以及oled屏幕使用和矩阵键盘的使用代码。 |
|
嵌入式 最新文章 |
基于高精度单片机开发红外测温仪方案 |
89C51单片机与DAC0832 |
基于51单片机宠物自动投料喂食器控制系统仿 |
《痞子衡嵌入式半月刊》 第 68 期 |
多思计组实验实验七 简单模型机实验 |
CSC7720 |
启明智显分享| ESP32学习笔记参考--PWM(脉冲 |
STM32初探 |
STM32 总结 |
【STM32】CubeMX例程四---定时器中断(附工 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/25 18:33:51- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |