STM32----搭建Arduino开发环境

news2024/9/30 3:21:06

搭建Arduino开发环境

  • 前言
  • 一、Arduino软件
    • 1.软件下载
    • 2.软件安装
    • 3.软件操作
  • 二、Cortex官方内核
  • 三、烧录下载
  • 四、其他第三方内核
    • 1.Libmaple内核
    • 2.Steve改进的LibMaple 内核
    • 3.STMicroelectronics(ST)公司编写的内核
  • 总结


前言

本章介绍搭建STM32搭建Arduino开发环境,包括软件下载,安装配置,烧录下载等内容。


一、Arduino软件

1.软件下载

arduino官方软件下载地址:https://www.arduino.cc/en/software
在这里插入图片描述
可以根据需要选择不同平台的软件,推荐使用安装版。

2.软件安装

安装版是EXE可执行文件,双击就开始安装
在这里插入图片描述
第一步点击 I Agree
在这里插入图片描述
第二步点击 NEXT
在这里插入图片描述
第三步选择安装板目录后,点击 Install 安装。
在这里插入图片描述
安装完毕,点击 Close 关闭。至此软件安装完毕,桌面会生成一个arduino图标,点击图标打开软件。

3.软件操作

软件汉化
在这里插入图片描述

点击 File---->Preferences,打开配置界面。
在这里插入图片描述
在 Editor Language 下拉列表中选择 简体中文,点击 OK ,配置完毕。关闭软件,重新启动即是中文界面。
在这里插入图片描述

二、Cortex官方内核

安装编译工具arm-none-eabi-g ++工具链。
在这里插入图片描述
点击 工具---->开发板---->开发板管理器,打开 开发板管理器 在搜索框输入 SAM
在这里插入图片描述
点击 arduino SAM boards(32-bits ARM Cortex-M3)安装。安装后点击 工具---->开发板 ,出现Arduino ARM (32-bits)Boards 即为安装成功。
在这里插入图片描述

三、烧录下载

串口烧录 generic_boot20_pc13.bin
使用 Libmaple内核
上面这个固件按照以下配置烧录。
在这里插入图片描述

四、其他第三方内核

1.Libmaple内核

其早期 Libmaple的团队已经解散。rogerclarkmelbourne目前仍然支持。其核心库为Arduino_STM32,Bootloader为STM32duinobootloader,支持之前的Maple STM32 DUF模式。主要硬件支持F1和F4两种,Bootloader主要支持DFU模式。

项目地址:https://github.com/rogerclarkmelbourne/Arduino_STM32

2.Steve改进的LibMaple 内核

Steve在原来LibMaple的基础上增加了一个F3的内容。

项目地址:https://github.com/stevstrong/Arduino_STM32

3.STMicroelectronics(ST)公司编写的内核

ST官方已经自己整合并开发了自己的STM32的核心库:Arduino_Core_STM32。编译采用GCC-ARM的开源编译器,支持win、linux和marc。该库也支持更多的硬件和开发板,并可以增加自定义的开发板。并且支持ST公司的STM32CubeProgrammer下载方式,可以实现STM32CubeProgrammer的SWD、DFU和Serial的程序下载。同时支持两种下载方式:Maple DFU方式和USBHID方式。这种方式目前支持的芯片和开发板最多,也是最流行的方式。

项目地址:https://github.com/stm32duino/Arduino_Core_STM32

总结

本文介绍了搭建stm32的arduino开发环境,安装arm-none-eabi-g ++工具链、stm32库文件、烧录软件及开发板配置等。

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

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

相关文章

leetcode470 用Rand7()实现Rand10()

力扣470 第一步:根据Rand7()函数制作一个可以随机等概率生成0和1的函数rand_0and1 调用Rand7()函数,随机等概率生成1,2,3,4,5,6,7 这时我们设置:生成1,2&a…

“深度学习”学习日记。卷积神经网络--用CNN的实现MINIST识别任务

2023.2.11 通过已经实现的卷积层和池化层,搭建CNN去实现MNIST数据集的识别任务; 一,简单CNN的网络构成: 代码需要在有网络的情况下运行,因为会下载MINIST数据集,运行后会生成params.pkl保留训练权重&…

【吉先生的Java全栈之路】

吉士先生Java全栈学习路线🧡第一阶段Java基础: 在第一阶段:我们要认真听讲,因为基础很重要!基础很重要!基础很重要!!! 重要的事情说三遍。在这里我们先学JavaSE路线;学完之后我们要去学第一个可视化组件编程《GUI》;然后写个《贪吃蛇》游戏耍…

微搭低代码从入门到精通05-变量定义

我们上一篇对应用编辑器有了一个整体的介绍。要想零基础开发小程序,就得从各种概念开始学起。 如果你是零基础学习开发,无论学习哪一门语言,第一个需要掌握的知识点就是变量。 那么什么是变量?变量其实就是存放数据的一个容器&a…

专题 | 防抖和节流

一 防抖:单位时间内,频繁触发事件,只执行最后一次 场景:搜索框搜索输入(利用定时器,每次触发先清掉以前的定时器,从新开始) 节流:单位时间内,频繁触发事件&…

Yii2模板:自定义头部脚部文件,去掉头部脚部文件

一、yii安装完成之后,运行结果如下图二、如何自定义头部脚部文件呢0、默认展示1、在类里定义,在整个类中生效2、在方法中定义,在当前方法中生效3、home模板介绍三、去掉头部脚部文件1、控制 $layout 的值2、把action中的render改为renderPart…

前端对于深拷贝和浅拷贝的应用和思考

浅拷贝 浅拷贝 : 浅拷贝是指对基本类型的值拷贝,以及对对象类型的地址拷贝。它是将数据中所有的数据引用下来,依旧指向同一个存放地址,拷贝之后的数据修改之后,也会影响到原数据的中的对象数据。最简单直接的浅拷贝就…

java ssm集装箱码头TOS系统调度模块的设计与实现

由于历史和经济体制的原因,国内码头物流企业依然保持大而全的经营模式。企业自己建码头、场地、经营集装箱运输车辆。不过近几年来随着经济改革的进一步深入和竞争的激烈,一些大型的码头物流企业逐步打破以前的经营模式,其中最明显的特征就是…

利用机器学习(mediapipe)进行人脸468点的3D坐标检测--视频实时检测

上期文章,我们分享了人脸468点的3D坐标检测的图片检测代码实现过程,我们我们介绍一下如何在实时视频中,进行人脸468点的坐标检测。 import cv2 import mediapipe as mp mp_drawing = mp.solutions.drawing_utils mp_face_mesh = mp.solutions.face_mesh face_mesh = mp_fac…

ubuntu 驱动更新后导致无法进入界面

**问题描述: **安装新ubuntu系统后未禁止驱动更新导致无法进入登录界面。 解决办法: 首先在进入BIOS中,修改设置以进行命令行操作,然后卸载已有的系统驱动,最后安装新的驱动即可。 开机按F11进入启动菜单栏&#xf…

【JavaScript 逆向】安居客滑块逆向分析

声明本文章中所有内容仅供学习交流,相关链接做了脱敏处理,若有侵权,请联系我立即删除!案例目标验证码:aHR0cHM6Ly93d3cuYW5qdWtlLmNvbS9jYXB0Y2hhLXZlcmlmeS8/Y2FsbGJhY2s9c2hpZWxkJmZyb209YW50aXNwYW0以上均做了脱敏处…

如何准备大学生电子设计竞赛

大学生电子设计竞赛难度中上,一般有好几个类型题目可以选择,参赛者可以根据自己团队的能力、优势去选择合适自己的题目,灵活自主空间较大。参赛的同学们可以在暑假好好学习相关内容,把往年的题目拿来练练手。这个比赛含金量还是有…

数据可视化,流程化处理pycharts-

本文直接进入可视化,输入讲解输入列表生成图片,关于pandas操作看这篇pandas matplotlib 导包后使用 import matplotlib.pyplot as plt饼图 使用 plt.figure 函数设置图片的大小为 15x15 使用 plt.pie 函数绘制饼图,并设置相关的参数&…

详细的从零部署ChatGPT

chatgpt产品机遇: 1. chatgpt 所带来的机遇: 下一代 AI 搜索引擎,解决目前搜索引擎结果多样复杂、需要人工判断准确定的问题;替代低端劳动岗位、释放部分脑力活动、即将变革多个行业 ; 2. chatgpt 我分析将带来多个新的工作岗位机…

【Opencv实战】想给图片去水印?这样操作,几百张图片1分钟无痕去水印,这款去水印神器终于被我找到啦~(超厉害的)

前言 🚀 作者 :“程序员梨子” 🚀 **文章简介 **:本篇文章主要是写了opencv的人脸检测、猫脸检测小程序。 🚀 **文章源码免费获取 : 为了感谢每一个关注我的小可爱💓每篇文章的项目源码都是无…

REDIS-持久化方案

我们知道redis是内存数据库,它的数据是存储在内存中的,我们知道内存的一个特点是断电数据就丢失,所以redis提供了持久化功能,可以将内存中的数据状态存储到磁盘里面,避免数据丢失。 Redis持久化有三种方案,…

【Node.js】 创建web服务器

Node.js什么是客户端,什么是服务器服务器和普通电脑的区别什么是http模块导入http模块服务器相关概念创建web服务器的基本步骤req请求对象req响应对象解决中文乱码根据不同的url响应不同的html内容什么是客户端,什么是服务器 客户端在网络节点中&#x…

CentOS7 配置共享文件夹

1、SSH连接CentOS,使用“rpm -qi samba"命令查询是否已经安装了Samba,如果没有安装,使用“yum install samba”命令,下载Samba包并安装,输入“y”,确认安装软件和软件依赖包。 2、使用“rpm -qa | gr…

kubernetes -- 核心组件介绍以及组件的运行流程

常用组件大白话说 如果想要官方的,详细的信息,请看官方文档。 https://kubernetes.io/zh-cn/docs/concepts/overview/components/ 现在介绍一些核心的概念: etcd:存储所有节点的信息,节点上部署的容器信息等都存在数…

SWIG妙用: MATLAB程序转python和Java库

1.引言Python或Java调用MATLAB程序需要安装MATLAB官方提供的支持库(MATLAB Runtime),而且适配的python或JDK版本有限,不方便移植。本文的思路是用MATLAB Coder将MATLAB源程序转为C/C代码,然后用swig将其打包成python 动…