Мазмуну:

MicroPython SPIKE Prime: 12 кадам
MicroPython SPIKE Prime: 12 кадам

Video: MicroPython SPIKE Prime: 12 кадам

Video: MicroPython SPIKE Prime: 12 кадам
Video: How to program SPIKE Prime with Python over Bluetooth - Swinging Monkey 2024, Ноябрь
Anonim
SPIKE Prime боюнча MicroPython
SPIKE Prime боюнча MicroPython

Сиз кичинекей микропроцессорлор үчүн python топтому болгон MicroPython аркылуу SPIKE Prime кодун коё аласыз.

Сиз SPIKE Prime борборун коддоо үчүн каалаган терминалдык эмуляторду колдоно аласыз.

Жабдуулар

SPIKE Prime борбору

USB порт / bluetooth менен компьютер

Хабды компьютерге туташтыруу үчүн USB кабели

1 -кадам: Терминал эмуляторун алыңыз

Терминал эмуляторун алыңыз
Терминал эмуляторун алыңыз
Терминал эмуляторун алыңыз
Терминал эмуляторун алыңыз

Тандоо үчүн көптөгөн варианттар бар.

CoolTerm Pi, анын ичинде бардык платформаларда иштейт

Putty терезелерде иштейт

unix иштетүү системиндеги Терминалда экран буйругу

2 -кадам: SPIKE Prime'ди USB портуна туташтырыңыз

USB портуна SPIKE Prime туташтырыңыз
USB портуна SPIKE Prime туташтырыңыз
USB портуна SPIKE Prime туташтырыңыз
USB портуна SPIKE Prime туташтырыңыз

SPIKE Primeди компьютерге туташтыруу үчүн microUSB кабелин колдонуңуз.

3 -кадам: Портту табыңыз

Портту табуу
Портту табуу
Портту табуу
Портту табуу

Биз SPIKE Prime борбору кайсы сериялык порт менен туташып турганын билишибиз керек.

Macка териңиз

ls /dev/tty.usbmodem*

Компьютерде, кайсы сериялык портторду туташтырганыңызды көрүү үчүн, серия астындагы түзмөк менеджерине кайрылыңыз

Пи боюнча, бул ttyAMC0 сыяктуу бир нерсе болот - сиздин /dev /папкаңызды текшериңиз

4 -кадам: Кошулуу

Up Up
Up Up
Up Up
Up Up

Оң портко (мурунку кадамдан) 115200 baud чейин туташыңыз

Терминалга териңиз

колдонуучу компьютер $ screen / dev / 115200

Башка IDEде, Ачуу/ туташуу баскычын басыңыз (портторду жана бодраттарды орноткондон кийин)

Эскертүү: паритет жок, 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; Көбүрөөк маалымат алуу үчүн STM32F413xx Type "help ()" менен LEGO Technic Large Hub.

Эми сиз коддоого даярсыз.

6 -кадам: Сиздин биринчи кодуңуз

Сиздин биринчи кодуңуз
Сиздин биринчи кодуңуз

импорттук түйүн

hub.display.show ('Tufts')

"Импорттоо" буйругуна көңүл буруңуз - бул SPIKE Prime менен сүйлөшүүгө мүмкүндүк берген питон китепканасын камтыйт. Сиз Huf боюнча LED матрицасында жазылган Tufts көрүшүңүз керек.

7 -кадам: Атыңызды көрсөтүңүз

азыр терип көрүңүз

hub.display.show ('')

Белгилей кетчү нерсе, сиз жогоруда борборду импорттогонуңуздан, ал мурунтан эле эсинде. Эгер андай болбосо, сиз төмөнкүдөй ката кетиресиз:

Traceback (акыркы акыркы чалуу): Файл "", 1 -сап, inNameError: 'hub' аты аныкталган эмес

8 -кадам: REPL колдонуу

Pythonдун эң күчтүү атрибуттарынын бири - бул REPLге код жазуудан мурун каалаган нерсени текшерип көрсөңүз болот (eval басып чыгаруу укуругун окуңуз).

Бул кандайдыр бир python буйругун аткарат - астына 2 + 2 терип көрүңүз жана анда эмне жазылганын көрүңүз:

2+2

9 -кадам: SPIKE Prime боюнча MicroPython изилдөө

Эми изилдөө үчүн убакыт келди.

хабдын көптөгөн функциялары бар - аны "hub" деп терүү менен биле аласыз. (хабдан кийинки мезгилди унутпаңыз) жана REPLдеги TAB баскычын басыңыз. Бул сизге буйрукту аткаруунун ар кандай жолдорун көрсөтөт.

Чакырык: Эгер ылдамдатууну окуй алсаңыз, караңыз.

10 -кадам: Сенсордун маанилерин окуу… 1

Ылдамдануу маалыматы баалуулуктардын массиви катары кайтып келет. эгер сиз жөн гана X маанисин кааласаңыз, анда аракет кылсаңыз болот

hub.motion.accelerometer () [0]

же коддоонун эң жакшы жолу мындай өзгөрмөлөрдү колдонуу болмок:

импорттук түйүн

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

11 -кадам: Сенсордун баалуулуктарын окуу… 2

Сенсордун маанилерин окуу… 2
Сенсордун маанилерин окуу… 2

Сиз ошондой эле циклди колдонуп, үч ылдамдатууну көрсөтө аласыз.

Биз ошондой эле китепкананын утимин импорттойбуз, андыктан тыныгуу жасап, сизге экрандан номерди окууга убакыт беребиз.

Бул кодду колдонуп көрүңүз:

импорттук хаб, utimeaccel = hub.motion.accelerometer () Acc үчүн Accel: hub.display.show (str (Acc)) utime.sleep (0.8)

Бул жерде кээ бир нерселер маанилүү болуп калат:

боштуктар - Python - бул башка тилдердеги кашааларга окшоп, чегинүү жөнүндө.

REPL колдонуп жатканда, сиз чегингенде, ал линияны аткарбай турганын, тескерисинче, аткаруудан мурун for циклинин саптарын бүтүрүшүңүздү күтүп турганын байкайсыз (жана >>> менен алмаштырылган …). For циклин бүтүрүү үчүн кайтууну үч жолу басыңыз жана цикл аткарылат.

12 -кадам: Чакырык

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

импорттук хаб, utime

ал эми True: accel = hub.motion.accelerometer () Acc үчүн Accel: hub.display.show (str (Acc)) utime.sleep (0.8) if hub.port. B.device.get (): break

Кеңеш -сизге В портунда сенсор керек.

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