当前位置: 首页 > article >正文

基于STM32HAL库的平衡小车设计(二)--CubeMX配置说明

项目开源链接本项目资料完全开源。资料包获取方式github https://github.com/snqx-lqh/ProjectReleasePagegitee(国内镜像)https://gitee.com/snqx-lqh/ProjectOpenSourceReleasePage。项目属于32的编号B005在发布页中找到对应项目获取方式。项目说明这个项目首先将实现STM32平衡小车的基本平衡功能使用的是STM32HAL库并且结合CubeMX开发完整的教程希望能够订阅专栏将分多个博客讲述内容仅代表个人观点仅供参考。本系列内容并不会涉及过多理论知识更多的只是怎么将小车运行起来。本文内容主要是针对使用的CubeMX相关基础配置做一个说明。完整叙述了创建工程的过程。CubeMX基础配置1、建立新工程2、搜索STM32F103C8T6然后双击3、选择使能外部高速时钟不使能外部低速因为外部低速在本项目没用上而且那两个脚被我用来当按键输入引脚了。4、打开SW调试功能必须打开不然单片机只能下载一次5、配置时钟选择外部时钟然后在最后处写入72MHz然后回车会自动配置时钟6、填写工程名字然后选择路径最后选择使用Keil5打开版本选择V5太高了怕其他电脑打不开。7、代码生成处选择如下选项8、最后就可以点击右上角的GENERATE CODE生成代码了。以上是基本功能接下来我们将配置每一个模块。关闭keil工程继续配置。电机驱动首先设置PWM的输出值使用定时器1的通道1和通道4分频系数为0计数系数为7199。分频系数为0的话计数1个值就是 72Mhz/(01)的频率倒数就是周期1 / ( 72Mhz/(01) )s 那么计数系数为7199的话一个PWM定时的周期就是72Mhz/(01)/(71991)也就是10KHz。占空比的可设置区间就是0~7199。然后是控制方向的AIN1、AIN2、BIN1、BIN2将4个引脚设置成普通的输入输出并且进行重命名。都设置成推挽上拉输出。编码器驱动把定时器2和定时器4都设置成编码器模式并且将模式设置成T1T2这种模式下的编码器能读到的脉冲数最多。超声波驱动ECHO端使用超声波的输入捕获模式。还需要设置一个定时器中断并给一个中断等级。TRIG使用单片机的普通IO口输出MPU6050驱动IIC)mpu6050使用IIC驱动直接初始化就行了选择快速模式然后还需要一个中断引脚中断模式并且配置成上升沿中断。并且使能中断电源ADC勾选ADC1的IN4其他默认。转换周期可以选大一点不然可能转换的不是很准确打开ADC后时钟可能会乱需要回到时钟界面调整一下重新设置输出时钟蓝牙接口、串口调试USART1、USART2、USART3都是串口调试所以配置也都基本一样。使能串口中断配置一个串口中断的优先级串口2和串口3同样的配置基础配置不做演示反正就是打开了一个异步功能和串口1的第一个配置步骤一样。OLED(SPI使用的7针OLED所以直接使用SPI的驱动A6其实配置了也没用上。其他几个脚设置成普通的GPIO输出模式按键按键就直接设置引脚输入为上拉输入就行了LED驱动最小系统板的PC13连接了一个LED灯可以设置成LED做一些调试配置为普通的推挽上拉输出。

相关文章:

基于STM32HAL库的平衡小车设计(二)--CubeMX配置说明

项目开源链接 本项目资料完全开源。资料包获取方式: github : https://github.com/snqx-lqh/ProjectReleasePage gitee(国内镜像) :https://gitee.com/snqx-lqh/ProjectOpenSourceReleasePage。 项目属于 32 的编号 B005 ,在发…...

3步实现智能自动化:三月七小助手如何每天为你节省90分钟游戏时间?

3步实现智能自动化:三月七小助手如何每天为你节省90分钟游戏时间? 【免费下载链接】March7thAssistant 崩坏:星穹铁道全自动 三月七小助手 项目地址: https://gitcode.com/gh_mirrors/ma/March7thAssistant 你是否每天花费大量时间在《…...

基于OpenTelemetry的LLM应用可观测性实践:从黑盒到透明化

1. 项目概述:当LLM应用遇见可观测性如果你正在开发或运维基于大语言模型(LLM)的应用,那么你一定遇到过这样的场景:用户反馈“AI回答得不对”,或者“响应突然变慢了”。当你一头扎进日志和监控系统&#xff…...

终极指南:3步解决Dell G15笔记本过热问题,开源温度控制中心完全解析

终极指南:3步解决Dell G15笔记本过热问题,开源温度控制中心完全解析 【免费下载链接】tcc-g15 Thermal Control Center for Dell G15 - open source alternative to AWCC 项目地址: https://gitcode.com/gh_mirrors/tc/tcc-g15 你是否在游戏时遭遇…...

CANN/ops-nn自适应层归一化算子

AdaLayerNorm 【免费下载链接】ops-nn 本项目是CANN提供的神经网络类计算算子库,实现网络在NPU上加速计算。 项目地址: https://gitcode.com/cann/ops-nn 产品支持情况 产品是否支持Ascend 950PR/Ascend 950DTAtlas A3 训练系列产品/Atlas A3 推理系列产品√…...

CANN/asc-devkit ReduceMax API参考

ReduceMax 【免费下载链接】asc-devkit 本项目是CANN 推出的昇腾AI处理器专用的算子程序开发语言,原生支持C和C标准规范,主要由类库和语言扩展层构成,提供多层级API,满足多维场景算子开发诉求。 项目地址: https://gitcode.com/…...

跨平台光标同步工具:技术原理、实现与多屏开发效率优化

1. 项目概述:一个为开发者量身定制的光标同步工具 如果你和我一样,经常需要在多台显示器、多个IDE窗口,甚至是远程桌面和本地环境之间来回切换,那么你一定对“找光标”这件事深恶痛绝。尤其是在进行代码对比、调试或者多屏幕协作时…...

华为CANN GE动态宽高获取API

aclmdlGetDynamicHW 【免费下载链接】ge GE(Graph Engine)是面向昇腾的图编译器和执行器,提供了计算图优化、多流并行、内存复用和模型下沉等技术手段,加速模型执行效率,减少模型内存占用。 GE 提供对 PyTorch、Tensor…...

HYMiniMall项目配置详解:从开发环境到生产环境的完整部署

HYMiniMall项目配置详解:从开发环境到生产环境的完整部署 【免费下载链接】HYMiniMall 小程序商场项目 项目地址: https://gitcode.com/gh_mirrors/hy/HYMiniMall HYMiniMall是一个功能完善的小程序商场项目,本文将详细介绍如何从开发环境到生产环…...

face-recognition.js 模型训练与保存:构建可复用的人脸识别系统

face-recognition.js 模型训练与保存:构建可复用的人脸识别系统 【免费下载链接】face-recognition.js Simple Node.js package for robust face detection and face recognition. JavaScript and TypeScript API. 项目地址: https://gitcode.com/gh_mirrors/fa/f…...

XUnity.AutoTranslator完整指南:如何为Unity游戏添加智能实时翻译功能

XUnity.AutoTranslator完整指南:如何为Unity游戏添加智能实时翻译功能 【免费下载链接】XUnity.AutoTranslator 项目地址: https://gitcode.com/gh_mirrors/xu/XUnity.AutoTranslator 你是否曾经因为语言障碍而无法享受心爱的Unity游戏?或者作为…...

Yeti社区插件生态解析:如何利用现有资源快速扩展平台功能

Yeti社区插件生态解析:如何利用现有资源快速扩展平台功能 【免费下载链接】yeti Your Everyday Threat Intelligence 项目地址: https://gitcode.com/gh_mirrors/ye/yeti Yeti作为一款强大的威胁情报平台(Your Everyday Threat Intelligence&…...

CANN/asc-devkit Reset函数说明

Reset 【免费下载链接】asc-devkit 本项目是CANN 推出的昇腾AI处理器专用的算子程序开发语言,原生支持C和C标准规范,主要由类库和语言扩展层构成,提供多层级API,满足多维场景算子开发诉求。 项目地址: https://gitcode.com/cann…...

终极指南:如何在Windows上轻松模拟游戏控制器 - ViGEmBus驱动完整教程

终极指南:如何在Windows上轻松模拟游戏控制器 - ViGEmBus驱动完整教程 【免费下载链接】ViGEmBus Windows kernel-mode driver emulating well-known USB game controllers. 项目地址: https://gitcode.com/gh_mirrors/vi/ViGEmBus 你是否曾经遇到过这样的困…...

ARM TPIU调试架构原理与时钟同步技术解析

1. ARM TPIU架构与调试跟踪原理在嵌入式系统开发中,实时跟踪调试能力是诊断复杂问题的关键。Trace Port Interface Unit (TPIU)作为ARM CoreSight调试架构的核心组件,承担着将芯片内部多源跟踪数据可靠传输到外部分析设备的重要职责。其设计难点在于如何…...

system24高级功能探索:透明背景、模糊效果和自定义窗口控制

system24高级功能探索:透明背景、模糊效果和自定义窗口控制 【免费下载链接】system24 a tui-style discord theme 项目地址: https://gitcode.com/gh_mirrors/sy/system24 system24是一款tui风格的Discord主题,它通过简约的设计和强大的自定义功…...

AI原生推理为何卡在42ms?:SITS 2026实测揭示KV Cache压缩、FlashAttention-3适配与CUDA Graph动态融合的黄金三角

更多请点击: https://intelliparadigm.com 第一章:AI原生性能优化:SITS 2026 LLM推理加速实战技巧 在 SITS 2026 基准测试框架下,LLM 推理延迟与显存带宽利用率成为关键瓶颈。AI 原生优化并非简单套用传统 CUDA kernel 调优策略&…...

开源技能学习资源聚合项目SkillPort:构建个人与团队知识库的实践指南

1. 项目概述:一个技能提升的“私人图书馆”最近在整理自己的学习资料库时,发现了一个挺有意思的项目,叫gotalab/skillport。乍一看这个名字,可能会联想到某个商业学习平台,但实际上,这是一个由开发者社区构…...

见素抱朴的 SAP UI5 开发之道, 从「绝圣弃智」到少代码、少炫技、少内耗的前端工程

《道德经》第十九章说, 「绝圣弃智,民利百倍;绝仁弃义,民复孝慈;绝巧弃利,盗贼无有。此三者以为文不足。故令有所属,见素抱朴,少私寡欲。」通行本的这段文字,最容易被误读成反知识、反技术、反规范。放到 SAP UI5 开发里,这种误读尤其危险。SAP UI5 本来就是一个工程…...

从绝圣弃智到少造机关,老子这一句放进 SAP HANA 开发里,讲的是把聪明收回到模型、数据和执行计划本身

在 SAP HANA 项目里,最容易让团队误判的场景,往往不是某个开发人员不会写 SQL,也不是不会建 Calculation View,而是大家太相信自己的聪明。一个销售分析报表慢了,开发人员立刻想写一段复杂的 SQLScript;一个库存可用量计算不准,团队又想加一层临时表;一个财务口径有争议…...

绝巧弃利之后,ABAP 才回到可升级的常道

老子说「绝圣弃智,民利百倍;绝仁弃义,民复孝慈;绝巧弃利,盗贼无有」。这句话放到 SAP ABAP 开发里,不能理解成不要知识、不要规范、不要技巧。ABAP 项目从来离不开知识,也离不开严密的工程纪律。它真正提醒我们的是,当一个系统过度崇拜个人聪明、过度依赖补救式道德、过…...

在「唯」与「阿」之间安放计算之道,老子这句话给 SAP HANA 开发的一层提醒

「唯之与阿,相去几何?美之与恶,相去若何?人之所畏,不可不畏。荒兮,其未央哉!」放在 SAP HANA 开发里看,不是把古文硬贴到技术上,而是在提醒我们,很多工程判断看起来差别很小,落到系统运行里却会拉开很大的距离。一个 JOIN 写在 application server,还是下推到 data…...

BepInEx IL2CPP启动失败终极解决指南:从异常诊断到游戏正常运行

BepInEx IL2CPP启动失败终极解决指南:从异常诊断到游戏正常运行 【免费下载链接】BepInEx Unity / XNA game patcher and plugin framework 项目地址: https://gitcode.com/GitHub_Trending/be/BepInEx BepInEx作为Unity游戏插件框架,为玩家和开发…...

IPBan快速入门:一键安装配置,立即阻止僵尸网络入侵

IPBan快速入门:一键安装配置,立即阻止僵尸网络入侵 【免费下载链接】IPBan Since 2011, IPBan is the worlds most trusted, free security software to block hackers and botnets. With both Windows and Linux support, IPBan has your dedicated or …...

CANN Ascend C uint32转bfloat16函数

__uint2bfloat16_rd 【免费下载链接】asc-devkit 本项目是CANN 推出的昇腾AI处理器专用的算子程序开发语言,原生支持C和C标准规范,主要由类库和语言扩展层构成,提供多层级API,满足多维场景算子开发诉求。 项目地址: https://git…...

StofDoctrineExtensionsBundle的IpTraceable扩展:自动记录用户IP地址的简单实现指南 [特殊字符]

StofDoctrineExtensionsBundle的IpTraceable扩展:自动记录用户IP地址的简单实现指南 🚀 【免费下载链接】StofDoctrineExtensionsBundle Integration bundle for DoctrineExtensions by l3pp4rd in Symfony 项目地址: https://gitcode.com/gh_mirrors/…...

Java源码分析:`ReentrantLock`、`ReentrantReadWriteLock`与`LockSupport`深度解析

引言:从synchronized到可编程的锁 在Java并发编程的世界里,synchronized关键字曾是开发者控制线程同步的唯一选择。它简单、易用,并由JVM保证其正确性。然而,随着应用复杂度的提升,其固有的局限性——如无法中断、无法…...

Java源码学习:深入剖析Java的concurrent包源码之`ReentrantLock` 的精妙设计与云原生演进

引言:从 synchronized 到可编程的锁 在 Java 并发编程的演进史上,synchronized 关键字曾是开发者控制线程同步的唯一选择。它简单、易用,并由 JVM 保证其正确性。然而,随着应用复杂度的提升,其固有的局限性——如无法中…...

CANN/ops-nn快速层归一化算子

aclnnFastLayerNorm 【免费下载链接】ops-nn 本项目是CANN提供的神经网络类计算算子库,实现网络在NPU上加速计算。 项目地址: https://gitcode.com/cann/ops-nn 📄 查看源码 产品支持情况 产品是否支持Ascend 950PR/Ascend 950DTAtlas A3 训练系…...

Seraphine:英雄联盟玩家的智能数据助手,三步解锁游戏信息优势

Seraphine:英雄联盟玩家的智能数据助手,三步解锁游戏信息优势 【免费下载链接】Seraphine 英雄联盟战绩查询工具 项目地址: https://gitcode.com/gh_mirrors/se/Seraphine 在英雄联盟的竞技世界中,信息就是力量。Seraphine是一款基于英…...