Isi kandungan:

MicroPython pada SPIKE Prime: 12 Langkah
MicroPython pada SPIKE Prime: 12 Langkah

Video: MicroPython pada SPIKE Prime: 12 Langkah

Video: MicroPython pada SPIKE Prime: 12 Langkah
Video: How to program SPIKE Prime with Python over Bluetooth - Swinging Monkey 2024, November
Anonim
MicroPython di SPIKE Prime
MicroPython di SPIKE Prime

Anda boleh membuat kod SPIKE Prime menggunakan MicroPython yang merupakan subset python untuk mikropemproses kecil.

Anda boleh menggunakan mana-mana emulator terminal untuk membuat kod hub SPIKE Prime.

Bekalan

SPIKE Prime hub

Komputer dengan Port USB / bluetooth

Kabel USB untuk menyambungkan hab ke komputer

Langkah 1: Dapatkan Terminal Emulator

Dapatkan Terminal Emulator
Dapatkan Terminal Emulator
Dapatkan Terminal Emulator
Dapatkan Terminal Emulator

Terdapat banyak pilihan untuk dipilih.

CoolTerm berfungsi di semua platform, termasuk Pi

Putty berfungsi di tingkap

arahan skrin di Terminal pada sistem operasi unix

Langkah 2: Sambungkan SPIKE Prime ke Port USB

Sambungkan SPIKE Prime ke Port USB
Sambungkan SPIKE Prime ke Port USB
Sambungkan SPIKE Prime ke Port USB
Sambungkan SPIKE Prime ke Port USB

Gunakan kabel microUSB untuk menyambungkan SPIKE Prime ke komputer.

Langkah 3: Cari Pelabuhan

Cari Pelabuhan
Cari Pelabuhan
Cari Pelabuhan
Cari Pelabuhan

Kita perlu tahu port bersiri yang dihubungkan dengan hub SPIKE Prime.

Pada mac, taip

ls /dev/tty.usbmodem*

Pada komputer, cari pengurus peranti anda di bawah siri untuk melihat port bersiri yang telah anda sambungkan

Pada pi, ia akan menjadi seperti ttyAMC0 - semak di folder / dev / anda

Langkah 4: Sambungkan

Sambungkan
Sambungkan
Sambungkan
Sambungkan

Sambungkan ke port kanan (dari langkah sebelumnya) pada 115200 baud

Di Terminal, taip

pengguna komputer $ skrin / dev / 115200

Di IDE lain, tekan Open / connect (setelah menyiapkan port dan baudrates)

Nota: tiada pariti, 8 bit data, dan 1 bit berhenti

Langkah 5: Memulakan REPL

Memulakan REPL
Memulakan REPL
Memulakan REPL
Memulakan REPL
Memulakan REPL
Memulakan REPL

Apabila anda menyambung ke SPIKE Prime dari terminal / PUTTY anda akan melihat aliran nombor dan watak. Itu adalah data dari sensor dalaman hub SPIKE Prime. Untuk memulakan kawalan tekan + c

Ia akan mengganggu port bersiri dan anda akan melihat sesuatu seperti ini.

MicroPython v1.9.4-1146-gca9944357 pada 2019-09-25; LEGO Technic Large Hub dengan STM32F413xx Jenis "help ()" untuk maklumat lebih lanjut.

Sekarang anda sudah bersedia untuk membuat kod.

Langkah 6: Kod Pertama Anda

Kod Pertama Anda
Kod Pertama Anda

hab import

hub.display.show (‘Tufts’)

Perhatikan arahan "import" - yang terdapat di pustaka python yang membolehkan anda bercakap dengan SPIKE Prime. Anda mesti melihat Tufts ditulis pada matriks LED di hub.

Langkah 7: Paparkan Nama Anda

sekarang cuba menaip

hub.display.show ('')

ambil perhatian bahawa kerana anda sudah mengimport hub di atas, ia sudah ada dalam ingatan. Sekiranya tidak, anda akan mendapat ralat seperti:

Traceback (panggilan terakhir terakhir): File "", baris 1, inNameError: name 'hub' tidak ditentukan

Langkah 8: Menggunakan REPL

Salah satu sifat Python yang lebih hebat ialah anda boleh menguji apa-apa sebelum menulis kod dalam REPL (baca eval print loop).

Ia akan melaksanakan sebarang arahan python - cuba taip 2 + 2 di bawah dan lihat apa yang tertulis:

2+2

Langkah 9: Meneroka MicroPython di SPIKE Prime

Sekarang masanya untuk meneroka.

hub mempunyai banyak fungsi - anda boleh mengetahui dengan hanya menaip "hub." (jangan lupa tempoh selepas hub) dan kemudian tekan butang TAB di REPL. Itu akan menunjukkan kepada anda semua cara berbeza untuk menyelesaikan perintah.

Cabaran: Lihat apakah anda dapat membaca pecutan.

Langkah 10: Nilai Sensor Membaca… 1

Data pecutan kembali sebagai pelbagai nilai. jadi jika anda hanya mahukan nilai X, anda boleh mencuba

hub.motion.accelerometer () [0]

atau cara yang lebih baik untuk membuat kod ini adalah dengan menggunakan pemboleh ubah seperti ini:

hab import

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

Langkah 11: Membaca Nilai Sensor… 2

Nilai Sensor Membaca… 2
Nilai Sensor Membaca… 2

Anda juga dapat menampilkan ketiga percepatan menggunakan gelung.

Kami juga akan mengimport utiliti perpustakaan sehingga kami dapat menjeda dan memberi anda masa untuk membaca nombor di skrin.

Cuba kod ini:

hub import, utimeaccel = hub.motion.accelerometer () untuk Acc in accel: hub.display.show (str (Acc)) utime.sleep (0.8)

Pada ketika ini beberapa perkara menjadi penting:

spasi - Python adalah mengenai lekukan yang betul - mirip dengan tanda kurung dalam bahasa lain, lekukan memberitahu anda apa yang ada di dalam gelung dan yang tidak.

semasa menggunakan REPL, anda akan melihat bahawa ketika anda memberi indentasi, ia tidak lagi melaksanakan garis melainkan menunggu anda menyelesaikan garis untuk gelung sebelum dijalankan (dan >>> digantikan oleh…). Untuk menyelesaikan loop for, tekan kembali tiga kali dan loop akan dijalankan.

Langkah 12: Cabaran

Seterusnya, lihat apakah anda dapat mengetahui apa yang dilakukan oleh kod di bawah ini - dan cuba jalankannya untuk melihat apakah anda betul.

hab import, utime

sementara True: accel = hub.motion.accelerometer () untuk Acc in accel: hub.display.show (str (Acc)) utime.sleep (0.8) if hub.port. B.device.get (): break

Petunjuk - anda memerlukan sensor di port B.

Disyorkan: