文档章节

[Micropython]TPYBoard DIY蓝牙智能小车

bodasisiter
 bodasisiter
发布于 2017/06/28 17:30
字数 825
阅读 18
收藏 0

1.实验目的

   1. 学习在PC机系统中扩展简单I/O 接口的方法。

   2. 进一步学习编制数据输出程序的设计方法。

   3. 学习蓝牙模块的接线方法及其工作原理。

   4. 学习 L298N电机驱动板模块的接线方法。

   5. 学习蓝牙控制小车的工作原理。

2.所需元器件

   TPYBoard板子一块

   蓝牙串口模块一个

   L298N电机驱动板模块一个

   智能小车底盘一个

   数据线一条

   杜邦线若干

详细教程及更多例程可参考:http://www.tpyboard.com

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桥驱动,所以可以同时驱动两个电机,接法如图所示使能ENA ENB之后,可以分别从IN1 IN2输入PWM信号驱动电机1的转速和方向,可以分别从IN3 IN4输入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 Pin

M2 = 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()

详细教程及更多例程可参考:http://www.tpyboard.com

© 著作权归作者所有

共有 人打赏支持
bodasisiter
粉丝 19
博文 186
码字总数 172950
作品 0
潍坊
私信 提问
MicroPython新货上架【TPYBoard新品合集】你想要的好玩意儿全在这!

八月火力全开! TPYBoard一大波新品隆重上市! 一次次的研发、尝试 无数次的改进、优化 新品强势来袭 发烧友们期待已久的 STM32F407系列也已全新上线啦~ 1.STM32F407开发板 https://item.tao...

bodasisiter
2018/08/21
0
0
MicroPython入门:能跑MicroPython开发板大盘点!

相信对于很多刚刚接触MicroPython的DIY创客来说,首先是被一些大神的作品吸引,然后有冲动自己动手,却发现入门很难,特别是面对各式各样的开发板不知如何选择。目前市面上关于MicroPython开...

bodasisiter
2018/07/06
0
0
MicroPython入门|开发板种类那么多,哪块才适合你玩?

  相信对于很多刚刚接触MicroPython的DIY创客来说,首先是被一些大神的作品吸引,然后有冲动自己动手,却发现入门很难,特别是面对各式各样的开发板不知如何选择。目前市面上关于MicroPyth...

bodasisiter
2017/06/20
0
0
MicroPython支持的开发板:高性能、低成本会python就能做创客

Python的开放、简洁、黏合正符合了现发展阶段对大数据分析、可视化、各种平台程序协作产生了快速的促进作用。自Python3的发布到现在已有五六年的时间,从刚发布的反对声音到慢慢被接受与喜欢...

bodasisiter
2017/04/11
1
0
Python玩转单片机:从基础到进阶,几款主流的开发板大盘点!

Python俨然已成为当下最热门的编程语言(可以说没有之一)。Python火到什么程度?它将被加入小学生教材,纳入高考,估计在不远的将来可能会成为一项常用的技能。 学习python能做什么? 可以快...

bodasisiter
2018/09/05
0
0

没有更多内容

加载失败,请刷新页面

加载更多

跟我学Spring Cloud(Finchley版)-15-Hystrix监控详解

Hystrix提供了监控Hystrix Command的能力,本节来详细探讨。 监控端点与数据 应用整合Hystrix,同时应用包含spring-boot-starter-actuator 依赖,就会存在一个/actuator/hystrix.stream 端点...

周立_ITMuch
26分钟前
2
0
Android Studio jni开发入门——看我就够了

一、环境配置 主要需要配置的就是NDK(Native Development Kit),现在Android studio很便利,可以一键下载: file → setting → 按截图找到如下路径 → 选择NDK → 确定应用下载 NDK安装 ...

天王盖地虎626
27分钟前
1
0
day26:shell题

1、 判断当前主机的CPU生产商,其信息在/proc/cpuinfo文件中vendor id一行中。 如果其生产商为AuthenticAMD,就显示其为AMD公司; 如果其生产商为GenuineIntel,就显示其为Intel公司; 否则,...

芬野de博客
36分钟前
1
0
iOS开发之CoreMotion框架的应用

iOS开发之CoreMotion框架的应用 我们知道,现在智能手机手机的功能已经越来越强大。小小的手机中集成了众多的传感器配件。通过这些传感器可以获取到手机甚至用户的状态信息。 在iOS5之前,加...

珲少
39分钟前
1
0
python里能不能用中文

现代计算机和编程的起源和推动力量主要源自美国,再加上26个字母很便于表示(算上大小写,6位bit就够了),因此英语一直是编程领域的不二之选。但这就给部分非英语国家的编程学习者带来一些困...

crossin
40分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部