有方机器人 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 等。

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

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


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

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

相关推荐
降临-max18 分钟前
JavaSE---网络编程
java·开发语言·网络·笔记·学习
大白的编程日记.1 小时前
【计算网络学习笔记】MySql的多版本控制MVCC和Read View
网络·笔记·学习·mysql
IMPYLH2 小时前
Lua 的 require 函数
java·开发语言·笔记·后端·junit·lua
cjy_Somnr3 小时前
keil5报错显示stm32的SWDIO未连接不能烧录
stm32·单片机·嵌入式硬件
Lay_鑫辰4 小时前
西门子诊断-状态和错误位(“轴”工艺对象 V1...3)
服务器·网络·单片机·嵌入式硬件·自动化
车载测试工程师4 小时前
CAPL学习-IP API函数-2
网络·学习·tcp/ip·capl·canoe
YJlio5 小时前
进程和诊断工具学习笔记(8.29):ListDLLs——一眼看清进程里加载了哪些 DLL,谁在偷偷注入
android·笔记·学习
lkbhua莱克瓦246 小时前
集合进阶8——Stream流
java·开发语言·笔记·github·stream流·学习方法·集合
车载测试工程师6 小时前
CAPL学习-IP API函数-1
网络·学习·tcp/ip·capl·canoe·doip
爱学java的ptt6 小时前
jvm笔记
jvm·笔记