有方机器人 STM32智能小车 项目学习笔记1

今天开始学习有方机器人--智能小车项目,正点原子部分的学习先放一放,还是小车更有吸引力哈哈。

新建工程及工程模板搭建

新建工程须知

目前常用的 STM32 的开发方式主要有基于寄存器编程、基于标准库函数编程、基于 HAL 库编程这三种。

寄存器版本---最高效,最直接,需要对STM32内部结构十分了解,难度系数大,新手学习不推荐。

标准库函数版本--直接使用 ST 官方提供的封装好的库函数进行编程,库函数把配置寄存器的过程封装成了函数,以便用户直观理解和调用,大大降低了 STM32 的开发难度,代码更直观,易于理解。

HAL库版本--可借助 ST 官方的图形化软件"STM32CubeMX"配置寄存器,直接生成代码,可以快速上手STM32,但隐藏了寄存器底层配置的逻辑过程,适合对STM32有一点熟悉的人使用,也可把当中的代码复制出来,配合正点原子的HAL库进行对比式学习。

STM32 工程模板示例

Hardware 文件夹:存放用户编写的硬件外设代码,如led.c、timer.c、spi.c等。

Library 文件夹:用于存放 ST 官方提供的标准库的库函数源码文件。

Objects 文件夹:是用来存放编译过程文件以及 hex 文件。

Start 文件夹:用于存放开发 STM32 的启动文件。

System 文件夹:此文件夹里面的代码由 ALIENTEK 提供,是 STM32F10x 系列的底层核心驱动函数,可以用在 STM32F10x 系列的各个型号上面,方便大家快速构建自己的工程。

User 文件夹:存放工程文件、主函数文件 main.c,以及其他包括system_stm32f10x.c 等。

之后可直接复制模板,在原有的基础上进行代码编写与添加!

好嘞,今天就写到这里,拜拜!


本人博客仅代表个人见解方便记录成长笔记。

若有不足,请指出,感谢您的阅读!

相关推荐
DP DPharness34 分钟前
ClearAI、记忆插件与普通笔记,三种让 Agent 记住的路数对比
笔记
爱倒腾的老唐39 分钟前
0、元器件——电阻
学习
sunshine22 girl2 小时前
Java学习七 Java 项目实战2-注册业务
java·学习
piikee3 小时前
粤语初学入门:从粤拼、九声六调到开口,一个普通话母语者的练习笔记
笔记·粤语入门·怎么学习粤语
sunshine22 girl3 小时前
Java学习七 Java 项目实战1-项目创建和主页面搭建
java·开发语言·学习
Zw-awa3 小时前
传感器是什么:让 STM32 知道车外发生了什么
stm32
传奇开心果编程4 小时前
【SwiftUI提高练中学】第8课 网络层架构:拦截器、重试、缓存与离线优先
学习·macos·ui·ios·swiftui
一条破秋裤4 小时前
内核驱动的意义与课程学习规划
学习
Bug收容所5 小时前
学习LangChain day1
学习·langchain·llm·agent
传奇开心果编程5 小时前
【现代声明式UI学与练】第7课 组件通信——父传子、子传父、跨层级通信、状态提升与 Context
学习·flutter·react native·ui·swiftui·android jetpack