Мазмуну:

CircuitPython жана TinyLiDAR: Жөнөкөй мисал: 3 кадам
CircuitPython жана TinyLiDAR: Жөнөкөй мисал: 3 кадам

Video: CircuitPython жана TinyLiDAR: Жөнөкөй мисал: 3 кадам

Video: CircuitPython жана TinyLiDAR: Жөнөкөй мисал: 3 кадам
Video: Веб-сервер ESP32 MicroPython 2024, Ноябрь
Anonim
CircuitPython жана TinyLiDAR: Жөнөкөй мисал
CircuitPython жана TinyLiDAR: Жөнөкөй мисал

MicroElectronicDesign tinyLiDAR-бул i2c автобус туташуусу бар ST VL53L0X негизиндеги учуу убактысынын (ToF) модулу. Adafruit микроконтроллер такталары бул сенсорго оңой туташат, анткени алар i2c протоколун маалымат түйүндөрүнүн үстүндө сүйлөй алышат.

M0/M4 сериясынын башка такталардан артыкчылыгы бар, анткени алар Pythonдун бир бөлүгүн колдошот, бул программалоону Arduinoдогу Cге караганда кеңири аудиторияга жеткиликтүү кылат. Бул tinyLiDARдан алыстыктын маанилерин окуу үчүн Gemma M0 тактасындагы CircuitPython аркылуу жөнөкөй мисал жана борттогу RGB LED жарыгын өзгөртүү менен аралыкты көрсөтөт. Питон колдоо үчүн такта M0 версиясы болушу керек.

Эскертүү: Adafruit ошондой эле VL53L0Xке негизделген ар кандай аралыкты аныктоочу такталарды жасайт.

1 -кадам: CircuitPython коду

  1. Lib/adafruit_dotstar.mpy жана lib/adafruit_bus_device/i2c_device.mpy жүктөп алыңыз, эгерде алар жок болсо. Булар кошумча китепкананын бир бөлүгү, буларды кантип орнотуу керектигин билүү үчүн CircuitPython I2Cдин биринчи бөлүмүн караңыз. Бул файлдар Gemma M0догу lib жана lib/adafruit_bus_device каталогдорунда болушу керек.
  2. Gemma-m0-tinylidar-simple.py жүктөп алыңыз, анын атын main.py деп өзгөртүп, Gemma M0 түп каталогуна көчүрүңүз.

Программа сериялык консолго чыгарууну жазат, ошондой эле Gemma MO RGB LEDинин жарыктыгын окуган аралыкка пропорционалдуу түрдө өзгөртөт. Окуу үчүн Gemma M0 жетектөөчү жана өчүргүчтөрдүн алмашуусу болжол менен 5 Гцте жаркырайт жана tinyLiDAR тактасынын демейки жүрүм -туруму 10 Гцте анын көк жетегин жаркырат.

Автобус 100 кГцте иштейт, бул жакшы иштейт. Башка автобустар сыяктуу эле, байланыш ылдамдыгы байланыш ылдамдыгы электр берүү линияларынын өзгөчөлүктөрү менен чектелет, андыктан анын узундугуна, сыйымдуулугуна жана башка факторлорго көңүл буруу керек.

2 -кадам: TinyLiDARди Gemma M0 менен туташтыруу

TinyLiDAR'ди Gemma M0 менен туташтыруу
TinyLiDAR'ди Gemma M0 менен туташтыруу

Сүрөт tinyLiDARди Gemma M0 тактасына туташтыруу үчүн эффективдүү, бирок саркеч убактылуу орнотууну көрсөтөт. TinyLiDARдин "Grove" 4pin универсалдуу туташтыргычы Gemma M0 менен туташуу үчүн Seeed Grove конверсиялык кабели, запастык баш жана крокодил клиптер аркылуу колдонулат. Баштагы казыктардын ортосундагы айрым айырмачылык байкалбай калган кыска коркунучун жок кылат. Байланыштар төмөнкүлөр:

  • Кара: gnd to gnd
  • Кызыл: +Vдан 3Vo чейин
  • Ак: SDAдан D0га чейин (маалыматтар)
  • Сары: SCLден D2ге чейин (саат)

Adafruit такталарында i2c протоколун аппараттык түрдө натыйжалуу колдогон кээ бир төөнөгүчтөр бар. Gemma M0 учурда, буларды колдонуу керек, D0 маалыматтар үчүн жана D2 саат үчүн.

I2c автобусу маалыматтар жана саат линиялары боюнча тартылуучу каршылыкты талап кылат. Бул учурда, tinyLiDAR кээ бир 4.7K борттогу резисторлорду камсыз кылат. Эгерде булар сызыктарды кесүү менен чынжырдан алынып салынса, анда эквиваленттерди схемага кошуу керек.

3 -кадам: Сериялык чыгаруу

Сериялык чыгаруу
Сериялык чыгаруу

Программа ченелген аралыкты көрсөтүүчү сериялык консолго жазууну чыгарат, бул жерде сенсордон алыстап бара жаткан объектини көрсөткөн терминалдын скриншоту.

Сунушталууда: