Micropython教程之TPYBoardv102 DIY蓝牙智能小车实例
1.实验目的
1.学习在PC机系统中扩展简单I/O接口的方法。
2.进一步学习编制数据输出程序的设计方法。
3.学习蓝牙模块的接线方法及其工作原理。
4.学习L298N电机驱动板模块的接线方法。
5.学习蓝牙控制小车的工作原理。
2.所需元器件
TPYBoard板子一块
蓝牙串口模块一个
L298N电机驱动板模块一个
智能小车底盘一个
数据线一条
杜邦线若干
3.蓝牙串口模块原理
(1)引出接口包括EN,5V,GND,TX,RX,STATE,我们小车只用到RX,TX,GND,5V四个针脚。
(2)模块默认波特率位9600,默认配对密码为1234,默认名称位为HC-06。
(3)led指示蓝牙连接状态,闪烁表示没有蓝牙连接,常亮表示蓝牙已连接并打开了端口,当我们用安卓手机软件发送指令时,通过串口给TPYBoard发送指令,TPYBoard收到指令通过L298BN模块来驱动小车前进,后退,向左,向右或者停止。
如下图接线,5V接TPYBoard的VIN,GND为地线,TX接TPYBoard的RX(这用的是TPYBoard串口2,X3,X4)即X4,RX接TPYBoard的TX即X3。
4.学习L298N电机驱动板模块的接线方法
本模块是2路的H桥驱动,所以可以同时驱动两个电机,接法如图所示使能ENAENB之后,可以分别从IN1IN2输入PWM信号驱动电机1的转速和方向,可以分别从IN3IN4输入PWM信号驱动电机2的转速和方向。我们将电机1接口的OUT1与OUT2与小车的一个电机的正负极连接起来,将电机2接口的OUT3与OUT2与小车的另一个电机的正负极连接起来。然后将两边的接线端子,即供电正极(中间的接线端子为接地)连接TPYboard的VIN,中间的接线端子即接地,连接TPYBoard的GND,In1-In4连接TPYBoard的Y1,Y2,Y3,Y4,通过Y1,Y2与Y3,Y4的高低电平,来控制电机的转动,从而让小车前进,后退,向左,向右。
接线ok后,编写main.py,给TOYBoard通电就ok了,下面是源代码。
5.源代码
import pyb
from pyb import UART
from pyb import PinM2 = Pin('X3', Pin.IN)
M3 = Pin('X4', Pin.IN)
N1 = Pin('Y1', Pin.OUT_PP)
N2 = Pin('Y2', Pin.OUT_PP)
N3 = Pin('Y3', Pin.OUT_PP)
N4 = Pin('Y4', Pin.OUT_PP)u2 = UART(2, 9600)while True:pyb.LED(2).on()pyb.LED(3).on()pyb.LED(4).on()_dataRead=u2.readall()if _dataRead!=None:#停止(读取手机APP传过来的指令,不同的软件指令可能不同,可以自己设定,在这里是默认的,下同)if(_dataRead.find(b'\xa5Z\x04\xb1\xb5\xaa')>-1):print('stop')N1.low()N2.low()N3.low()N4.low()#向左elif(_dataRead.find( b'\xa5Z\x04\xb4\xb8\xaa')>-1):print('left')N1.low()N2.high()N3.high()N4.low()#向右elif(_dataRead.find( b'\xa5Z\x04\xb6\xba\xaa')>-1):print('right')N1.high()N2.low()N3.low()N4.high()#后退elif(_dataRead.find(b'\xa5Z\x04\xb5\xb9\xaa')>-1):print('back')N2.high()N1.low()N4.high()N3.low()#向前 elif(_dataRead.find( b'\xa5Z\x04\xb2\xb6\xaa')>-1):print('go')N1.high()N2.low()N3.high()N4.low()
转载于:https://www.cnblogs.com/xxosu/p/7544245.html
Micropython教程之TPYBoardv102 DIY蓝牙智能小车实例相关推荐
- Micropython教程之TPYBoard制作蓝牙+红外循迹小车
1.实验目的 学习在PC机系统中扩展简单I/O接口的方法. 进一步学习编制数据输出程序的设计方法. 学习蓝牙模块的接线方法及其工作原理. 学习L298N电机驱动板模块的接线方法. 学习蓝牙控制小车的工 ...
- Micropython教程之TPYBoard DIY金属探测仪实例演示(萝卜学科编程教育)
1.实验目的 1. 学习在PC机系统中扩展简单I/O?接口的方法. 2. 进一步学习编制数据输入输出程序的设计方法. 3. 学习LJ12A3-4-Z/BX 金属接近开关的工作原理. 4. 硬件接线方法 ...
- Micropython教程之TPYBoard DIY电子时钟(萝卜学科编程教育)
1.实验目的 1. 学习在PC机系统中扩展简单I/O?接口的方法. 2. 什么是SPI接口. 3. 学习TPYBoard I2C接口的用法. 4. 学习LCD5110接线方法. 5. 设定时钟并将当前 ...
- 最简单DIY基于STM32单片机的蓝牙智能小车设计方案
STM32库函数开发系列文章目录 第一篇:STM32F103ZET6单片机双串口互发程序设计与实现 第二篇:最简单DIY基于STM32单片机的蓝牙智能小车设计方案 文章目录 STM32库函数开发系列文 ...
- 最简单DIY蓝牙PS2遥控器控制蓝牙智能小车
51单片机物联网智能小车系列文章目录 第一篇:最简单DIY的51蓝牙遥控小车设计方案 第二篇:最简单DIY串口蓝牙硬件实现方案 第三篇:最简单DIY蓝牙PS2遥控器控制蓝牙智能小车 文章目录 51单片 ...
- 基于stm32蓝牙智能小车设计
前言: 本文描述了一个由STM32微处理器.步进电机.蓝牙,L298N等模块构成的.该系统采用STM32微处理器为核心,在MDK环境下进行编程,通知控制L298N模块IN1~IN4引脚的高低电平进而控 ...
- 基于STC15W408AS蓝牙智能小车
简介 本文主要讲述笔者从零开始做蓝牙智能车的全部经历,适合刚学完51单片机基础的同学参考进阶. 元件介绍 因为本人已工作,手边很多工具不全,所以买了模块组装,电路原理很简单,整个制作过程感觉主要在程序 ...
- 基于单片机智能灯光光控照明系统设计、基于单片机HX711电子秤自动计价系统设计、基于单片机GPRS远程测控系统设计、基于单片机多功能循迹避障无线遥控蓝牙智能小车-设计资料
基于单片机智能灯光光控照明系统设计 智能光控照明系统设计原理: 本系统采用STC89C52系列的单片机为核心,利用BH1750传感器测量实时光照强度,并将亮度的模拟信号转化成数字信号,大大减少了系统的 ...
- 基于单片机HX711电子秤自动计价系统设计-基于单片机GPRS远程测控系统设计-818基于单片机循迹避障无线遥控蓝牙智能小车-基于单片机24s倒计时篮球积分器系统-基于单片机智能洗衣机控制系统
816基于单片机HX711电子秤自动计价系统设计 本设计使用高精度电阻应变式压力传感器,用A/D转换器HX711(HX711数据手册)对传感器信号进行调理转换.AT89s52(AT89s52数据手册) ...
最新文章
- OpenWebSpider 安装使用
- 更新elementui图标不显示_超简单elementui主题及变量修改方案
- Kotlin 学习笔记01
- 计算机系统基础 南京大学,计算机系统基础(一):程序的表示、转换与链接
- Android回调的简单理解
- java连接linux服务器执行shell命令(框架分析+推荐)
- C++ CGI Helloword
- Android文件操作
- glide 压缩图拍呢_用Glide-图片的压缩-图片压缩原理
- JAVA中的native
- 第四次作业:猫狗大战挑战赛
- 不写一行代码,搭建Jenkins+Jmeter+Ant接口自动化框架
- Azure上七层负载均衡APP Gateway
- python俄罗斯方块代码34行_Python:游戏:300行代码实现俄罗斯方块
- 等级保护第三级安全通用要求笔记(2019)
- 【矩阵乘法】外部矩阵乘法
- CSS去掉border框的方法
- ILSVRC-2015 ILSVRC-2017VID数据集下载
- 如何在职场上获得良好的起点
- 【AI视野·今日CV 计算机视觉论文速览 第235期】Mon, 27 Sep 2021
热门文章
- 搜狗高速浏览器提示您 怎么关闭_那些浏览器中的快捷键们
- css电视适配,CSS3 巨大的投影电视屏幕
- 配置syslog发送_nginx简单配置优化概述
- Lex-BERT:超越FLAT的中文NER模型?
- linux使用总结一
- KMP算法之 好理解的模板
- js排序的时间复杂度_JavaScript插入排序算法通俗说明
- CenOS7中使用Docker安装配置Redis(数据持久化与数据卷映射)
- Three.js中显示坐标轴、平面、球体、四方体
- Dubbo搭建HelloWorld-搭建服务提供者与服务消费者并完成远程调用(附代码下载)