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

news/2024/5/20 3:20:31

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

新建工程及工程模板搭建

新建工程须知

目前常用的 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 等。

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

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


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

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hjln.cn/news/9.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

相关文章

外包干了10个月,技术退步明显.......

先说一下自己的情况,大专生,18年通过校招进入武汉某软件公司,干了接近4年的功能测试,今年年初,感觉自己不能够在这样下去了,长时间呆在一个舒适的环境会让一个人堕落! 而我已经在一个企业干了四年的功能测…

【算法 - 动态规划】找零钱问题Ⅱ

在前面的动态规划系列文章中,关于如何对递归进行分析的四种基本模型都介绍完了,再来回顾一下: 从左到右模型 :arr[index ...] 从 index 之前的不用考虑,只考虑后面的该如何选择 。范围尝试模型 :思考 [L ,…

Unity(第十部)时间函数和文件函数

时间函数 using System.Collections; using System.Collections.Generic; using UnityEngine;public class game : MonoBehaviour {// Start is called before the first frame updatefloat timer 0;void Start(){//游戏开始到现在所花的时间Debug.Log(Time.time);//时间缩放值…

Python爬虫-爬取B站番剧封面

本文是本人最近学习Python爬虫所做的小练习。如有侵权,请联系删除。 页面获取url 代码 import requests import os import re# 创建文件夹 path os.getcwd() /images if not os.path.exists(path):os.mkdir(path)# 当前页数 page 1 # 总页数 total_page 2# 自动…

软件测试笔记(三):黑盒测试

1 黑盒测试概述 黑盒测试也叫功能测试,通过测试来检测每个功能是否都能正常使用。在测试中,把程序看作是一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下,对程序接口进行测试,只检查程序功能是否按…

C++ 游戏飞机大战, 字符型的

//#define _CRT_SECURE_NO_WARNINGS 1 用于禁止不安全函数的警告 #include<iostream> #include<stdlib.h> #include<string> #include<conio.h> #include<Windows.h> #include<time.h> #include <graphics.h> using namespace std;…

【Golang切片】

切片 切片的引入内存分析切片的定义切片的遍历切片注意事项 切片的引入 【1】切片&#xff08;slice&#xff09;是golang中一种特有的数据类型 【2】数组有特定的用处&#xff0c;但是却有一些呆板&#xff08;数组长度固定不可变&#xff09;&#xff0c;所以在Go语言的代码…