ESP32 MicroPython UART及小车类构造函数实验⑥

news2024/10/6 14:26:50

ESP32 MicroPython UART及小车类构造函数实验⑥

    • 1、实验目的
    • 2、实验内容
    • 3、参考代码
    • 4、实验结果

1、实验目的

控制小车动起来

2、实验内容

控制小车的前进、后退、左转、右转。读取小车
使用到的串口构造函数

uart=machine.UART(id,baudrate,rx,tx)

uart:返回的构造对象,可以使用返回的对象进行使用方法
id:串口编号(一般使用12)
baudrate:串口波特率,常用的有9600115200
rx:串口接收引脚号
tx:串口发送引脚号

使用方法

num=uart.any()
读取串口接收到的字符串数量,没有读到数据返回0,否则返回读取到的数量
data=uart.read(n)
读取串口数据,n:要读取的数据长度,返回data[]读取到的串口数据数值,返回为bytes对象

小车类构造函数:

myCar=car.SERIAL_CAR()
myCar:返回的小车控制对象

使用方法

myCar.forward(pwm)	
小车前进
pwm:控制小车转动的速度(0~100),由速度0~100
myCar.back(pwm)
小车后退
pwm:控制小车转动的速度(0~100),由速度0~100

myCar.right(pwm)	
小车右转
pwm:控制小车转动的速度(0~100),由速度0~100

myCar.left(pwm)	
小车左转
pwm:控制小车转动的速度(0~100),由速度0~100

myCar.stop()	
小车停止、刹车

myCar.leftForward(pwm)	
小车左边轮子前进
pwm:轮子转动的速度(0~100),由速度0~100

myCar.leftBack(pwm)	
小车左边轮子后退
pwm:轮子转动的速度(0~100),由速度0~100

myCar.rightForward(pwm)	
小车右边轮子前进
pwm:轮子转动的速度(0~100),由速度0~100

myCar.rightBack(pwm)	
小车右边轮子后退
pwm:轮子转动的速度(0~100),由速度0~100

myCar.servo(pwm)	
小车的舵机控制
pwm:舵机的控制脉宽,500us~2500us

d=myCar.distance()	
小车超声波测距
d:获取到测距距离,单位厘米(cm)

ir=myCar.ir()	
小车读取的红外避障数据
ir:返回四个红外避障数据,类型为元组

myCar.buzzer(freq)	
小车蜂鸣器控制
freq:蜂鸣器的频率,0表示停止鸣叫,频率范围:750Hz~65535Hz

在上面我们可以知道小车控制的构造函数和使用方法,下面我们开始编写Python代码来控制小车转动。

3、参考代码

import car                #导入小车控制模块
import time               #导入时间控制模块
myCar=car.SERIAL_CAR()   #构建小车控制对象
time.sleep(1)                 #延时1s,等待模块稳定
#开始小车控制实验
myCar.forward(50)    #小车前进 参数值0~100表示 占空比0% ~ 100%
time.sleep(2)        #延时2s
myCar.back(50)       #小车后退,速度50
time.sleep(2)        #延时2s
myCar.right(50)      #小车右转,速度50
time.sleep(2)        #延时2s
myCar.left(50)       #小车左转,速度50
time.sleep(2)        #延时2s
myCar.stop()         #小车停止控制

4、实验结果

保存好参考代码后,执行运行程序可以看到小车开始以50的速度前进2秒后,再后退2秒、右转2秒、左转2秒最后停止。
在这里插入图片描述

智能小车购买链接
技术支持抖音:易驱达Easy Drive Coming
淘宝官方商城:https://item.taobao.com/item.htm?spm=a1z10.5-c.w4002-18887194911.15.135014bdaKI6mV&id=715385110550

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

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

相关文章

C++多态原理揭秘

🎈个人主页:🎈 :✨✨✨初阶牛✨✨✨ 🐻强烈推荐优质专栏: 🍔🍟🌯C的世界(持续更新中) 🐻推荐专栏1: 🍔🍟🌯C语言初阶 🐻推荐专栏2: 🍔…

二进制分析工具-radare2使用教程

二进制分析工具-radare2使用教程 按照如下执行命令 按照如下执行命令 r2 -A 二进制文件

我为什么开始写技术博客

今天没有技术文章,只是想聊聊认真做CSDN和公众号以来的一些感想。 1.为什么开启技术分享 我不算是一个聪明的人,没有过目不忘的本事,所以从工作开始就养成了做笔记的习惯; 最开始15、16年做模型开发,那时候环境其实就…

*ST富吉-688272 三季报分析(20231117)

*ST富吉-688272 基本情况 公司名称:北京富吉瑞光电科技股份有限公司 A股简称:*ST富吉 成立日期:2011-01-20 上市日期:2021-10-18 所属行业:计算机、通信和其他电子设备制造业 周期性:1 主营业务&#xff1a…

23111702[含文档+PPT+源码等]计算机毕业设计javaweb高校宿舍管理系统寝室管理

文章目录 **软件开发环境及开发工具:****项目功能介绍:****论文截图:****实现:****代码片段:** 编程技术交流、源码分享、模板分享、网课教程 🐧裙:776871563 软件开发环境及开发工具&#xff…

Excel 文件比较工具 xlCompare 11.01 Crack

比较两个 Excel 文件之间的差异 xlCompare. xlCompare.com 是性能最佳的 Excel diff 工具,用于比较两个 Excel 文件或工作表并在线突出显示差异。xlCompare 包括免费的在线 Excel 和 CSV 文件比较服务以及用于比较和合并 Excel 文件的强大桌面工具。如果您想在线了…

STM32与ZigBee无线通信技术在工业自动化中的应用

工业自动化是指利用电子技术、计算机技术和通信技术等手段,对工厂、设备和生产过程进行自动化控制和管理的过程。在工业自动化中,可靠的无线通信技术对于实时数据的传输和设备的协同控制至关重要。本文将介绍STM32微控制器与ZigBee无线通信技术在工业自动…

MySQL 运算符二

逻辑运算符 逻辑运算符用来判断表达式的真假。如果表达式是真,结果返回 1。如果表达式是假,结果返回 0。 运算符号作用NOT 或 !逻辑非AND逻辑与OR逻辑或XOR逻辑异或 1、与 mysql> select 2 and 0; --------- | 2 and 0 | --------- | 0 | -…

python django 小程序商城源码

开发环境: PyCharm,mysql5.7,微信开发者工具 技术说明: python django html vue.js bootstrap 微信小程序 功能介绍: 用户端: 登录注册(含授权登录) 首页显示搜索商品(可根据…

SQL 的 AND、OR 和 NOT 运算符:条件筛选的高级用法

AND 运算符 SQL的AND运算符用于根据多个条件筛选记录,确保所有条件都为TRUE才返回记录。下面是AND运算符的基本语法: SELECT column1, column2, ... FROM table_name WHERE condition1 AND condition2 AND condition3 ...;column1, column2,等是您要选…

“具有分布式能源资源的多个智能家庭的能源管理的联邦强化学习”文章学习四——基于联邦深度学习的多智能家居能源管理

一、用于家庭能源管理的FRL算法 在本节中,我们将阐述提出的FRL算法(算法1),该算法以分布式方式调度多个智能家庭的能量消耗。在提出的FRL框架中,LHEMS和GS相互迭代并有效训练LHEMS的模型。我们考虑了由LHEMS控制的空调…

Python | 机器学习之SVM支持向量机

​🌈个人主页:Sarapines Programmer🔥 系列专栏:《人工智能奇遇记》🔖少年有梦不应止于心动,更要付诸行动。 目录结构 1. 机器学习之SVM支持向量机概念 1.1 机器学习 1.2 SVM支持向量机 2. SVM支持向量机…

这就是不创业的最大的原因,机器视觉兄弟们创业要谨慎,为什么99.99%机器视觉公司老板是销售人员?

机器视觉公司,99%公司实行销售优先原则,企业老板99%从销售人员中产生。所以机器视觉兄弟们创业要谨慎。 企业的本质就是通过销售获得利润的组织,销售是立足之本,没有销售,创业就是耍流氓。因此,企业的一切…

基于SpringBoot的SSMP整合案例(消息一致性处理与表现层开发)

消息一致性处理 在后端执行完相应的操作后,我们需要将执行操作后的结果与数据返回前端,前端 调用我们传回去的数据,前端是如何知道我们传回去的数据名称的? 答:前后端遵循了同一个"协议"。这个协议就是定义…

贝茄莱BR AS实时数据采集功能

实时数据采集功能在PLC系统调试过程中,有助于调试人员对变量变化进行监测,通过波形对比,反应不同变量间的相互作用。该测试目的在于验证贝加莱系统组态软件的实时数据采集功能。 贝加莱系统组态软件提供Trace功能,连接PLC&#x…

国产高云FPGA:OV5640图像视频采集系统,提供Gowin工程源码和技术支持

目录 1、前言免责声明 2、相关方案推荐国产高云FPGA相关方案推荐国产高云FPGA基础教程 3、设计思路框架视频源选择OV5640摄像头配置及采集动态彩条Video Frame Buffer 图像缓存DDR3 Memory Interface 4、Gowin工程详解5、上板调试验证并演示准备工作静态演示 6、福利&#xff1…

解锁OpenAI潜力:OpenAI 全面解析与最佳实践

该项目是由OpenAI公司提供的一个大型代码库,其中包含了各类与OpenAI API相关的代码示例和最佳实践。 此项目名为OpenAI Cookbook,目的是为了帮助使用者更有效地利用OpenAI API,将其应用于自己的工作和生活中。具体来说,可以解决一…

CF1899C Yarik and Array(DP,贪心)

题目链接 题目 A subarray is a continuous part of array. Yarik recently found an array a of n elements and became very interested in finding the maximum sum of a non empty subarray. However, Yarik doesn’t like consecutive integers with the same parity, s…

基于SpringBoot+Redis的前后端分离外卖项目-苍穹外卖(五)

公共字段自动填充 1.1 问题分析1.2 实现思路1.3 代码开发1.3.1 步骤一1.3.2 步骤二1.3.3 步骤三 1.4 功能测试 1.1 问题分析 在前面我们已经完成了后台系统的员工管理功能和菜品分类功能的开发,在新增员工或者新增菜品分类时需要设置创建时间、创建人、修改时间、修…

虹科示波器 | 汽车免拆检修 | 2015款奔驰G63AMG车发动机偶尔自动熄火

一、故障现象 一辆2015款奔驰G63AMG车,搭载157发动机,累计行驶里程约为9.4万km。车主反映,该车低速行驶时,发动机偶尔会自动熄火,故障大概1个星期出现1次。 二、故障诊断 接车后路试,故障未能再现。用故障检…