折腾日记:如何在Mac上连接Esp32

个人博客地址
最近购买了一块Esp32单片机,在Mac环境上进行开发,并且成功点亮LED灯和连上屏幕,为什么会上手选择Esp32开发板,主要考虑它自带Wi-Fi和蓝牙,单价也不高,就算后面不玩了,也能转成物联网的设备,连上家里的服务器作为一个联网传感器

Esp32是一款由乐鑫(Espressif Systems)推出的高度集成的低功耗系统级芯片(SoC),它结合了双核处理器、无线通信、低功耗特性和丰富的外设,适用于各种物联网(IoT)应用

开发环境

  1. Mac Pro i7 MacOs14.5
  2. Esp32
  3. Arduino IDE

驱动

购买Esp32的时候,最好选择带有数据线的套餐,比如,我现在手上的的MacPro,已经没有USB接口,只能使用转接头连上typeC,无法保证非原装的数据线,是否可以正常连接,将单片机连上电脑后,可以用 ls /dev/cu.*指令查看端口,这里可以看到/dev/cu.usbserial-14110,但是无法连接上

 ls /dev/cu.*
 
/dev/cu.BLTH /dev/cu.usbserial-14110

/dev/cu.Bluetooth-Incoming-Port /dev/cu.wchusbserial14110

折腾了好久后,在购买图看到,USB使用的芯片为CH340,所以百度这个芯片驱动,官网竟然有Mac版本
``
IMG_5484

从官网下载 https://www.wch.cn/downloads/CH34XSER_MAC_ZIP.html 下载对应驱动,进行安装

415aa4304b60ada2ca1e77e69ca59bfb

成功安装驱动后,可以在ide里面看到多了一个COM/dev/cu.wchusbserial14110,解决完驱动问题,就可以开始准备如何点亮Led灯了

配置开发环境

配置开发版信息

首先配置Esp32的管理地址

1e6059c8c42c153f7f55f180ff70990b
配置开发版管理地址
https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json

126e307a6d9277bd8d147bff9e88c3f7
连上开发板之后,需要配置开发板的信息,模式可以选ESP32 Dev Module,端口为之前的/dev/cu.wchusbserial14110
4d73996a07e6e4949d178754357f3d19

设置开发板

5f688362df518916d53a9605ddd48e51

编辑代码

弄好这些,我们的开发板已经连上了,接下来就编写代码,查看一下效果,直接在ide中的demo.ino使用如下代码

int LED = 2;

void setup()

{

pinMode(LED, OUTPUT);

}

void loop()

{

digitalWrite(LED, HIGH); // 打开LED

delay(1000); //等待一秒

digitalWrite(LED, LOW); // 关闭LED

delay(1000); //等待一秒

}
编译并且上传代码

然后选择验证和编译,查看代码是否正常编译
28a900ac6cd8871b3ff0237ae67d62e0
编译成功后,选择上传代码到Esp32
a680e86ab3aef81362abd01e244d79f9

实现效果

上传代码看一下效果
9946be936886c62e12e9dc97afd0a100

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

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

相关文章

【CS.AL】八大排序算法 —— 快速排序全揭秘:从基础到优化

文章目录 1. 快速排序简介1.1 定义1.2 时间复杂度1.3 相关资源 2. 最优的Partition算法 🔥2.1 Introsort简介2.2 过程示例 3. 非递归快速排序3.1 实现 4. 递归快速排序4.1 实现 5. 有问题的Partition5.1 实现 6. 三中位数主元选择6.1 实现 7. 总结 1. 快速排序简介 …

Typescript 中 tsconfig.json 无法写入文件,因为它会覆盖输入文件

先来看看问题 在开发ts项目的时候,包错提示无法写入文件 tsconfig.json无法写入文件"url"因为它会覆盖输入文件 这是tsconfig.json文件配置问题,需要加入下面的配置就好了: {"compilerOptions": {"outDir": …

python爬虫入门教程(一)

上一篇文章讲了爬虫的工作原理,这篇文章以后就要重点开始讲编程序了。 简单爬虫的的两个步骤: 使用HTTPRequest工具模拟HTTP请求,接收到返回的文本。用于请求的包有: requests、urllib等。 对接收的文本进行筛选,获取想要的内容。用户筛选文…

操作系统期末复习整理知识点

操作系统的概念:①控制和管理整个计算机系统的硬件和软件资源,并合理地组织调度计算机的工作和资源的分配;②提供给用户和其他软件方便的接口和环境;③是计算机中最基本的系统软件 功能和目标: ①操作系统作为系统资源…

专业场景化ChatGPT论文润色提示词指令,更精准、更有效辅助学术论文撰写

大家好,感谢关注。我是七哥,一个在高校里不务正业,折腾学术科研AI实操的学术人。可以添加我(yida985)交流学术写作或ChatGPT等AI领域相关问题,多多交流,相互成就,共同进步。 在学术写…

JVM类加载机制详解(JDK源码级别)

提示:从JDK源码级别彻底剖析JVM类加载机制、双亲委派机制、全盘负责委托机制、打破双亲委派机制的程序、Tomcat打破双亲委派机制、tomcat自定义类加载器详解、tomcat的几个主要类加载器、手写tomcat类加载器 文章目录 前言一、loadClass的类加载大概有如下步骤二、j…

Spring Boot通过自定义注解和Redis+Lua脚本实现接口限流

😄 19年之后由于某些原因断更了三年,23年重新扬帆起航,推出更多优质博文,希望大家多多支持~ 🌷 古之立大事者,不惟有超世之才,亦必有坚忍不拔之志 🎐 个人CSND主页——Mi…

【CS.AI】AI引领编程新时代:深度探索GitHub Copilot

文章目录 引言0. TOP TAKEAWAYS 重要要点1. Copilot的基本功能2. 技术原理3. 优势与局限优势局限 4. 使用体验4.1 初次使用4.2 在 JetBrains 全家桶中使用 GitHub Copilot1. 安装插件2. 配置插件3. 使用 GitHub Copilot 4.3 日常开发4.4 体验与反馈 5. 对开发者生态系统的影响5…

深度学习500问——Chapter10:迁移学习(1)

文章目录 11.1 迁移学习基础知识 11.1.1 什么是迁移学习 11.1.2 为什么需要迁移学习 11.1.3 迁移学习的基本问题有哪些 11.1.4 迁移学习有哪些常用概念 11.1.5 迁移学习与传统机器学习有什么区别 11.1.6 迁移学习的核心及度量准则 11.1.7 迁移学习与其他概念的区别 11.1.8 什么…

【设计模式】行为型设计模式之 状态模式,带你探究有限状态机FSM的三种实现方式

什么是有限状态机 Finite state Machine FSM 简称状态机:状态机由三部分组成,状态(State) 事件(Event) 和动作(Action)组成。 其中事件也被称为转移条件,事件触发状态的转移和动作的执行。不过动作不是必须的,也可能只存在状态转…

人工智能与能源约束的矛盾能否化解

以下文章来源:澎湃新闻 人工智能技术在台前展示的是比特世界的算力、算法和数据,但其“轻盈的灵魂”背后则是土地、能源和水等物理世界“沉重的肉身”。根据本文三种情境的模拟测算,未来人工智能发展需要可持续的巨量能源支撑,能源…

DS:树与二叉树的相关概念

欢迎来到Harper.Lee的学习世界!博主主页传送门:Harper.Lee的博客主页想要一起进步的uu可以来后台找我哦! 一、树的概念及其结构 1.1 树的概念亲缘关系 树是一种非线性的数据结构,它是由n(n>0)个有限节点…

社区物资交易互助平台的设计

管理员账户功能包括:系统首页,个人中心,管理员管理,基础数据管理,论坛管理,公告信息管理 前台账户功能包括:系统首页,个人中心,论坛,求助留言板,公…

OpenCV 双目相机标定

文章目录 一、简介1.1单目相机标定1.2双目相机标定二、实现代码三、实现效果参考资料一、简介 1.1单目相机标定 与单目相机标定类似,双目标定的目的也是要找到从世界坐标转换为图像坐标所用到的投影P矩阵各个系数(即相机的内参与外参)。具体过程如下所述: 1、首先我们需要…

王学岗鸿蒙开发(北向)——————(四、五、六)ArkUi声明式组件

普通组件 1,注意,如上图,build只能有一个根节点 2,Entry表示程序的入口 Component表示自定义的组件 Preview表示可以预览 3,图片存放的地方 4, Image组件最好只给宽度,给了高度又给宽度容易失真。 build() {Row() {/…

论文降痕指南:如何有效降低AIGC率

随着 AI 技术迅猛发展,各种AI辅助论文写作的工具层出不穷! 为了防止有人利用AI工具进行论文代写,在最新的学位法中已经明确规定“已经获得学位者,在获得该学位过程中如有人工智能代写等学术不端行为,经学位评定委员会…

使用 ESP32 和 PlatformIO (arduino框架)实现 Over-the-Air(OTA)固件更新

使用 ESP32 和 PlatformIO 实现 Over-the-Air(OTA)固件更新 摘要: 本文将介绍如何在 ESP32 上使用 PlatformIO 环境实现 OTA(Over-the-Air)固件更新。OTA 更新使得在设备部署在远程位置时,无需物理接触设…

Python 基于阿里云的OSS对象存储服务实现本地文件上云框架

Python 基于阿里云的OSS对象存储服务实现将文件上云框架 文章目录 Python 基于阿里云的OSS对象存储服务实现将文件上云框架一、前言二、阿里云配置1、获取用户AKEY和AKeySecret2、创建Bucket 三、Python 阿里云oss上云框架1、安装oss2依赖库2、阿里云oss python 一、前言 未来…

Mysql 中的case-when

什么是 case-when case-when 是一种 sql 语句中的语法结构,结构如下: case 字段名 when 值 then 字段名|值 ... else 字段名|值 end case when 主要用于数据的 行列转换(把一列数据转换为多列) 前置条件: -- 表…

基于统一二维电子气密度表达式的通用MIS-HEMT紧凑模型

来源:A Compact Model for Generic MIS-HEMTs Based on the Unified 2DEG Density Expression(TED 14年) 摘要 本文提出了一种针对二维电子气(ns)密度和费米能级(E_f)的解析表达式&#xff0c…