Мазмуну:

MicroPython программасы: Чөйрөнүн көлөмүн көрсөтүү: 9 кадам
MicroPython программасы: Чөйрөнүн көлөмүн көрсөтүү: 9 кадам

Video: MicroPython программасы: Чөйрөнүн көлөмүн көрсөтүү: 9 кадам

Video: MicroPython программасы: Чөйрөнүн көлөмүн көрсөтүү: 9 кадам
Video: Урок 2. ESP32 MicroPython. Первая программа. 2024, Ноябрь
Anonim

Бул эксперимент ESP8266 боюнча MicroPython программалоону үйрөнүүгө мүмкүндүк берген MakePython ESP8266 модулун колдонот. Эксперимент потенциометрди айландыруу менен экрандын тегерегинин көлөмүн көзөмөлдөдү. Бул процессте биз ADC, SSD1306 OLED дисплейи жана uPyCraft IDEнин колдонулушу жөнүндө билебиз.

1 -кадам: ADC жана I2C жөнүндө

ADC жана I2C жөнүндө
ADC жана I2C жөнүндө

ADC: ADC - бул аналогдук сигналдарды санарипке айландыруучу аналогдук/сандык конвертер. Алдыңкы башкаруу LEDинде, PWM ичинде, биз санариптик сигнал менен аналогдук сигналдын айырмасын билебиз. Күнүмдүк жашоодо колдонгон сигналдар, мисалы, жарыктын күчү, үн толкундары жана батареянын чыңалуусу, баары аналогдук баалуулуктар. Эгерде биз аналогдук сигналды (чыңалуу, жарык интенсивдүүлүгү, үн толкуну) бир чиптүү микрокомпьютер аркылуу өлчөп, аны санарип сигнал менен билдиргибиз келсе, анда бизге ADC аналогдук санарип сигналынын конвертери керек.

I2C байланышы: I2C кеңири түрдө сенсорлор/ дисплейлер сыяктуу борттогу компоненттер менен байланышуу үчүн колдонулат. Маалыматты берүү эки сигналдык линия менен гана аткарылышы мүмкүн, тиешелүүлүгүнө жараша SCL жана SDA сигнал линиясы. I2C линиясында бир гана негизги түзмөк Мастер жана бир нече Slave түзмөктөрү бар. Эки автобус тең бош турганда жогорку деңгээлде болушун камсыз кылуу үчүн SDA жана SCL тартылуу каршылыгы менен туташтырылышы керек. Тартуу каршылыгынын классикалык мааниси 10К.

2 -кадам: Берилиштер

Жабдуулар
Жабдуулар

Аппараттык:

  • MakePython ESP8266
  • Потенциометр
  • Нан тактасы
  • Секирүү сызыгы
  • USB кабели

MakePython ESP8266: MakePython тактасында 128x64 пикселдүү OLED 1.3 'OLED модулу бар … Монохромдуу экрандын бир пиксели-жарык чыгаруучу диод. OLED-бул "өзүн-өзү жарыктандыруу", пикселдин өзү жарык булагы, ошондуктан контраст абдан жогору. OLED экрандарда I2C жана SPI байланыш протоколдору бар, алар ар кандай протоколдорго байланыштуу таптакыр шайкеш келбейт. Биздин сабакта OLED I2C протоколу менен шайкеш келтирилген. Модулду сатып алуу шилтемеси:

Потенциометр: Потенциометр - бул үч варианттуу мыйзамга ылайык жөнгө салынуучу үч алдыңкы учу жана каршылык мааниси бар жөнгө салынуучу резистор. Потенциометр, адатта, резистордук денеден жана кыймылдуу щеткадан турат. Чотка каршылык корпусун бойлой жылганда, жылышка карата каршылыктын мааниси же чыңалуусу чыгуунун аягында алынат.

Программалык камсыздоо:

uPyCraft IDE

MicroPython менен көптөгөн коддор жана программалоо ыкмалары бар. Бул үйрөткүч үчүн, MicroPythonго өтүүнү баштоонун эң жөнөкөй жана оңой жолу uPyCraft IDE колдонобуз.

3 -кадам: Кабелдөө

Электр өткөргүчтөрү
Электр өткөргүчтөрү
Электр өткөргүчтөрү
Электр өткөргүчтөрү
Электр өткөргүчтөрү
Электр өткөргүчтөрү

Бул абдан аз схема, өтө аз зымдарды талап кылат, болгону үчөө. Жөн эле потенциометрдин VCC пинин 3.3v MakePython ESP8266га, ал эми OUT пинди (ортодо) A0го туташтырыңыз жана GNDди бири -бириңизге туташтырыңыз. OLED дисплей I2C байланышын колдонот жана такта зым менен жабдылган, андыктан бул жөнүндө кабатыр болбоңуз.

4 -кадам: UPyCraft IDE Windows PC орнотуу

Windows PC UPyCraft IDE орнотуу
Windows PC UPyCraft IDE орнотуу
Windows PC UPyCraft IDE орнотуу
Windows PC UPyCraft IDE орнотуу

Windows үчүн uPyCraft IDE жүктөө үчүн бул шилтемени басыңыз:

randomnerdtutorials.com/uPyCraftWindows.

Бир нече секунддан кийин, сиз окшош файлды (uPyCraft_VX.exe) Папкаларыңыздан көрүшүңүз керек

Ал файлды эки жолу чыкылдатыңыз. Жаңы терезе uPyCraft IDE программасы менен ачылат.

5 -кадам: Башкармалык менен байланыш түзүү

Башкармалык менен байланыш түзүү
Башкармалык менен байланыш түзүү

MicroPython камтылган программасын орноткондон кийин (MicroPython Firmware Makerfabs MakePython ESP8266 алганда мурунтан эле орнотулган), аны компьютериңизге USB кабели аркылуу туташтырып, кадамдарды аткарыңыз:

  • Куралдар> Тактага өтүп, колдонуп жаткан тактаны тандаңыз. Esp8266 тандаңыз
  • Куралдар> Сериалга өтүңүз жана ESP туташкан портту тандаңыз (USB драйверин жүктөп алыңыз:

www.silabs.com/products/development-tools/software/usb-to-uart-bridge-vcp-drivers)

Тактаңыз менен сериялык байланыш түзүү үчүн Туташуу баскычын басыңыз.

Сиз ">>>" панелиңиз менен ийгиликтүү туташкандан кийин Shell терезесинде пайда болорун көрөсүз.

6 -кадам: Тактаңызда Main.py файлын түзүү

Тактаңызда Main.py файлын түзүү
Тактаңызда Main.py файлын түзүү
Тактаңызда Main.py файлын түзүү
Тактаңызда Main.py файлын түзүү
  • Жаңы файл түзүү үчүн "Жаңы файл" баскычын басыңыз.
  • Файлды компьютериңизге сактоо үчүн "Файлды сактоо" баскычын басыңыз.
  • Жаңы терезе ачылат, файлыңызга main.py деп ат коюп, аны компьютериңизде сактаңыз.
  • Андан кийин, сиз түзмөгүңүздө boot.py файлын жана main.py файлы бар жаңы өтмөктү көрүшүңүз керек.
  • Файлды ESP тактасына жүктөө үчүн "Жүктөө жана иштетүү" баскычын чыкылдатыңыз.
  • Түзмөк каталогу азыр main.py файлын жүктөшү керек. Сиздин ESP файлыңыз main.py сакталган.

7 -кадам: Драйвер файлын кошуу

OLED экраны SSD1306 драйвер чипин колдонгондуктан, биз SSD1306 драйверин жүктөп алышыбыз керек. Сиз GitHub веб -сайтына кирип, SSD1306 китепканасын жүктөп алсаңыз болот же биздин ssd1306.py драйвер файлын жүктөө үчүн чыкылдатыңыз.

Жүктөп алгандан кийин, ssd1306.py файлын workSpace каталогуна сактаңыз. Андан кийин, ssd1306.py файлын ачууну жана иштетүүнү чыкылдатыңыз, жана китепкана файлын түзмөк каталогуна жүктөөгө болот. Бул убакта ssd1306.py китепканасынын файлы MakePython ESP8266га ийгиликтүү жүктөлдү, аны ssd1306 импорту деп атоого болот.

*Эскертүү: uPyCraft IDEди биринчи жолу ачканыңызда, workSpace жолу жок. Сиз чыкылдатсаңыз, workSpace диалог терезеси калкып чыгат. Сиз сактоону каалаган каталогду тандоо менен колдонуучунун файлдарын сактоо үчүн workSpace каталогун түзө аласыз.

8 -кадам: Негизги функция

Негизги функция
Негизги функция
Негизги функция
Негизги функция

Грамматикалык түшүндүрмө:

  • i2c: SCL жана SDA казыктарын конфигурациялоо
  • oled: OLED объектисин түзүү
  • adc.read (): ADC үлгүлүү маалыматтарды окуу
  • Circle (): Айлананын радиусун эсептөө үчүн sqrt () функциясын колдонгон ыңгайлаштырылган тегерек функциясы
  • math.sqrt (r): Саннын квадрат түбірүн кайтарат
  • пиксел (x, y, c): (x, y) чекитин чийиңиз
  • hline (x, y, w, c): (x, y) баштап узундугу w менен башталган горизонталдык сызыкты тартыңыз
  • vline (x, y, w, c): (x, y) баштап, w бийиктиги бар тик сызыкты чийиңиз
  • oled.fill (n): n = 0 болгондо экранды бошотуп, n> 0 болгондо экранды толтуруңуз
  • oled.show (): дисплей функциясын күйгүзүү

Сиз бул файлды түздөн -түз кошо аласыз же анын мазмунун жаңы түзүлгөн негизги файлга көчүрө аласыз.

9 -кадам: Эксперименталдык жыйынтыктар

Эксперименталдык жыйынтыктар
Эксперименталдык жыйынтыктар

Потенциометрди акырын, сааттын жебеси боюнча буруңуз, экрандын айланасы чоңоет, сааттын жебесине каршы.

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