久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2311|回復: 0
收起左側

Micropython教程之TPYBoardv102 DIY藍牙智能小車實例

[復制鏈接]
ID:130183 發表于 2017-9-18 17:24 | 顯示全部樓層 |閱讀模式
  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。

1.png


  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的高低電平,來控制電機的轉動,從而讓小車前進,后退,向左,向右。

2.jpg


  接線ok后,編寫main.py,給TOYBoard通電就ok了,下面是源代碼。

  5.源代碼

3.jpg
  1. import pyb
  2. from pyb import UART
  3. from pyb import Pin

  4. M2 = Pin('X3', Pin.IN)
  5. M3 = Pin('X4', Pin.IN)
  6. N1 = Pin('Y1', Pin.OUT_PP)
  7. N2 = Pin('Y2', Pin.OUT_PP)
  8. N3 = Pin('Y3', Pin.OUT_PP)
  9. N4 = Pin('Y4', Pin.OUT_PP)

  10. u2 = UART(2, 9600)

  11. while True:
  12.     pyb.LED(2).on()
  13.     pyb.LED(3).on()
  14.     pyb.LED(4).on()
  15.     _dataRead=u2.readall()
  16.     if _dataRead!=None:
  17.     #停止(讀取手機APP傳過來的指令,不同的軟件指令可能不同,可以自己設定,在這里是默認的,下同)
  18.         if(_dataRead.find(b'\xa5Z\x04\xb1\xb5\xaa')>-1):
  19.             print('stop')
  20.             N1.low()
  21.             N2.low()
  22.             N3.low()
  23.             N4.low()
  24.         #向左
  25.         elif(_dataRead.find( b'\xa5Z\x04\xb4\xb8\xaa')>-1):
  26.             print('left')
  27.             N1.low()
  28.             N2.high()
  29.             N3.high()
  30.             N4.low()
  31.         #向右
  32.         elif(_dataRead.find( b'\xa5Z\x04\xb6\xba\xaa')>-1):
  33.             print('right')
  34.             N1.high()
  35.             N2.low()
  36.             N3.low()
  37.             N4.high()
  38.         #后退
  39.         elif(_dataRead.find(b'\xa5Z\x04\xb5\xb9\xaa')>-1):
  40.             print('back')
  41.             N2.high()
  42.             N1.low()
  43.             N4.high()
  44.             N3.low()
  45.         #向前   
  46.         elif(_dataRead.find( b'\xa5Z\x04\xb2\xb6\xaa')>-1):
  47.             print('go')
  48.             N1.high()
  49.             N2.low()
  50.             N3.high()
  51.             N4.low()
復制代碼



回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 男女免费观看在线爽爽爽视频 | 久久av一区 | 亚洲精品日韩在线观看 | 国产免费视频 | 伊人久久精品 | 久久国产精品无码网站 | 日韩成人免费视频 | 亚洲男人的天堂网站 | 日本在线综合 | 亚洲日本成人 | 久久精品国产一区老色匹 | 欧美亚洲视频 | 欧美专区在线 | 国产成人一区二区三区精 | 国产精品一区在线观看 | 中文字幕精品一区 | 91精品国产自产在线老师啪 | 日本福利片 | 免费超碰 | 亚洲va国产日韩欧美精品色婷婷 | 成人午夜网站 | 黄色大片免费网站 | 久久久一二三 | 国产精品视频免费观看 | 久久精品亚洲 | 久久av网站 | 国产一区二区影院 | 毛片久久久| jlzzjlzz欧美大全 | 日干夜干 | 午夜精品久久久久久久99黑人 | 视频一区二区中文字幕日韩 | 国产伦精品一区二区三区高清 | 一区二区三区国产好 | 午夜天堂精品久久久久 | 亚洲午夜精品视频 | 午夜免费在线观看 | 国产高清在线精品 | 日韩在线播放一区 | 日本a在线| 欧美一卡二卡在线 |