ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

1.1. 准备工作

2021-11-05 21:03:08  阅读:173  来源: 互联网

标签:1.1 单片机 串口 开发板 学习 工作 准备 固件


1.1.1. 硬件篇

1.1.1.1. Esp32-wroom-32单片机板

Esp32单片机是乐鑫公司推出的针对物联网应用的嵌入式mcu。乐鑫公司,在推出单片机的同时推出核心板(相当于最小系统板),并在核心板的基础上增加上电启动、boot、引出IO等推出开发板。

故,在购买单片机板时,只要核心板是esp32-wroom-32的开发板,差别不会太大。

本文使用的单片机板如图(为避嫌,不提供购买信息),约20元:

wps47

1.1.1.2. Micro接口数据线

切记买数据线,不要充电线。充电线线束中只有gnd、vcc两根线,而数据线至少有gnd、vcc、d+、d-四根线。充电线线束中因没有数据线,不会被PC机识别(设备管理器中不分配串口号)。

1.1.2. 软件篇-编程环境

嵌入式学习的核心是单片机学习,单片机学习主要有硬件学习、软件学习两方面。

硬件学习的主要是内容是单片机的周边电路及EMC、EMI、ESD等。硬件是通用的,不同单片机的周边电路大同小异。教程中穿插介绍单片机周边电路的基础。

软件是单片机系统的灵魂。单片机系统在内置软件控制下完成设定的动作。

硬件学习、软件学习没有先后顺序,先学哪个都可以,也可以穿插学习。但学习时,尽量做到软件没问题前提下学习、调试硬件,反过来要做到硬件没问题的前提下学习、调试软件。

鉴于乐鑫公司在推出ESP32单片机的同时,推出便宜的甚至可直接用于产品的模组和开发板,这就降低了学习门槛,初学者可以弱化硬件学习,专注于软件学习部分。不管是乐鑫官方的开发板,还是第三方基于乐鑫官方模组的开发板,只要使用相同的模组,其控制逻辑不会差别太大。本教程以软件学习为主,穿插介绍通用的硬件基础。

ESP32的学习框架有如下几种。

1.1.2.1. ESP-IDF(Espressif IoT Development Framework)

ESP-IDF是乐鑫官方生态链给出的编程框架,该框架已经基本包含 ESP32 硬件资源的完整驱动API(软件库和源代码)、运行工具链 的脚本(python开发)。

ESP-IDF基于C语言开发,学习周期比较长,有兴趣可以官网学习。

ESP-IDF是学习ESP的终极武器,是时间相对较多的学习者(如学生)的最优选择。但对于已经上班的工程师,却不是最优选择,原因如下:

1. ESP-IDF的学习周期较长,而研发团队中接到项目都是有时效性要求的,工程师必须争分夺秒的完成自己的设计任务,没时间和精力边开发边完成新技术学习。

2. ESP-IDF的学习门槛高,刚学到的技术直接用于新项目,会带来更多的不稳定因素。

故,做为工程师,既要快又要稳,这就要对工程师提出新的要求:

1. 尽量选择学习周期短的技术;

2. 尽量使用学习门槛低、技术成熟的框架;

对于ESP32单片机,有如下2个开发的框架满足这点要求。

1.1.2.2. Micropython

正如字面意思,micropython是运行单片机平台下的微python环境。它实际上是运行在单片机上的内置python编译器和虚拟机的微操作系统。

对于支持micropython的单片机,把官网的固件下载到单片机flash中(可以理解为装系统),接下来就可以使用python(裁剪后的)完成项目开发。

Micropython同样抽象了对底层单片机的驱动,同一代码可以在不同的单片机上(前提是芯片支持micropython)达到相同的运行效果,借鉴上位机的概念叫跨平台。

1.1.2.3. 刷固件到ESP32
1.1.2.3.1. 下载固件

Micropython官网提供esp32的micropython固件(持续更新),路径:

micropython官网(http://www.micropython.org/)->download->generic esp32 module,如图:

wps49

wps50

以选择最新稳定版为例(如上图),尽量不用unstable版本。

下载。

同在下载页,注意这段文字:

wps51

大概意思:刷固件起始地址:0x1000;第一次刷固件,需要先清除整个flash;

1.1.2.3.2. 下载刷固件工具

espressif官网下载flash_download_tool,如下图:

wps52

无需安装,解压即可使用。

1.1.2.3.3. 连接

Usb->micro usb数据线连接pc及开发板,查看串口(我的电脑->属性->设备管理器->...)。

注意:usb转串口根据使用芯片的不同,需要下载对应的驱动,如:

wps54 cp210x方案

wps56 ch340g方案

如明确知道使用的芯片,到官方下载驱动并安装即可。如不明确,可使用驱动精灵、鲁大师等第三方工具,自动安装驱动。

总之,以看到设备管理器中出现明确的串口好为准。

1.1.2.3.4. 刷固件

1. 打开flash_download_tool.exe;

2. 选择chiptype:esp32,workmode:根据实际情况选;

3. 选择下载好的固件,@后填0x1000(官网有说明千万不能填错);

4. 右下选择查到的com口,baud:115200;

5. 下中点击“erase”,并按下开发板的boot0按钮,等待完成(首次刷固件要执行);

6. 下左点击“start”,并按下开发板的boot0按钮,等待完成;

7. 用串口工具打开串口,重启开发板,等待欢迎信息,看到”>>>”证明成功;

wps57wps58

wps59

1.1.2.4. MicroPython开发工具

单片机板自身没有用户接口(如显示器、键盘等)。

在micropython模式下,单片机板通过串口连接宿主机(pc机),借用宿主机的交互接口完成用户交互。

宿主机上运行处理串口数据的终端软件,完成与单片机板的信息交流,常用的有串口调试助手、putty等。

Micropython推荐使用Thonny软件,因为Thonny除了能够处理串口数据,还集成了文件管理、操作(上传文件到单片机和下载单片机中的文件)等功能。

1.1.2.4.1. Putty

PuTTY一款集成连接软件,可以处理TelnetSSH、纯TCP以及串行接口连接的信息。百度下载解压后,putty.exe可以直接运行,如图:

wps60

选择”serial”,设置串口号、波特率,点击open,看到如下界面即证明完成配置:

wps61

1.1.2.4.2. Thonny

推荐使用thonny,下载并安装thonny。

首次打开thonny,系统弹出对话框,按自己的喜好设置后关掉对话框,进入主页面,接下来配置与单片机板的通讯,路径:工具->设置,打开“thonny设置”对话框,选择“解释器”标签,如下图:

wps62->wps63

wps64

wps65

4中的串口号在设备管理器中查看(如pc上有多个串口号,可先拔掉单片机板,然后再插上,通过对比即可找到pc分配给单片机的串口号)。

设置完成后,关掉thonny->拔下单片机板->插上单片机板->打开thonny,开到如下打印信息即证明刷固件及配置开发环境成功,如下图:

wps66

标签:1.1,单片机,串口,开发板,学习,工作,准备,固件
来源: https://www.cnblogs.com/horal/p/15515215.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有