Съдържание:

MicroPython на SPIKE Prime: 12 стъпки
MicroPython на SPIKE Prime: 12 стъпки

Видео: MicroPython на SPIKE Prime: 12 стъпки

Видео: MicroPython на SPIKE Prime: 12 стъпки
Видео: Running micropython on the Lego Spike Prime hub 2024, Юли
Anonim
MicroPython на SPIKE Prime
MicroPython на SPIKE Prime

Можете да кодирате SPIKE Prime с помощта на MicroPython, който е подмножество на python за малки микропроцесори.

Можете да използвате всеки терминален емулатор, за да кодирате центъра на SPIKE Prime.

Консумативи

SPIKE Prime хъб

Компютър с USB порт / bluetooth

USB кабел за свързване на хъба към компютъра

Стъпка 1: Вземете терминален емулатор

Вземете терминален емулатор
Вземете терминален емулатор
Вземете терминален емулатор
Вземете терминален емулатор

Има много възможности за избор.

CoolTerm работи на всички платформи, включително Pi

Шпакловката работи върху прозорците

команда на екрана в терминал на Unix операционна система

Стъпка 2: Свържете SPIKE Prime към USB порта

Свържете SPIKE Prime към USB порта
Свържете SPIKE Prime към USB порта
Свържете SPIKE Prime към USB порта
Свържете SPIKE Prime към USB порта

Използвайте microUSB кабел, за да свържете SPIKE Prime към компютъра.

Стъпка 3: Намерете порта

Намерете пристанището
Намерете пристанището
Намерете пристанището
Намерете пристанището

Трябва да знаем към кой сериен порт е свързан хъбът SPIKE Prime.

На mac въведете

ls /dev/tty.usbmodem*

На компютър погледнете в мениджъра на устройството си под сериен, за да видите какви серийни портове сте свързали

На pi това ще бъде нещо като ttyAMC0 - проверете във вашата /dev /папка

Стъпка 4: Свържете се

Свържете се
Свържете се
Свържете се
Свържете се

Свържете се до десния порт (от предишната стъпка) на 115200 бода

В Terminal въведете

потребителски компютър $ screen / dev / 115200

В друга IDE, натиснете Open/ connect (след настройка на портовете и скоростта на предаване)

Забележка: без паритет, 8 бита данни и 1 стоп бит

Стъпка 5: Стартиране на REPL

Стартиране на REPL
Стартиране на REPL
Стартиране на REPL
Стартиране на REPL
Стартиране на REPL
Стартиране на REPL

Когато се свържете към SPIKE Prime от терминала/ PUTTY, ще видите поток от цифри и знаци. Това са данни от вътрешни сензори на SPIKE Prime хъб. За да започнете, натиснете control + c

Това ще прекъсне серийния порт и трябва да видите нещо подобно.

MicroPython v1.9.4-1146-gca9944357 на 2019-09-25; LEGO Technic Голям хъб със STM32F413xx Въведете „help ()“за повече информация.

Сега сте готови да кодирате.

Стъпка 6: Вашият първи код

Вашият първи код
Вашият първи код

център за импортиране

hub.display.show („кичури“)

Забележете командата „import“- която привлича библиотека на python, която ви позволява да говорите със SPIKE Prime. Трябва да видите Tufts, написани върху LED матрицата на главината.

Стъпка 7: Покажете името си

сега опитайте да пишете

hub.display.show ('')

имайте предвид, че тъй като вече сте импортирали хъб по -горе, той вече е в паметта. Ако не беше, ще получите грешка като:

Обратно проследяване (последно последно повикване): Файл "", ред 1, inNameError: името 'hub' не е дефинирано

Стъпка 8: Използване на REPL

Един от най -мощните атрибути на Python е, че можете да тествате всичко, преди да напишете код в REPL (прочетете eval print loop).

Той ще изпълни всяка команда на python - опитайте да напишете 2 + 2 по -долу и вижте какво пише:

2+2

Стъпка 9: Проучване на MicroPython на SPIKE Prime

Сега е време за проучване.

hub има много функции - можете да разберете, като просто напишете „hub“. (не забравяйте периода след концентратора) и след това натискане на клавиша TAB в REPL. Това ще ви покаже всички различни начини, по които можете да изпълните командата.

Предизвикателство: Вижте дали можете да прочетете ускорението.

Стъпка 10: Четене на сензорните стойности … 1

Данните за ускорението се връщат като масив от стойности. така че ако просто искате стойността X, можете да опитате

hub.motion.accelerometer () [0]

или по -добър начин да кодирате това би било да използвате променливи като тази:

център за импортиране

accel = hub.motion.accelerometer () xAccel = accel [0] hub.display.show (str (xAccel))

Стъпка 11: Четене на сензорните стойности … 2

Отчитане на стойностите на сензора … 2
Отчитане на стойностите на сензора … 2

Можете също така да покажете и трите ускорения, като използвате цикъл.

Също така ще импортираме библиотеката utime, за да можем да направим пауза и да ви дадем време да прочетете номера на екрана.

Опитайте този код:

внос хъб, utimeaccel = hub.motion.accelerometer () за Acc в accel: hub.display.show (str (Acc)) utime.sleep (0.8)

На този етап няколко неща стават важни:

интервали - Python е свързан с отстъпване вдясно - подобно на скобите в други езици, отстъпът ви казва какво е вътре в цикъла for и кое не.

когато използвате REPL, ще забележите, че когато отстъпвате, той вече не изпълнява реда, а по -скоро чака да завършите редовете за цикъла for преди изпълнение (и >>> се заменя с …). За да завършите цикъла for, просто натиснете return три пъти и цикълът ще бъде изпълнен.

Стъпка 12: Предизвикайте

След това вижте дали можете да разберете какво прави кодът по -долу - и опитайте да го изпълните, за да видите дали сте прави.

внос хъб, utime

докато True: accel = hub.motion.accelerometer () за Acc в accel: hub.display.show (str (Acc)) utime.sleep (0.8), ако hub.port. B.device.get (): break

Съвет -имате нужда от сензор на порт В.

Препоръчано: