当前位置:网站首页>EPP+DIS学习之路(1)——Hello world!
EPP+DIS学习之路(1)——Hello world!
2022-07-07 10:12:00 【MakeMaker】
在公众号“宁中物理创新实验室”写了好多基于Mixly的入门篇了,感觉自己写代码的能力也在不断的下降中......由于浙江省的信息技术选考已经要考phthon编程了,所以想着如果ESP32+Python+Phyphox这三者结合起来(简称EPP吧)开发物理的DIS实验的话,那真的可以做到多课程的完美融合了。所以便有了开发基于这三者的选修课程的想法,争取这个暑假开发完,下个学期就可以在社团课上给学生们上了。
之前的文章大多是我自己以前的经验写出来的,那么接下去的这些就是我的学习之路了,虽然也会一点python,但是还是粗浅的很,所以就一边写一边学习了。
ESP32上的python严格的应该叫micropython,有很多软件可以用,我们就挑一个比较简单的软件——Thonny来写吧。
python是一种解释型的高级语言......关于语言的介绍自己去百度了。用python来给ESP32写程序最爽的就是速度超级超级快!比起Mixly速度大约快100倍!废话不说,进入正题:
一、Thonny
首先下载软件,大家可以百度,去官网下,这样可以下到最新的,当然也可以用我分享的。
链接:https://pan.baidu.com/s/1BMrNs1Lz6HNciNFjFs7h-A?pwd=nbzx
提取码:nbzx
下载完后安装
非常干净简洁的一款软件。然后为了给ESP32写程序,还得给ESP32写入支持micropython的固件,大家可以百度也可以用我下面的:
链接:https://pan.baidu.com/s/1S3iIFn6btyQ2L22N7345AQ?pwd=nbzx
提取码:nbzx
下载后就是一个.bin的文件
接下去我们先用Thonny给ESP32来烧入新的固件:
先打开工具-设置-解码器,注意上面选择MicroPython(ESP),Port里选择你的ESP32对应的COM口(当然先得插入ESP32),然后点击右下角Install......
打开后如下,同样Port是你的ESP32对应的COM口,Firmware就是我上面分享的.bin文件。之后就点击安装即可。
大约100秒后就烧录完了。然后关闭进入Thonny主页面:
二、Hello world!
主页面下面的Shell里会出现Python的对话框。因为是高级语言,它支持对话式编程,我们先来和新世界打个招呼,在Shell栏内输入print("Hello world!")
然后它就输出了Hello world!
注意,此刻可是ESP32输出的Hello world!玩硬件的一般不喜欢这种打招呼的方式,我们的问候方式一般是点个灯!下面就把ESP32上板载的灯点亮。
在程序编辑区输入:
import machine
pin = machine.Pin(2, machine.Pin.OUT)
pin.on()
然后点击那个绿色圆中间有个白色箭头的按钮,之后会出来一个对话框
问你想将程序保存在哪,当然选择MicroPython设备
在File name中输入main.py,点确定。
然后过不了一秒,程序就上传完了,观察一下ESP32上的灯是不是亮了呢!
点灯后你应该能明白ESP32上Micropython运行的机制,其实就是把我们要运行的程序命名为main.py然后上传到ESP32上就可以了,ESP32一通电就会自动运行这个main程序。
边栏推荐
- Swiftui swift internal skill how to perform automatic trigonometric function calculation in swift
- The road to success in R & D efficiency of 1000 person Internet companies
- 【最短路】ACwing 1127. 香甜的黄油(堆优化的dijsktra或spfa)
- [filter tracking] strapdown inertial navigation simulation based on MATLAB [including Matlab source code 1935]
- 什么是局域网域名?如何解析?
- sink 消费 到 MySQL, 数据库表里面已经设置了 自增主键, flink 里面,如何 操作?
- Introduction to three methods of anti red domain name generation
- Introduction and application of smoothstep in unity: optimization of dissolution effect
- Summed up 200 Classic machine learning interview questions (with reference answers)
- Time bomb inside the software: 0-day log4shell is just the tip of the iceberg
猜你喜欢
@What happens if bean and @component are used on the same class?
Some opinions and code implementation of Siou loss: more powerful learning for bounding box regression zhora gevorgyan
千人规模互联网公司研发效能成功之路
Flet教程之 15 GridView 基础入门(教程含源码)
Hi3516全系统类型烧录教程
Flet教程之 18 Divider 分隔符组件 基础入门(教程含源码)
[filter tracking] strapdown inertial navigation pure inertial navigation solution matlab implementation
Swiftui swift internal skill how to perform automatic trigonometric function calculation in swift
Onedns helps college industry network security
[texture feature extraction] LBP image texture feature extraction based on MATLAB local binary mode [including Matlab source code 1931]
随机推荐
How to connect 5V serial port to 3.3V MCU serial port?
What are the top-level domain names? How is it classified?
Improve application security through nonce field of play integrity API
@What happens if bean and @component are used on the same class?
[filter tracking] strapdown inertial navigation simulation based on MATLAB [including Matlab source code 1935]
【纹理特征提取】基于matlab局部二值模式LBP图像纹理特征提取【含Matlab源码 1931期】
MySQL安装常见报错处理大全
Mastering the new functions of swiftui 4 weatherkit and swift charts
How to write test cases for test coupons?
Visual Studio 2019 (LocalDB)\MSSQLLocalDB SQL Server 2014 数据库版本为852无法打开,此服务器支持782版及更低版本
<No. 8> 1816. 截断句子 (简单)
Fleet tutorial 19 introduction to verticaldivider separator component Foundation (tutorial includes source code)
Flet教程之 16 Tabs 选项卡控件 基础入门(教程含源码)
Steps of redis installation and self startup configuration under CentOS system
顶级域名有哪些?是如何分类的?
[full stack plan - programming language C] basic introductory knowledge
Hi3516全系统类型烧录教程
Present pod information to the container through environment variables
Sign up now | oar hacker marathon phase III midsummer debut, waiting for you to challenge
Common locking table processing methods in Oracle